Назад | Перейти на главную страницу

Безопасность для Docker (мостовая сеть)

Я запускаю Docker в Linux (Ubuntu). По умолчанию он использует docker0 сеть.

docker0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 172.17.0.1  netmask 255.255.0.0  broadcast 172.17.255.255
        inet6 fe80::42:52ff:feb8:84eb  prefixlen 64  scopeid 0x20<link>

Я запускаю множество программ для разработки, часто без какой-либо дополнительной сетевой аутентификации.

Как мне настроить безопасность сети, чтобы мой хост-компьютер мог подключаться к ним, но другие машины в моей сети (включая другие устройства в моей домашней / корпоративной локальной сети) не могли инициировать TCP-соединения?

Какой будет брандмауэр? Это iptables ... или что-то еще?

Один из подходов - попробовать привязать (без brige) IP-адрес и порт и защитить соединение, предназначенное для вашей машины, как классический брандмауэр.

  1. Привязать порты

    docker run -dit --name <container-name> -p 8080:80 <image>

  2. Защитите свой хост / доступ к приложению

    iptables -A INPUT -s 192.168.100.0/24 -p tcp --dport 8080 -j ACCEPT

    iptables -A INPUT -s 192.168.200.0/24 -p tcp --dport 8080 -j DROP