+ Responder ao Tópico



  1. #1

    Padrão Liberando a Porta 21 no IPTables

    Olá... estou com um probleminha e gostaria de contar com a colaboração de vcs.

    É o seguinte, preciso liberar a porta 21 no meu firewall mas não estou conseguindo. Já tentei diversos comandos, já dei uma olhada em alguns tutoriais e afins e não consegui obter uma solução.

    Por exemplo, já tentei isso:

    iptables -A INPUT -p tcp --dport 20 -j ACCEPT
    iptables -A INPUT -p tcp --dport 21 -j ACCEPT

    iptables -A INPUT -p tcp --sport 20 -m state --state ESTABLISHED,RELATED -j ACCEPT
    iptables -A OUTPUT -p tcp --dport 20 -m state --state ESTABLISHED -j ACCEPT
    iptables -A OUTPUT -p tcp --dport 21 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
    iptables -A INPUT -p tcp --sport 21 -m state --state ESTABLISHED,RELATED -j ACCEPT
    iptables -A INPUT -p tcp --sport 1024: --dport 1024: -m state --state ESTABLISHED -j ACCEPT
    iptables -A OUTPUT -p tcp --sport 1024: --dport 1024: -m state --state ESTABLISHED,RELATED -j ACCEPT

    e ainda:

    iptables -t nat -A POSTROUTING -s 192.168.x.x -p tcp --dport 21 -j MASQUERADE

    Alguém poderia me ajudar ? Estou apanhando demais da conta.....
    Outras portas eu consegui liberar, mas essa do FTP tá osso !

  2. #2

    Padrão opa

    cabra a regra pra liberar a porta 21 de fora para dentro, ou seja o povo de outros servidor ou outra cliente conectado a internet vai entrar na sua porta 21 de fora e essa:
    Código :
    iptables -A INPUT -p tcp -s 0/0 --dport 21 -j ACCEPT
    agora tem que ver como esta seu firewall, pq usando o -A ele vai ficando abaixo da lista qualquer coisa muda de -A pra -I com o -I vc vai ficar com a regra no topo sempre em cima

  3. #3

    Padrão

    Adicionei o comando utilizando o -I para ficar logo no topo. Mas infelizmente não consegui obter o resultado necessário. Talvez seja interessante uma breve descrição do problema enfrentado.

    Possuo um software chamado Banesfácil, ele utiliza algumas portas como a 4226 e 21, a única que não consegui liberar foi essa 21.

    O suporte técnico me pediu que relizasse um teste de conexão via MS-dos digitando ftp nome.do.servidor, ele passa, me pede um usuário e senha e tudo blz.... quando digito o comando ls para listar o conteúdo ele deveria aparecer várias portas tipo assim: 200 Port command successful, mas aparece somente essa e trava....

    Daí não consigo trabalhar com o software. Infelizmente o suporte não está apto a me ajudar a resolver os problemas do meu servidor interno, então estou completamente perdido ! Não tenho ninguém que possa dar uma avaliada no meu firewall e detectar o erro.

  4. #4

    Padrão

    Cara, você ta tentando acessar através de uma máquina atráz do iptables certo?? Acho que você vai ter que fazer um redirect. Acho que você lembra desse post meu certo: https://under-linux.org/forums/proxy...esfacil-7.html

    Então, não vai ser só liberar o INPUT pra 21 não... libera o INPUT das portas acima de 1024 vindas da porta 21 do IP válido do banesfácil. Depois de aceitar acho que tem que redirecionar pra máquina que tá utilizando...

    iptables -A INPUT -s x.x.x.x -p tcp --sport --dport 1024: -j ACCEPT
    iptables -t nat -A PREROUTING -s x.x.x.x -p tcp --sport 20 --dport 1024: -j DNAT --to 192.168.1.x

    Se tiver alguma regra de INPUT/OUTPUT pra rede interna é bom adicionar uma regra liberando o tráfego...

    Qualquer dúvida posta ai...

  5. #5

    Padrão

    Gregorio,

    Pra usar o banesfácil você tem que liberar a porta 21 na table FORWARD e não só na INPUT. O cliente do Banesfácil abre a conexão com o site do banco para baixar e enviar as informações.

  6. #6

    Question

    Recebi algumas instruções do Banestes e me solicitaram que incluisse estas linhas no meu script para que o Banesfácil funcione.

    modprobe ip_nat_ftp
    iptables -A OUTPUT -p tcp -m multiport --sports 21,20 -j ACCEPT (essa foi a única linha que passou sem erros)

    $IPTABLES -A FORWARD -p tcp -s $i --sport 1024:65535 -d $j --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT
    $IPTABLES -A FORWARD -p tcp -s $j --sport 21 -d $i --dport 1024:65535 -m state --state RELATED,ESTABLISHED -j ACCEPT
    $IPTABLES -A FORWARD -p tcp -s $i --sport 1024:65535 -d $j --dport 1024:65535 -m state --state RELATED,ESTABLISHED -j ACCEPT
    $IPTABLES -A FORWARD -p tcp -s $j --sport 1024:65535 -d $i --dport 1024:65535 -m state --state RELATED,ESTABLISHED -j ACCEPT

    Porém, essa primeira linha do modprobe não passou nem estas outras que tem $ no início.... afinal, pra que serve esse $ ?

  7. #7

    Padrão

    Eu só tenho as seguintes linhas no meu firewall pra liberar o acesso ao Banesfácil:

    Código :
    iptables -A FORWARD -p tcp -m multiport --dports 21,4226 -j ACCEPT
    iptables -A FORWARD -p udp -m multiport --dports 4226 -j ACCEPT

    Se você colocar essas regras que o pessoal do Banestes te passou, você não vai mais precisar de firewall, já que elas praticamente liberam tudo.

  8. #8

    Question

    Meus prezados, tá osso.... já tentei mais estou tomando uma surra danada.... segue meu script por completo sem mais nem menos pra darem uma olhada... e me digam se possível onde é que está errado ! Lembrando que os outros comando que me foram sugeridos eu teste e não deu certo não.
    Última edição por GregorioVenturim; 23-07-2008 às 13:48.

  9. #9

    Padrão

    Citação Postado originalmente por GregorioVenturim Ver Post

    #---------AQUI MORA O PROBLEMA----------------------------------------------------------------------------------------------

    #Financeiro - Banesfacil

    #libera acesso a todos os protocolos (vinícius)
    #iptables -I forward_ext -d 192.168.3.21 -j ACCEPT
    iptables -I forward_int -s 192.168.3.21 -j ACCEPT

    iptables -A FORWARD -p tcp -m multiport --dports 21,4226 -j LOG --log-prefix "BANESTES: "
    iptables -A FORWARD -p udp -m multiport --dports 4226 -j LOG --log-prefix "BANESTES: "
    iptables –A FORWARD –p tcp –m multiport –-dports 21,4226 –j ACCEPT

    iptables –A FORWARD –p udp –m multiport –-dports 4226 –j ACCEPT

    #--------------------------------------------------------------------------------------------------------------------------
    Faça as modificações acima no seu firewall. Outra coisa, o '--dports' tem dois sinais de - e não um só como estava no seu script.

    Rode o script do firewall e poste aqui o resultado do grep "BANESTES" /var/log/messages (considerando que o seu log do firewall seja gravado nesse arquivo).

    Se puder também, poste um arquivo com o resultado do comando:

    Código :
    tcpdump -n -w /tmp/banesfacil.dump -i any port 4226 and port 21 and tcp and udp

    Você pode tanto postar esse arquivo /tmp/banesfacil.dump ou, se não quiser divulgar os IPs, me manda uma PM que eu te passo meu e-mail.