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