O que significa um iptables vazio?

17

Estou usando o CentOS e, quando digitar o seguinte iptablescomando:

iptables -L -v

A saída é a seguinte:

Chain INPUT (policy ACCEPT 19614 packets, 2312K bytes)  pkts bytes target     prot opt in     out     source               destination   

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)  pkts bytes target    prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 13881 packets, 32M bytes)  pkts bytes target     prot opt in     out     source               destination

O que isto significa? Eu sou capaz de conectar usando SSH. Onde posso ver essa regra?

Memochipan
fonte

Respostas:

20

iptablesRegras vazias simplesmente significam que você não tem regras. Não ter regras significa que a tabela "política" controla o que acontece com cada pacote que atravessa essa tabela. O policy ACCEPTem cada tabela significa que todos os pacotes são permitidos através de cada tabela. Portanto, você não tem firewall ativo.

Fran
fonte
Não ser um detetive do que é uma pergunta e resposta bastante simples, mas não pode policy ACCEPTser considerada uma regra por si só? Sim, ele bloqueia 100% de nada e não filtra tráfego, mas ainda é uma regra no contexto do iptablescomportamento operacional.
JakeGould #
11
@JakeGould Claro, isso faz sentido. Sill, iptablesusa dois termos distintos, regra e política , e eu estava tentando seguir a terminologia da ferramenta.
Fran
4

Você não possui nenhuma regra configurada. Dê uma olhada no tutorial a seguir iptablessobre como adicionar suas regras .

Você pode adicionar sua regra SSH dessa maneira, o que permitirá todo o SSH pela porta 22:

iptables -A INPUT -p tcp --dport 22 -j ACCEPT     
Paulo
fonte
Obrigado, talvez eu não estivesse claro. Surpreende-me como posso conectar-me usando SSH se ainda não tenho nenhuma regra. O que significa mesa vazia? Permitir todas as conexões ou o quê?
Memochipan
@Memochipan Observe como a listagem contém a política: "policy ACCEPT" -> essa é a regra padrão, que neste caso, é aceitar todo o tráfego. Seu iptables é efetivamente desabilitado como um firewall sem regras para bloquear o tráfego.
Darth Android
2
@Memochipan Sim, este é um tópico antigo, mas a analogia simples é que você tem uma porta com uma fechadura, mas ninguém está trancando a porta. Então, se iptablesestá instalado você tem o potencial de regras de configuração. Mas se não há regras, não há nada, a porta não está trancada e todos podem passar por ela.
JakeGould #
0

Encontrei essa pergunta quando me perguntei por que o iptables-save ficou vazio. Portanto, embora não seja uma resposta para o OP, pensei em deixar isso aqui :)

Acontece que o iptables-save precisa dos módulos iptable_filter (e / ou iptable_nat) carregados.

root@mgmt:~# iptables-save 
root@mgmt:~# modprobe iptable_filter
root@mgmt:~# iptables-save 
# Generated by iptables-save v1.6.0 on Fri Aug  4 09:21:14 2017
*filter
:INPUT ACCEPT [7:488]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [4:424]
COMMIT
# Completed on Fri Aug  4 09:21:14 2017

Isso é importante quando você tenta fazer um teste "seguro" de algumas novas regras:

iptables-save > /tmp/ipt.good; (sleep 60; iptables-restore < /tmp/ipt.good) & iptables-restore < iptables.rules.test
lbt
fonte