Firewall para Squid liberando somente detrminadas portas
Pessoal eu tenho um servidor que ta rondando com todas as portas abertas , eu gostaria de fechar todas e liberar somente as necessarias como: 21,443,110,25,80,53
eu uso o squid na porta 3128
eu fecho as portas desta forma:
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
eu gostaria de saber como posso fazer para que libere as portas sitadas acima n firewall estando com squid rodando ?
grato
Re: Firewall para Squid liberando somente detrminadas portas
Re: Firewall para Squid liberando somente detrminadas portas
Caro, você pode deixar as políticas INPUT e FORWARD como DROP e OUTPUT como ACCEPT.
As portas 21,25,53,110 você faz nat.
Não aconselho você mascarar a porta 80, assim você o pessoal vai navegar sem proxy.
Faça assim.
# Define políticas de acesso padrão
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
# Habilita todas a conexões previamente aceitas (estados Estabelicida e Relacionada)
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
# Habilita apenas as portas que você acha necessário
iptables -t nat -A POSTROUTING -o $EXT_IF -m multiport -p tcp --dports 20,21,22,25,53,110,443 -j MASQUERADE
Onde $EXT_IF é sua interface externa. Desta maneira você terá que marcar o proxy no
browser das máquinas. Para deixar o proxy transparente basta adicionar uma regra no iptables.
Espero ter ajudado.
Re: Firewall para Squid liberando somente detrminadas portas
Cristinanff ta aqui a conf que fiz conforme vc citou aqui
#!/bin/sh
# Define políticas de acesso padrão
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
# Habilita todas a conexões previamente aceitas (estados Estabelicida e Relacionada)
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
# Habilita apenas as portas que você acha necessário
iptables -t nat -A POSTROUTING -o eth0 -m multiport -p tcp --dports 20,21,1024,25,53,110,443 -j MASQUERADE
# Proxy transparente
iptables -t nat -A PREROUTING -p tcp --dport 80 -i eth1 -s 192.168.0.0/24 -j REDIRECT --to-port 3128
# Bloquear o input na porta 3128 para todos os endereços que não sejam o da rede interna.
iptables -A INPUT -p tcp -s ! 192.168.0.0/24 --dport 3128 -j REJECT
o que esta acontecendo e que quando rodo este script as maquina nao pegam mais ip do servidor que roda tb DHCP. e tb nao conseguem usar o Outlook.
quando eu adiciona esta regra
iptables -A INPUT -i ! eth0 -j ACCEPT
as maquinas passam a pegar Ip mais nao conseguem usar o Outlook
acima ta citado a posta 110 e 25 nao to entendendo o pq nao ta funcionando o Outlook
to tento dor de cabeca com iptables nunca pensei que era tao complicado assim
uma coisa aparentemente simples rs
abraco
Re: Firewall para Squid liberando somente detrminadas portas
Vou mandar um script que fiz aqui pra você.
Crio que ficou faltando alguns detalhes no outro que tinha te mandado.
Código :
#!/bin/sh
### Carrega módulos de connection tracking
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ip_conntrack_irc
modprobe ip_nat_ftp
### Define políticas de acesso padrão
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
### Limpa regras e cadeias de usuário prévias
iptables -X
iptables -F
iptables -t nat -F
### Habilita repasse de pacotes
echo 1 > /proc/sys/net/ipv4/ip_forward
### Interface externa
EXT_IF=eth0
### Interface Interna
INT_IF=eth1
### Rede interna
INT_NET=192.168.0.0/24
### Habilita comunicação interna entre processos locais
iptables -A INPUT -i lo -j ACCEPT
### Habilita acesso pela rede interna a esse host
iptables -A INPUT -i $INT_IF -j ACCEPT
iptables -A FORWARD -i $INT_IF -j ACCEPT
### Habilita SSH externo - use isso se for acessar o servidor externamente
iptables -A INPUT -i $EXT_IF -m tcp -p tcp --dport 22 -j ACCEPT
### Habilita todas a conexões previamente aceitas (estados Estabelicida e Relacionada)
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
### Liberar acesso externo às portas de Mail(25), Pop-3(110), Dns(53(tcp e udp)), Https(443), Gmail(465,955)
iptables -t nat -A POSTROUTING -o $EXT_IF -m multiport -p tcp --dports 20,21,22,25,53,110,443,465,995 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $EXT_IF -m multiport -p udp --dports 20,21,53,443 -j MASQUERADE
### Proxy transparente
iptables -t nat -A PREROUTING -p tcp --dport 80 -i $INT_IF -s $INT_NET -j REDIRECT --to-port 3128
O script está bem comentado, neste caso você não precisará da regra "iptables -A INPUT -p tcp -s ! 192.168.0.0/24 --dport 3128 -j REJECT" pois no script acima você já está tratando isso. Repare que apenas foi liberado acesso interno a $INT_IF ou seja, a sua interface interna "eth1". O único acesso de fora pra dentro liberado no script é ssh na porta 22. Se você não quiser abrir ssh basta comentar a linha.
Qualquer coisa grita aí velho.
Abraços e tenha um bom dia.
:mrgreen:
Re: Firewall para Squid liberando somente detrminadas portas
Bom dia cristianff blz!
cara achei legal este seu script rodei ele e agora as maquinas estao pegando ip e navegando , so tem um problema, nao estao conseguindo baixar e-mails ou seja a porta 110 e 25 para envio estao liberadas !! o que vc acha o que pode ser ?
tenho um servidor em um outro link fora e nao consigo acessar ele tb por SSH.
o servidor fora esta rodando la o SSH blz pq liberei todas as portas aqui pra teste e assim consigo acessa-lo blz ..
resumo : nao ta funcionando a porta 110, 25 e 22
mais o firewall ta legal
aguardo sua ajuda !!
abraco
Re: Firewall para Squid liberando somente detrminadas portas
Você está falando que não está recebendo emails?
Ou não envia e recebe?
Você está configurando os clientes de correio eletrônico corretamente?
Qual é o servidor de e-mail que você está tentando acessar?
Yahoo?
Hotmail?
Bol?
Terra?
etc...
Execute o comando:
# iptables -L -t nat -n
Código :
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE tcp -- 0.0.0.0/0 0.0.0.0/0 multiport dports 20,21,22,25,53,110,443,465,995,2083,2631,3456
Veja na saída do comando se a porta 25 e 110 está sendo mascaradas.
Qualquer coisa posta aí.
[]s
:mrgreen:
Re: Firewall para Squid liberando somente detrminadas portas
cristianff
com o Outlook ta ok pq sempre usei ele com o firewall com a politica tudo ACCEPT
que nao e boa coisa rs
nao to enviando e nem recebendo
eu uso o e-mail do terra (pop.nri.terra.com.br e smtp.nri.terra.com.br)
com aqui esta a saida do comando que vc me passou
root@orion:/etc/rc.d# iptables -L -t nat -n
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE tcp -- 0.0.0.0/0 0.0.0.0/0 multiport dports 20,21,22,25,53,110,443,465,995
MASQUERADE udp -- 0.0.0.0/0 0.0.0.0/0 multiport dports 20,22,21,53,443
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
obrigado pela ajuda ... tomara que de certo so falta o e-mail funcionar
Re: Firewall para Squid liberando somente detrminadas portas
Creio que o problema não esteja no firewall.
Como estão as configurações de rede das máquinas clientes?
Como você está navegando com proxy transparente, as páginas vão abrir normalmente.
Gostaria de saber como estão suas configurações de DNS.
Quem está resolvendo nome pra você?
Pra você dirar essa dúvida, nas propriedades do TCP/IP de uma máquina cliente, coloque
como servidor DNS primário 200.221.11.100 e secundário 200.221.11.101 e faça o teste.
Como o acesso ao email será feito diretamente, sem passar pelo proxy, pode ser que os
micros clientes não estão achando uma rota até os servidores de email.
Veja suas configurações de rede e faça os testes e me responda.
Abraços
:mrgreen:
Re: Firewall para Squid liberando somente detrminadas portas
cristianff
da so uma olhada no meu dhcp.conf do servidor
nas maquinas estao com os DNS 200.149.55.140, 200.165.132.148
testei com os DNS que vc me passou e tb nao funcionou
lembrando que a maquina que roda o firewall e a mesma que roda o dhcp
e eu adicionar esta linha funciona
iptables -t nat -A POSTROUTING -d 0/0 -j MASQUERADE (mais nao e correto ne?)
# dhcpd.conf
#
# Configuration file for ISC dhcpd (see 'man dhcpd.conf')
#
# dhcpd.conf
#
# Configuration file for ISC dhcpd (see 'man dhcpd.conf')
#
# Ativando o DHCp na rede
ddns-update-style none;
default-lease-time 600;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.0.255;
option routers 192.168.0.1;
option domain-name-servers 200.149.55.140, 200.165.132.148;
option domain-name "servermail.com.br";
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.3 192.168.0.12;
}
# Use this to send dhcp log messages to a different log file (you also
# have to hack syslog.conf to complete the redirection).
log-facility local7;
abraco
Re: Firewall para Squid liberando somente detrminadas portas
eu adicionei esta linha no script
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
e funcionou, mais me parece que assim libera todas as portas para a rede acessar fora ne ?
Re: Firewall para Squid liberando somente detrminadas portas
Esse comando libera tudo sim.
Código :
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
Todas as portas serão mascaradas.
Cara, mas interessante, será que o camando foi executado?
Mas a saída do comando iptables -L -t nat -n as portas 25 e 110 foram listadas como MASQUERADE.
O problema do comando
Código :
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
é que se o pessoal desmarcar o proxy vai navegar da mesma
maneira. O que você pode fazer é:
Código :
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -p tcp --dport ! 80 -j MASQUERADE
Você faz o MASQUERADE de todas portas menos a 80, mas não acho uma solução interessante não. O melhor é você fechar tudo e ir abrindo apenas as portas necessárias.
Ou você mude para o comando:
Código :
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -m multiport -p tcp --dports 20,21,22,25,53,110,443,465,995 -j MASQUERADE
Estou encucado com esse problema.
Faça teste de ping da sua rede interna em uma espação para um domínio fora. Tipo
ping www.uol.com.br, veja se o nome será resolvido.
Por enquanto é isso.
OBS: Em relação ao DHCP é aquilo mesmo.
Abraços
:mrgreen:
Re: Firewall para Squid liberando somente detrminadas portas
Cristian esbarrei no seguinte problema
este servidor um site hospedado e roda tb ftp, o que esta acontecendo e que com este firewall ficou beleza so que ningue acessar mais ftp e nem visualiza a pagina daqui
fiz isso seguindo o que esta no script
### Habilita SSH e FTP externo - use isso se for acessar o servidor externamente
iptables -A INPUT -i eth0 -m tcp -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -i eth0 -m tcp -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -i eth0 -m tcp -p tcp --dport 20 -j ACCEPT
iptables -A INPUT -i eth0 -m tcp -p tcp --dport 80 -j ACCEPT
lembrando que meu apache ta rodando na porta 80 mesmo
o que pode ser ?
ha em relacao as portas liberadas na linha que me passou
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -m multiport -p tcp --dports 20,21,22,25,53,110,443,465,995 -j MASQUERADE
funcionou legal obrigado
Firewall para Squid liberando somente detrminadas portas
Agora está fácil, basta você habilitar os serviços:
#Libera Serviços
iptables -A INPUT -p tcp -m multiport --dports 20,21,22,80,443 -j ACCEPT
Faça o teste aí e me avise se deu certo.
Abraços
:mrgreen:
Re: Firewall para Squid liberando somente detrminadas portas
Cristian
Ficou legal agora ta funcioanndo tudo OK, so as vezes que o Outlook para de receber e-mails (estranho) mais vou la no servidor zero as regras e rodo o script novamente e dai vai tudo OK (Somente a porta 110)
verifiquei o snort_guadian e nada ta tudo OK o guardian na ta barrando ..
Bom no mais ta tudo OK gracas a sua ajuda o meu servidor ta mais seguro !!
Po cara se precisar de min para alguma coisa e so avisar valew !!
Espero que esta postagem sirva para colegas do forum tb pq foi uma excelente configuracao sua !!
Irei ver o que pode ser sobre a porta 110 para as vezes de receber informacao para a rede interna uma vez que esta aberta para rede local ..
valew mesmo !!
Re: Firewall para Squid liberando somente detrminadas portas
Cristian
Resolvido o problema da porta 110
adicionei este linha que tinha esquecido
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -m multiport -p udp --dports 53 -j MASQUERADE
tirei a porta 20 e 21 desta linha de comando.
mais o ftp ta funcionando legal pra fora desta forma ..
ta funcionando legal agora. to testando e ta legal ..
vale pela a conf do firewall
Re: Firewall para Squid liberando somente detrminadas portas
Beleza, que bom que resolveu todo o problema.
Quanto a essa sua última regra, como você está fazendo MASQUERADE apenas da porta 53
do protocolo udp para a rede interna, você não precisa especificar multiport.
Não que não vá funcionar, mas fica mais clara.
Código :
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -p udp --dport 53 -j MASQUERADE
Faça o teste aí.
Beleza velho, qualquer dúvida que eu possa te ajudar estou a disposição.
Qualquer hora quero conhecer o Rio, ainda não conheço sua terrinha!
Bom final de semana.
:mrgreen:
Re: Firewall para Squid liberando somente detrminadas portas
cristianff
blz ire colocar desta forma que vc disse !
Se precisar de algo que lhe ajude pode contar comigo, e tb ta convidado pra visitar aqui o Rio qualquer coisa e so contar comigo valew !!
Abraço !