Firewalld Docker

Fórumok

Firewalld-t használok Iptables backenddel és az istennek sem tudok perzisztens route-ot felvenni DOCKER-USER chainbe (INPUT chainbe megy...). Runtime-ban ha ezt hozzáadom megy:

firewall-cmd --direct --add-rule ipv4 filter DOCKER-USER 0 -i eth0 ! -s X.x.x.x -j DROP

Chain DOCKER-USER (1 references)

target     prot opt source               destination         

DROP       all  -- !x-x-x-x.static.digikabel.hu  anywhere            

RETURN     all  --  anywhere             anywhere   

 

Ha permanent-kent hozzaadom

firewall-cmd --direct --permanent --add-rule ipv4 filter DOCKER-USER 0 -i eth0 ! -s X.x.x.x -j DROP            

latszolag ott van a konfigban
 

<?xml version="1.0" encoding="utf-8"?>

<direct>

  <rule ipv="ipv4" table="filter" chain="DOCKER-USER" priority="0">-i eth0 '!' -s X.x.x.x -j DROP</rule>

</direct>

 

de nem kerul be az iptables-be:

Chain DOCKER-USER (1 references)

target     prot opt source               destination         

RETURN     all  --  anywhere             anywhere 

Hozzászólások

Ez szerintem azért van, mert a dockerd kezeli ezt a láncot és az törli a szabályodat.

Ha esetleg elárulod mi a cél, miért gondolod, hogy ezt így oldod meg, valószínűleg többet tudunk segíteni.

----
올드보이

ügyfél adta a VM-et (Almalinux), firewalld van rajta alapból, ezért gondoltam hogy így oldom meg. Jobb ötlet híján írtam egy servicet ami a firewalld service után hozzáadja az iptables rulet....

Egyébként az igény az hogy van egy docker container amit csak egy source IP-ről szabad elérni. A Docker bridge interfészt használ..

Hát, a DOCKER-USER alapvetően neked van ott, nem volna elegáns, ha törölné a dockerd. Itt inkább vmi sorrendi bajra tippelnék, leginkább arra, hogy a firewalld nem hozza létre a chaint magától, a docker meg később indul.

Viszont a doksi aszongya hogy:

Integration with firewalld

If you are running Docker with the iptables option set to true, and firewalld

is enabled on your system, Docker automatically creates a firewalld zone called docker, with target ACCEPT.

All network interfaces created by Docker (for example, docker0) are inserted into the docker zone.

Docker also creates a forwarding policy called docker-forwarding that allows forwarding from ANY zone to the docker zone.

Bookmark -  esélyes, hogy nekem is szükségem lesz rá...