Wpływ Docker na iptables

Problem pojawił się po uruchomieniu Docker MySQL na serwerze zewnętrznym. Po dodaniu reguły w UFW blokującej dostęp do domyślnego portu aplikacji, serwer dalej nasłuchiwał na tym porcie. Zaobserwowałem, że Docker ignoruje reguły dodane przez użytkownika w łańcuchu zapory.

Postanowiłem zablokować ingerencję Docker w iptables.  

UWAGA! Całkowite uniemożliwienie manipulacji regułami iptables dla Docker może źle wpłynąć na pracę Twoich kontenerów. Będziesz musiał sam zadbać o reguły w swoim systemowym firewall.

Rozwiązanie:

  • edytuj plik:
vim /etc/systemd/system/docker.service.d/noiptables.conf
  • dodaj wartość:
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --iptables=false
  • przeładuj ustawienia:
sudo systemctl daemon-reload
sudo systemctl restart docker

Dokumentacja DOCKER i IPTABLES