Привет.
Установил Ubuntu12. Работаю от root.
Установил Docker.
В контейнере запустил web-программу и пробросил ей порт 91 (-p 91:91). Теперь она мне отвечает из глобальной сети.
Вне контейнера установил утилиту брандмауэра UFW. Запретил все входящие соединения, кроме SSH (у меня это порт 46).
Перезагрузился.
Смотрю статус брандмауэра:
spoilerroot@ololo:~# ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), deny (routed)
New profiles: skip
To Action From
-- ------ ----
46 ALLOW IN Anywhere
Вопрос: почему я могу подключиться к программе в контейнере из глобальной сети? Почему UFW не блокирует соединение?
Может это из-за наличия нескольких сетевых интерфейсов?
spoilerroot@ololo:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
altname enp0s3
inet xx.xx.xx.xxx/24 brd xx.xx.xx.255 scope global ens3
valid_lft forever preferred_lft forever
inet6 xxxx::xxxx:xx:xxxx:xxxx/64 scope link
valid_lft forever preferred_lft forever
3: docker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
valid_lft forever preferred_lft forever
inet6 xxxx::xx:xxxx:xxxx:xxxx/64 scope link
valid_lft forever preferred_lft forever
5: veth750a5de@if4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP group default
link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet6 xxxx::xxxx:xxx:xxxx:xxxx/64 scope link
valid_lft forever preferred_lft forever
Спасибо за ответы.