Запрос рекомендаций по изменению правил nftables для взаимодействия с контейнерной сетьюLinux

Ответить
Anonymous
 Запрос рекомендаций по изменению правил nftables для взаимодействия с контейнерной сетью

Сообщение Anonymous »

Код: Выделить всё

root@pve109:~# nft list ruleset
# Warning: table ip nat is managed by iptables-nft, do not touch!
table ip nat {
chain DOCKER {
iifname "br-03303b77df72" counter packets 291 bytes 17460 return
iifname != "br-03303b77df72" tcp dport 8080 counter packets 0 bytes 0 dnat to 178.18.0.2:8080
}

chain POSTROUTING {
type nat hook postrouting priority srcnat; policy accept;
oifname != "br-03303b77df72" ip saddr 178.18.0.0/16 counter packets 35 bytes 2594 masquerade
ip saddr 178.18.0.2 ip daddr 178.18.0.2 tcp dport 8080 counter packets 0 bytes 0 masquerade
}

chain PREROUTING {
type nat hook prerouting priority dstnat; policy accept;
fib daddr type local counter packets 2410 bytes 142600 jump DOCKER
}

chain OUTPUT {
type nat hook output priority -100; policy accept;
ip daddr != 127.0.0.0/8 fib daddr type local counter packets 0 bytes 0 jump DOCKER
}
}
# Warning: table ip filter is managed by iptables-nft, do not touch!
table ip filter {
chain DOCKER {
iifname != "br-03303b77df72" oifname "br-03303b77df72" ip daddr 178.18.0.2 tcp dport 8080 counter packets 0 bytes 0 accept
}

chain DOCKER-ISOLATION-STAGE-1 {
iifname "br-03303b77df72" oifname != "br-03303b77df72" counter packets 5512 bytes 52506141 jump DOCKER-ISOLATION-STAGE-2
counter packets 22792 bytes 55597803 return
}

chain DOCKER-ISOLATION-STAGE-2 {
oifname "br-03303b77df72" counter packets 0 bytes 0 drop
counter packets 5610 bytes 52541126 return
}

chain FORWARD {
type filter hook forward priority filter; policy drop;
counter packets 22792 bytes 55597803 jump DOCKER-USER
counter packets 22792 bytes 55597803 jump DOCKER-ISOLATION-STAGE-1
oifname "br-03303b77df72" ct state related,established counter packets 16688 bytes 3023945 accept
oifname "br-03303b77df72" counter packets 358 bytes 19640 jump DOCKER
iifname "br-03303b77df72" oifname != "br-03303b77df72" counter packets 5512 bytes 52506141 accept
iifname "br-03303b77df72" oifname "br-03303b77df72" counter packets 128 bytes 7680 accept
}

chain DOCKER-USER {
counter packets 22792 bytes 55597803 return
}
}

table inet FirstFilter {
chain prerouting {
type filter hook prerouting priority -202; policy drop;
tcp dport { 80, 443 } accept
ip saddr 10.10.0.0/16 accept
ip saddr 178.18.0.0/16 accept
iifname "lo" accept
tcp dport 2222 accept
}
}

Код: Выделить всё

root@pve109:~# nft --version
nftables v1.0.6 (Lester Gooch #5)
root@pve109:~# uname -a
Linux pve109 6.1.0-22-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.94-1 (2024-06-21) x86_64 GNU/Linux
Уважаемый эксперт,
Надеюсь, это сообщение вас застанет. В настоящее время я работаю с nftables и столкнулся с проблемой, с которой, надеюсь, вы сможете мне помочь.
Проблема касается моего внутреннего контейнера, который расположен по IP-адресу 178.18.0.2. . Этот контейнер должен запрашивать данные из внешней сети и получать соответствующие ответы.
Хотя исходящие запросы успешно отправлены, ответы на данные не принимаются должным образом. Я подозреваю, что эта проблема связана с моей текущей конфигурацией nftables.
Не могли бы вы предоставить какие-либо рекомендации или помощь в том, как можно изменить эту конфигурацию для решения этой проблемы? Мы очень ценим ваш опыт.
Заранее благодарим вас за ваше время и помощь. Я с нетерпением жду вашей ценной информации.
С уважением.
перед docker добавьте nat
if ! таблица списка nft inet FirstFilter >/dev/null 2>&1; then
nft add table inet FirstFilter
echo «Table FirstFilter создан»
fi
if ! цепочка списков nft inet FirstFilter prerouting >/dev/null 2>&1; then
nft add цепочка inet FirstFilter prerouting { тип фильтра, приоритет предварительной маршрутизации -202; удаление политики;
nft добавить правило inet FirstFilter prerouting tcp dport {80,443} Accept
nft добавить правило inet FirstFilter prerouting ct state { связанное, установленное } Accept
nft добавить правило inet FirstFilter prerouting ct state { new } Accept
nft добавить правило inet FirstFilter предварительной маршрутизации ip saddr "10.10.0.0/16" принять
nft добавить правило inet FirstFilter предварительной маршрутизации ip saddr "178.18.0.0/16" принятьnft добавить правило inet FirstFilter с предварительной маршрутизацией iifname lo Accept
nft добавить правило inet FirstFilter с предварительной маршрутизацией tcp dport "$SSH_PORT" Accept

Подробнее здесь: https://stackoverflow.com/questions/787 ... -communica
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Linux»