#docker #iptables #firewalld
Вопрос:
У меня есть развертывание docker-compose с контейнером, например:
version: "3" services: web: image: nginx ports: - "8080:80"
Версия докера-20.10.9, ОС-CentOS 7.
Мне нужно заблокировать доступ к порту 8080 с внешних IP-адресов, кроме указанных.
Но iptables -A INPUT -p tcp -m tcp --dport 8080 --src ! lt;IP whitelistgt; -j DROP
не работает для контейнеров docker.
В системе с брандмауэром настройки public
зоны не применяются для контейнеров Docker.
Цепочка ДОКЕР-ПОЛЬЗОВАТЕЛЬ не работает должным образом, потому что я должен использовать --dport 80
(внутренний порт в контейнере докера) нет dport 8080
. Но мне нужно использовать внешний порт, потому что может быть много контейнеров с внутренним портом 80, но внешний порт уникален.
Я использовал