親Linuxのファイアウォールの設定変更せずにDockerのサービスに外からアクセスできるなぁ、と思っていたら【iptables】

AndroidスマホでChrome立ち上げてお薦めのサイト見ていたらこういうのが流れて来ました。
Docker が俺の Postgres を勝手に全世界に公開しやがって色々怒られた話 #Docker - Qiita

Docker のドキュメントを見るととんでもないことが書いてありました。デフォルトでは、全ての外部ソース IP アドレスから Docker ホストに接続できます。

手元の環境で試したら、確かに Docker のデーモン起動前と起動後で iptables の設定が大きく変わっており、Docker で建てたコンテナが全て外部から閲覧できるようになっていました。


確かに実感であった。
CentOS 7.9にDNSサーバーのCoreDNSをDocker Composeでインストール、設定してみた(2023年06月11日 (日曜日))
この時は特に設定せず53番は公開されており、クライアントPCからDNSサーバーが使用可能でした。
ネットワークツール スキャンポート
53番ポート、開いております。


一方
CentOS 7.9にFTPサーバーのvsftpdをインストール、設定してみた(2023年06月11日 (日曜日))
親Linuxの時は
sudo firewall-cmd --add-service ftp --permanent
ファイアウォールも設定が必要でした。

何もせずにDNSサーバーが周辺のクライアントPCから使えていたのはこの仕組みのせいか。

本番とか外部公開していたわけではないので問題はないのですが、この仕組みを知る事が出来たのは良かったです。