milk2can
(usa Debian)
Enviado em 25/02/2009 - 17:14h
Fala, galera!!
Sinceramente não sei o que fiz de errado nesse mundo.
NAT: coloquei na minha rede um K6-2 com 256MB, 7,5GB de disco, Debian Lenny (sem ambiente gráfico) com Squid, Bind e Firewall em funcionamento para testes há 4 dias e está a todo vapor. O problema é que por ora eu queria ativar o NAT nele para resolver um problema desconhecido no Squid (só pode ser nele). Por mais que eu tenha revisado a configuração de um lado ao outro e de ponta cabeça, o NAT não funciona nem por decreto. O engraçado é que UMA vez há muito tempo atrás eu consegui. Eis as minhas linhas (comentei as linhas para não excluí-las do arquivo):
================================================================
firewallgw:/home/vdias2jr# cat /etc/rc.local
[...]
iptables -F
iptables -t nat -F
iptables -A INPUT -s 192.168.254.0/255.255.255.0 -j ACCEPT
iptables -A INPUT -p udp --dport 123 -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp --syn -j DROP
#modprobe iptable_nat
#echo 1 > /proc/sys/net/ipv4/ip_forward
#iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
#iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -m \
#tcpmss --mss 1400:1536 -j TCPMSS --clamp-mss-to-pmtu
#iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
#echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
#iptables -A INPUT -m state --state INVALID -j DROP
#iptables -A INPUT -s 192.168.254.0/255.255.255.0 -j ACCEPT
#iptables -A INPUT -p udp --dport 123 -j ACCEPT
#iptables -A INPUT -i lo -j ACCEPT
#iptables -A INPUT -i eth1 -j ACCEPT
#iptables -A INPUT -p tcp --syn -j DROP
iptables -L
exit 0
firewallgw:/home/vdias2jr#
================================================================
O modem está configurado para bridge (DLINK DSL-500B modem Telemar; os fidamãe fizeram alguma coisa no firmware do aparelho que faz com que ele não funcione como roteador mesmo configurando corretamente). Estando configurado como bridge, pelo que entendi a linha "#iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE" está correta, pois a placa de Internet é a ppp0 (o modem está ligado na eth0). Pois é, o problema é que os clientes ficam no "Procurando o site tal...". Onde estou errando então?
E por que quero ativar o NAT? Para resolver alguns conflitos que ocorrem nos clientes que não estou conseguindo acertar no Squid. Por exemplo não consigo concluir o registro do VirtualBox (dá erro de conexão), tenho problemas também no VMware server e o pior: não estou conseguindo acessar contas de ftp que criei no meu host, pois me dá este erro (conta de teste já excluida):
================================================================
" ERRO
A URL solicitada não pode ser recuperada
Ocorreu erro no protocolo FTP
Na tentativa de recuperar a URL:
ftp://ftp.portaldosbytes.com/valerio
Squid emitiu o seguinte comando FTP:
USER anonymous
e recebeu esta resposta Isto pode ter como causa uma URL de FTP com caminho absoluto (que não está de acordo com a RFC 1738). Se a causa for essa, então o arquivo pode ser encontrado em
ftp://ftp.portaldosbytes.com/%2f/valerio.
Generated Wed, 25 Feb 2009 19:10:36 GMT by firewallgw (squid/2.7.STABLE3)"
================================================================
Por isso que eu queria ativar o NAT, assim eu desativaria temporariamente o Squid para poder acessar alguns serviços de emergência. Não tem alguma configuração do Squid para que ao menos o meu micro possa ficar livre do crivo do proxy? Dessa forma eu não precisaria recorrer ao NAT, evitando derrubar, mesmo que temporariamente, a conexão nos demais micros. Mas agradeceria se me ajudassem no problema do NAT de qualquer forma.
Eis o meu squid.conf:
================================================================
firewallgw:/home/vdias2jr# cat /etc/squid/squid.conf
http_port 3128
visible_hostname firewallgw
error_directory /usr/share/squid/errors/Portuguese/
cache_mem 64 MB
maximum_object_size_in_memory 64 KB
maximum_object_size 640 MB
minimum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95
cache_dir ufs /var/spool/squid 3072 32 512
cache_access_log /var/log/squid/access.log
refresh_pattern ^ftp: 15 20% 2280
refresh_pattern ^gopher: 15 0% 2280
refresh_pattern . 15 20% 2280
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563 8333 10000
acl Safe_ports port 21 80 443 563 70 210 280 488 59 777 901 1025-65535
acl purge method PURGE
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
#[Testando bloqueios]
#acl bloqueados dstdomain orkut.com
www.orkut.com playboy.abril.com.br
www.casaca.com.br
#http_access deny bloqueados
#acl k8n64 src 192.168.254.11
#http_access allow k8n64
acl redelocal src 192.168.254.0/24
http_access allow localhost
http_access allow redelocal
http_access deny all
firewallgw:/home/vdias2jr#
================================================================
Na na não! Os problemas não acabaram. Segui as instruções do Morimoto para criar uma configuração automática de proxy usando o WPAD e o DNS Local. Criei o esquema de DNS certinho, tanto que o IE funciona ao marcar "Detectar automaticamente as configurações" mas o Firefox não responde ao "Autodetectar as configurações de proxy para esta rede", funcionando somente com a url ou com o proxy direto.
Por último: o sarg ora atualiza os relatórios, ora não. Para dizer a verdade ele só atualiza(va) rodando um sarg -x, agora nem isso. =/
Obrigado!