Рубрики
Uncategorized

Добавление брандмауэра в докер

Это собирается решить проблемы многих инженеров DEVOPS, ищущих безопасность брандмауэра для их … Теги с DevOps, Docker, Nowners, Linux.

Это собирается решить проблемы многих инженеров DEVOPS, которые ищут безопасность брандмауэра для своих контейнеров.

Ниже приведены мои предыдущие статьи о безопасности Docker:

Почему хакерская первая любовь ‘a docker контейнер? Взломать докер

Манаша Srivastava · 4 июня 20 · 21 мин прочитать

и

Новый тип докера: Безтон + безопаснее: для каждого пользователя Docker.

Манаша Srivastava · 1 июня 20 · 9 мин прочитано

Docker не предотвращает проведение реализации брандмауэра Host; Скорее, он добавляет к сложности. Это руководство имеет отступ для добавления брандмауэра Host в Docker.

ШАГ 1

(а) Перейдите к/etc/systemd/system/и создайте каталог с именем docker.service.d (b) Создание файла noiptabables.conf и добавьте следующий контент:

[Service]
ExecStart=
ExecStart=/usr/bin/docker daemon -H fd:// --iptables=false

ШАГ 2

(а) Перезапуск Docker (B) Проверьте iptables -l -n -v (Если все в порядке, вы не увидите никаких правил:))

ШАГ 3

(а) запустить apt-get install iptables- настойчивый

После выполнения этого вам будет предложено сохранить свой IPv4, а затем правила вашего IPv6 к двум файлам,/etc/iptables/rules.v4 и/etc/iptables/rules.v6 соответственно.

Чтобы дать доступ к Интернету IPv4 ко всем контейнерам, сервер должен выполнить NAT. Чтобы сделать это в начале файла PREVELS.V4, добавьте следующее:

*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -o eth0 -j masquerade
COMMIT
And then below it, 

После того, как вы закончите, ваши PRECTION.V4/PRECTION.V6 файл будет выглядеть что-то подобное:

*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]

-A POSTROUTING -o eth0 -j MASQUERADE

COMMIT

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]

# Allow localhost
-A INPUT -i lo -j ACCEPT
-A OUTPUT -o lo -j ACCEPT

# ICMP
-A INPUT -p icmp -j ACCEPT

# Docker
-A FORWARD -i docker0 -o eth0 -j ACCEPT
-A FORWARD -i eth0 -o docker0 -j ACCEPT

# Incoming
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
-A INPUT -j DROP

# Outgoing
-A OUTPUT -j ACCEPT

# Routing
-A FORWARD -j DROP

COMMIT

Конечно, вы должны заменить ETH0 с вашим исходящим сетевым интерфейсом, если он отличается от eth0. После того, как вы завершите это, перезапустите брандмауэр через NetFilter-постоянную перезагрузку, и вы хотите пойти!

Нажмите здесь, чтобы присоединиться к моей команде

Читать дальше здесь

Оригинал: «https://dev.to/manishfoodtechs/adding-firewall-to-docker-4hjd»