Le blocage de tous les ports (entrants et sortants) est facile mais difficile avec le mot «sauf». Je ne connais aucune règle qui remplisse la condition.
PS: Je sais que cette question n'a rien de nouveau. Mais en fait, je n'ai rien trouvé d'aide. Alors, aidez-moi pls!
Réponses:
Premièrement les ! est le symbole NOT.
Deuxièmement, les règles que vous avez écrites peuvent ne pas avoir les résultats escomptés. Vous supprimez tout, y compris la réponse à la connexion sur le port 80. Par conséquent, vous ne pourrez pas vous y connecter, dit-il à des fins de serveur Web.
Ces règles autorisent les connexions RELATED et ESTABLISHED, donc un serveur Web devrait fonctionner, si c'est en fait ce que vous essayez de faire.
la source
!
être échappé comme ça\!
, si le shell Bash est utilisé?!
n'a pas besoin d'être échappée. Désolé pour la fausse alarme.Cela devrait vous donner ce dont vous avez besoin
la source
Vous pouvez définir votre action par défaut sur DROP, puis créer des règles d'exception pour autoriser 80 et 443, comme suit:
iptables parcourra la liste des «exceptions» jusqu'à ce qu'il trouve une correspondance. Il effectuera alors l'action spécifiée par le
-j
paramètre (ACCEPTER dans ce cas). S'il ne trouve pas de correspondance, il reviendra à la politique par défaut et supprimera le paquet.Notez qu'avec cette solution de contournement, tous les sous-domaines seront verrouillés. Par exemple, avec cette méthode, vous pourrez la faire fonctionner sur www.mydomain.com, mais votre sous-domaine, disons que www.sub.mydomain.com ne s'ouvrira pas pour les erreurs DNS.
la source
iptables -nvL
?ssh
.