Je suis récemment nouvelle KVM/VPS une fois que j'installe OpenResty (Nginx Fork) et l'exécuter, mon serveur n'accepte pas la connexion entrante sur le port de test 8080
Je parviens à résoudre le problème en ajoutant le port 8080 aux règles autorisées,
iptables -I INPUT -p tcp --dport 8080 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
iptables -I OUTPUT -p tcp --sport 8080 -m conntrack --ctstate ESTABLISHED -j ACCEPT
mais je ne peux toujours pas comprendre les règles par défaut qui vient avec mon VPS
pkts bytes target prot opt in out source destination
361K 1192M ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED
1 60 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0
464K 70M INPUT_direct all -- * * 0.0.0.0/0 0.0.0.0/0
464K 70M INPUT_ZONES_SOURCE all -- * * 0.0.0.0/0 0.0.0.0/0
464K 70M INPUT_ZONES all -- * * 0.0.0.0/0 0.0.0.0/0
1324 61332 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate INVALID
458K 70M REJECT all -- * * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-Host-prohibited
spécialement la dernière ligne est qu'il bloque tout le trafic entrant!
iptables
règles sont évaluées de haut en bas. Si un paquet correspond à l'une des règles, il fait ce que le ACTION
de la règle définit. Habituellement, c'est REJECT
, ACCEPT
, DROP
, REDIRECT
(à un autre port) ou sautez à un CHAIN
.
La dernière règle n'est qu'une règle générique qui déclenche une règle antérieure déclenchée. Fondamentalement, c'est un "par défaut, rejeter tout ce qui ne correspond pas à une règle précédente". C'est la norme et une bonne pratique lors de la mise en œuvre de pare-feu.
Le icmp-Host-prohibited
est juste le message de rejet avec lequel le paquet est rejeté. Cela signifie que votre serveur informera l'expéditeur que le paquet a été rejeté avec ce message.
Notez que pour un meilleur durcissement, il est recommandé de DROP
messages au lieu de REJECT
eux, car ce dernier peut donner une attaquante certaines informations comme par exemple "Cet hôte existe et a rejeté votre paquet", _ DROP
ne fournira pas de telles informations.