+ Responder ao Tópico



  1. #1
    slackrio
    Visitante

    Padrão 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

  2. #2

    Padrão Re: Firewall para Squid liberando somente detrminadas portas

    Cara de uma olhada no meu firewall www.idmtc.com.br/downloads/firewall1

  3. #3

    Padrão 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.

  4. #4
    slackrio
    Visitante

    Padrão 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

  5. #5

    Padrão 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:

  6. #6
    slackrio
    Visitante

    Padrão 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

  7. #7

    Padrão 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:

  8. #8
    slackrio
    Visitante

    Padrão 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

  9. #9

    Padrão 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:

  10. #10
    slackrio
    Visitante

    Padrão 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

  11. #11
    slackrio
    Visitante

    Padrão 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 ?

  12. #12

    Padrão 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:

  13. #13
    slackrio
    Visitante

    Padrão 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

  14. #14

    Padrão 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:

  15. #15
    slackrio
    Visitante

    Padrão 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 !!

  16. #16
    slackrio
    Visitante

    Padrão 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

  17. #17

    Padrão 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:

  18. #18
    slackrio
    Visitante

    Padrão 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 !