Come configurare Centos 7 firewallD per consentire ai container docker l'accesso gratuito alle porte di rete dell'host?


32

Ho una finestra mobile installata su CentOS 7 e sto eseguendo firewallD.

Dall'interno del mio contenitore, andando all'host (impostazione predefinita 172.17.42.1)

Con firewall attivo

container# nc -v  172.17.42.1  4243
nc: connect to 172.17.42.1 port 4243 (tcp) failed: No route to host

con spegnimento del firewall

container# nc -v  172.17.42.1  4243
Connection to 172.17.42.1 4243 port [tcp/*] succeeded!

Ho letto i documenti su firewalld e non li capisco perfettamente. C'è un modo per consentire semplicemente tutto in un contenitore docker (immagino sull'adattatore docker0) l'accesso illimitato all'host?

Risposte:


31

Forse meglio della risposta precedente;

firewall-cmd --permanent --zone=trusted --change-interface=docker0
firewall-cmd --permanent --zone=trusted --add-port=4243/tcp
firewall-cmd --reload

6
Credo che add-portsia superfluo. Se docker0è contrassegnato come attendibile, tale porta verrà comunque lasciata passare.
Matt Hughes,

6
@MattHughes Ha funzionato per me senza il add-port. È inoltre necessario riavviare la finestra mobile .
rdupz,

1
Funzionato dopo il riavvio di firewalld, non
docker

10

Questi comandi hanno funzionato:

firewall-cmd --permanent --zone=trusted --add-interface=docker0
firewall-cmd --permanent --zone=trusted --add-port=4243/tcp
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.