como verificar se a regra iptable está funcionando

2

Eu sou novo no iptables e na rede em geral, então estou experimentando isso.

Estou aprendendo como fechar portas; em particular, estou tentando fechar uma porta específica na máquina host, para que outra máquina na rede não receba pacotes.

Eu gostaria de deixar cair o tráfego de saída na porta 22, assim não é possível o ssh a uma máquina (192.168.100.10) de uma máquina específica (192.168.100.3).

Eu escrevi essa regra na máquina da qual desejo descartar tráfego (192.168.100.3):

iptables -I OUTPUT -s 192.168.100.10 -p tcp --dport 22 -j DROP

Até agora eu não recebo nenhum erro, mas quando eu tento ssh nesta máquina, eu posso fazer isso sem problemas.

Eu pensei que minha regra diz "descartar todos os pacotes na saída, direcionados para esse IP, nessa porta"; o que tornaria impossível iniciar uma conexão ssh, já que ela é executada na porta 22.

O que estou perdendo? Como faço para verificar se a regra está de fato funcionando?

EDIT: Obrigado pelo comentário, vejo que usei s em vez de d; o que provavelmente é porque não funciona.

    
por rataplan 15.06.2015 / 20:28

2 respostas

2

Talvez alguém tenha uma resposta melhor, mas aqui está a minha.

  1. Crie uma regra idêntica, mas uma cujo destino seja LOG em vez de ACCEPT ou DROP etc. Essa regra vem antes daquela que você deseja testar.

    iptables -I OUTPUT -s 192.168.100.10 -p tcp --dport 22 -j LOG --log-level info 
    

    Você pode encontrar a saída do log onde quer que os logs do kernel sejam direcionados. (Se você não sabe, é outra pergunta.) Use tail -f nesse arquivo enquanto você está tentando alcançar a porta do outro host.

  2. Depois que a regra estiver em vigor e como sugerido por / u / richard, você usou nmap ou alguma outra ferramenta para tentar alcançar a porta testada, executar iptables com -v e -x opções para ver a contagens exatas de pacotes que atingiram cada regra. Eu uso:

    iptables -L OUTPUT -nvx
    

    Digamos que a regra seja a 6ª na lista. Você pode monitorar apenas aquele usando o prático programa watch :

    watch -n 0.5 iptables -L OUTPUT 6 -nvx
    

    que atualizará a exibição a cada 1/2 segundo.

por 15.06.2015 / 23:01
0

Para testar as conexões de entrada: o nmap é uma boa ferramenta, você precisa executá-lo em outra máquina. Zenmap é uma interface gráfica do usuário para o nmap. Você pode usá-lo para procurar portas abertas, etc.

Quanto ao bloqueio de uma porta específica de ip, elas são facilmente alteradas. Se você me parar usando a porta 22, então eu adicionarei meu servidor ssh a outra porta.

Geralmente você quer bloquear tudo, exceto o que você precisa.

    
por 15.06.2015 / 21:02

Tags