web-dev-qa-db-fra.com

Les règles UFW ne fonctionnent pas avec docker

J'ai un serveur 12.04.4, j'ai activé ufw et j'ai essayé de bloquer le port 8080. Cependant, il est toujours ouvert.

$ Sudo ufw deny 8080
Rule added
Rule added (v6)

$ Sudo ufw status numbered
Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 22                         ALLOW IN    Anywhere
[ 2] 80                         ALLOW IN    Anywhere
[ 3] 8080                       DENY IN     Anywhere
[ 4] 22                         ALLOW IN    Anywhere (v6)
[ 5] 80                         ALLOW IN    Anywhere (v6)
[ 6] 8080                       DENY IN     Anywhere (v6)

Pensées? Je peux toujours accéder au site Web situé sous 8080. J'ai redémarré le système à plusieurs reprises. L'adresse IP est gérée via une affectation statique, mais je ne trouve rien qui indiquerait que c'est le problème.

Le service que j'essaie de bloquer est sur une instance de menu fixe, cependant cette question n'a pas aidé.

8
jrg

Le modèle de menu fixe que que j'utilise est destiné à Discourse. Je l'ai résolu en modifiant le fichier containers/app.yml pour l'inclure dans la section '' expose '':

 - "127.0.0.1:20080:80"

Cela signifie qu'il achemine le port 20080 sur 127.0.0.1 vers le port 80 de l'instance de menu fixe, éliminant ainsi la nécessité d'une règle ufw.

4
jrg

Je l'ai testé.

Lorsque j'entre la commande: Sudo ufw deny 80, je peux me connecter à moi-même, mais un autre hôte ne le peut pas.

Je vous suggère d'essayer de vous connecter à partir de quelqu'un d'autre que vous.

1
xiaodongjie