----- Mensagem original ----
De: Carlos Alberto <camotacastro@gmail.com>
Para: squid-br@yahoogrupos.com.br; iptables-br@yahoogrupos.com.br; Lista Debian <debian-user-portuguese@lists.debian.org>
Enviadas: Segunda-feira, 21 de Maio de 2007 18:46:01
Assunto: iptables e proxy transparente
Pessoal, gostaria de só liberar a net, http e ftp, através de proxy(squid) transparente e liberar tambem o msn com nat, ja tentei de tudo, a
porta do squid é a 81. O proxy transparente funciona somente para o http, para ftp nada. Estou liberando tudo por nat. Queria liberar apenas o msn, como faço? segue abaixo o que fiz no iptables...:
#!/bin/bash
## Apaga quaisquer regras que por ventura existam
iptables -F
#### Regras de policiamento ####
## bloqueia qualquer pacote que não seja explicitament permitio
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
#### INPUT ####
## Permite acesso a interface loopback
iptables -A INPUT -i lo -j ACCEPT
## Permite apenas entrada das respostas as conexões desaida
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp -i eth0 -s
192.168.0.0/24 --dport 81 -j ACCEPT
## Aceita conexoes ICMP com limite de conexoes por minuto
iptables -A INPUT -p icmp -m limit --limit 3/m --limit-burst 3 -j ACCEPT
## Liberar a porta do ssh
iptables -A INPUT -p tcp -s
192.168.0.24 --dport 22 -j ACCEPT
iptables -A INPUT -p tcp -s
192.168.0.159 --dport 22 -j ACCEPT
iptables -A INPUT -p tcp -s
192.168.0.150 --dport 22 -j ACCEPT
iptables -A INPUT -p tcp -s
192.168.0.148 --dport 22 -j ACCEPT
iptables -A INPUT -p tcp -s
192.168.0.115 --dport 22 -j ACCEPT
## Registra nos logs do sistema pacotes bloqueados, estes são marcados com prefixo Firewall:
iptables -A INPUT -j LOG --log-prefix "Firewall: "
#### OUTPUT ####
## Permite que o servidor acesse outras maquinas
iptables -A OUTPUT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
### PREROUTING ###
## Redireciona conexoes com destino a porta 80 para a porta 81
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 81
### FORWARD ###
# Connection tracking (aceita pacotes para conexoes já estabelecidas)
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
#iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED,DNAT -j ACCEPT
#iptables -A FORWARD -m ip_nat_ftp --ctstate ESTABLISHED,RELATED,DNAT -j ACCEPT
## Redireciona dados de eth0 para eth1
iptables -A FORWARD -s
192.168.0.159 -o eth1 -j ACCEPT
iptables -A FORWARD -s
192.168.0.24 -o eth1 -j ACCEPT
iptables -A FORWARD -s
192.168.0.148 -o eth1 -j ACCEPT
iptables -A FORWARD -s
192.168.0.115 -o eth1 -j ACCEPT
iptables -A FORWARD -s
192.168.0.150 -o eth1 -j ACCEPT
#### POSTROUTING ####
## Compartilhamento da internet
iptables -t nat -A POSTROUTING -s
192.168.0.0/24 -o eth1 -p tcp -j SNAT --to
192.168.2.97iptables -t nat -A POSTROUTING -s
192.168.0.0/24 -o eth1 -p udp -j SNAT --to
192.168.2.97### Ativa o modulo responsavel pelo encaminhamento de pacotes ###
echo 1 > /proc/sys/net/ipv4/ip_forward
--
Cumprimentos
Carlos Alberto Mota Castro (Maranhão)
Estudante de Engenharia Elétrica
UNESP - FEIS - Ilha Solteira
Usuário GNU/Linux