Que signifie un iptables vide?

17

J'utilise CentOS et lorsque je tape la iptablescommande suivante :

iptables -L -v

La sortie est la suivante:

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

Qu'est-ce que ça veut dire? Je peux me connecter en utilisant SSH. Où puis-je voir cette règle?

Memochipan
la source

Réponses:

20

Des iptablesrègles vides signifient simplement que vous n'avez pas de règles. Le fait de n'avoir aucune règle signifie que la «politique» de la table contrôle ce qui arrive à chaque paquet traversant cette table. Le policy ACCEPTsur chaque table signifie que tous les paquets sont autorisés à travers chaque table. Ainsi, vous n'avez pas de pare-feu actif.

Fran
la source
Ne pas être un bon choix pour ce qui est un poste de questions et réponses assez simple, mais ne peut pas policy ACCEPTêtre considéré comme une règle en soi? Oui, il bloque 100% de rien et ne filtre aucun trafic, mais c'est quand même une règle dans le cadre d' iptablesun comportement opérationnel.
JakeGould
1
@JakeGould Bien sûr, cela a du sens. Sill, iptablesutilise deux termes distincts règle et la politique , et je tente de coller à la terminologie de l'outil.
Fran
4

Vous n'avez pas de règles définies. Jetez un œil au didacticiel suivant iptablessur la façon d'ajouter vos règles .

Vous pouvez ajouter votre règle SSH comme cela, ce qui permettra à tous les SSH via le port 22:

iptables -A INPUT -p tcp --dport 22 -j ACCEPT     
Paul
la source
Merci, peut-être que je n'étais pas clair. Je suis surpris de savoir comment puis-je me connecter en utilisant SSH si je n'ai pas encore de règle. Que signifie table vide? Autoriser toutes les connexions ou quoi?
Memochipan
@Memochipan Notez comment la liste contient la politique: "politique ACCEPTER" -> c'est la règle par défaut, qui dans ce cas, accepte tout le trafic. Vos iptables sont effectivement désactivés en tant que pare-feu sans aucune règle pour bloquer le trafic.
Dark Android
2
@Memochipan Oui, c'est un vieux fil, mais l'analogie simple est que vous avez une porte avec un verrou, mais personne ne verrouille la porte. Donc, si iptablesest installé, vous avez la possibilité de configurer des règles. Mais s'il n'y a pas de règles, il n'y a rien, la porte n'est pas verrouillée et tout le monde peut la franchir.
JakeGould
0

J'ai trouvé cette question quand je me suis demandé pourquoi iptables-save était vide. Donc, bien que ce ne soit pas une réponse pour l'OP, je pensais laisser cela ici :)

Il s'avère que iptables-save a besoin que les modules iptable_filter (et / ou iptable_nat) soient chargés.

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

Cela compte lorsque vous essayez de tester «en toute sécurité» de nouvelles règles:

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