Como posso bloquear todas as portas, exceto 1962, 999, 12020?
Uma porta para SSH e duas outras para um tipo de script. Então, é necessário permitir a saída nessas portas, certo?
Meus iptables:
# Generated by iptables-save v1.4.4 on Sat Feb 25 17:25:21 2012
*mangle
:PREROUTING ACCEPT [643521:136954367]
:INPUT ACCEPT [643521:136954367]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [645723:99904505]
:POSTROUTING ACCEPT [645723:99904505]
COMMIT
# Completed on Sat Feb 25 17:25:21 2012
# Generated by iptables-save v1.4.4 on Sat Feb 25 17:25:21 2012
*filter
:INPUT ACCEPT [643490:136950781]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [645723:99904505]
-A INPUT -p tcp -m tcp --dport 1962 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 999 -j ACCEPT
COMMIT
# Completed on Sat Feb 25 17:25:21 2012
# Generated by iptables-save v1.4.4 on Sat Feb 25 17:25:21 2012
*nat
:PREROUTING ACCEPT [5673:734891]
:POSTROUTING ACCEPT [2816:179474]
:OUTPUT ACCEPT [2816:179474]
COMMIT
# Completed on Sat Feb 25 17:25:21 2012
Desculpe, mas sou um novato de verdade quando se trata dessas coisas e só quero tornar meu servidor mais seguro.
Respostas:
No começo, você deve sempre lavar para ter certeza do que já está definido ... nada
Em seguida, defina a política padrão da cadeia INPUT como DROP se o final for alcançado e nenhuma regra corresponder:
Para garantir que o loopback não seja afetado, você deve adicionar
para permitir todo o tráfego no lo-if e todo tráfego de entrada para as conexões que você estabeleceu. Depois disso, adicione todas as regras necessárias para seus serviços (não esqueça de abrir o ssh se precisar! Caso contrário, você estará fora) :
Um pequeno truque que faço para impedir a mim e a outros de perfurar acidentalmente a segurança, finalmente adiciono:
Essa linha corresponde a tudo para a cadeia INPUT e a política não deve receber nada. A vantagem disso é que, mesmo se você adicionar uma regra ACEITAR algum tempo depois de inicializar seu conjunto de regras, ela nunca será verificada porque tudo foi descartado antes. portanto, você precisa manter tudo em um só lugar.
Para sua pergunta, a coisa toda se parece com isso em resumo:
fonte
-P
define a política na cadeia. Na verdade, não está adicionando uma regra. A política da cadeia indica a ação a ser executada no pacote se o fim da cadeia for atingido. Por isso, é inteligente adicionar suas regras antes de definir umaDROP
política.iptables -A INPUT -j DROP
, por esse mesmo motivo.Uma resposta de um novato como você :-) Eu também precisava proteger meu servidor Ubuntu, aprender o iptables foi uma dor que não consegui superar. O UFW (Uncomplicated Firewall) é um programa que facilita a configuração do firewall.
instale o ufw:
desative-o imediatamente (eu tive que resgatar a inicialização porque estava bloqueado em meu próprio login SSH):
defina "negar" como regra padrão (isso bloqueia todas as portas):
permitir portas necessárias:
se você tiver certeza de que as regras acima não interrompem sua conexão ssh, ative o ufw:
Os documentos são bem escritos e fornecem mais exemplos: https://help.ubuntu.com/community/UFW
fonte
ERROR: Bad destination address
eERROR: Bad source address