Maison  >  Questions et réponses  >  le corps du texte

Le port hôte est mappé lorsque Docker est en cours d'exécution. Doit-il toujours être ouvert dans iptables ?

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 500,4500,1701
ACCEPT     esp  --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0            udp dpt:500
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:500
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0            udp dpt:4500
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0            udp dpt:1701
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:1723

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
DOCKER-ISOLATION  all  --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED
DOCKER     all  --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED
DOCKER     all  --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     all  --  192.168.18.0/24      0.0.0.0/0           
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
ACCEPT     all  --  10.31.0.0/24         0.0.0.0/0           
ACCEPT     all  --  10.31.1.0/24         0.0.0.0/0           
ACCEPT     all  --  10.31.2.0/24         0.0.0.0/0           

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain DOCKER (2 references)
target     prot opt source               destination         
ACCEPT     udp  --  0.0.0.0/0            172.17.0.2           udp dpt:4500
ACCEPT     udp  --  0.0.0.0/0            172.17.0.2           udp dpt:500
ACCEPT     tcp  --  0.0.0.0/0            172.17.0.3           tcp dpt:80
ACCEPT     tcp  --  0.0.0.0/0            172.17.0.5           tcp dpt:443
ACCEPT     tcp  --  0.0.0.0/0            172.17.0.5           tcp dpt:80
ACCEPT     tcp  --  0.0.0.0/0            172.17.0.7           tcp dpt:9001
ACCEPT     tcp  --  0.0.0.0/0            172.18.0.2           tcp dpt:993
ACCEPT     tcp  --  0.0.0.0/0            172.18.0.2           tcp dpt:587
ACCEPT     tcp  --  0.0.0.0/0            172.18.0.2           tcp dpt:143
ACCEPT     tcp  --  0.0.0.0/0            172.18.0.2           tcp dpt:25

Chain DOCKER-ISOLATION (1 references)
target     prot opt source               destination         
DROP       all  --  0.0.0.0/0            0.0.0.0/0           
DROP       all  --  0.0.0.0/0            0.0.0.0/0           
RETURN     all  --  0.0.0.0/0            0.0.0.0/0

Les numéros 25, 143 et 587 ci-dessous devraient être automatiquement ajoutés par docker. Dois-je quand même ouvrir le port correspondant de l'hôte pour y accéder ?

女神的闺蜜爱上我女神的闺蜜爱上我2632 Il y a quelques jours1672

répondre à tous(1)je répondrai

  • 学习ing

    学习ing2017-07-05 10:48:55

    Cela dépend du mode réseau de votre docker,

    1. S'il s'agit du mode pont, la règle de mappage des ports est ip:port:targetPort,

      1. Par exemple, 0.0.0.0:80:8080, cette situation signifie que le port 80 de la machine hôte a une relation de mappage avec le port 8080 du conteneur, et il n'y a aucune restriction sur l'IP pour le moment. demande de port 80 de la machine hôte. Tout sera transféré vers le port 8080 dans le conteneur, aucun paramètre iptables supplémentaire n'est requis. (Cela est possible même si le pare-feu n'ouvre pas le port 80 à l'avance. Car le mappage des ports modifiera tout seul les règles iptables).

      2. Si l'adresse IP est explicitement spécifiée, la règle iptables limitera l'accès au port 8080 du conteneur uniquement au port 80 de l'IP. Le mappage des ports Docker est en fait une interopérabilité réseau obtenue en modifiant les règles iptables.

    2. S'il s'agit du mode net, cela revient à configurer un port d'écoute sur l'hôte. Il n'y aura aucune modification supplémentaire des règles iptables. Pour le moment, vous devez configurer manuellement iptables pour autoriser l'accès externe ;

      répondre
      0
  • Annulerrépondre