使用 iptables 防火墙从远程主机连接到节点网络的问题

问题描述 投票:0回答:0

我有一个 ubuntu 22.04 LTS 服务器,它有一个运行 nodered 的容器暴露在端口 1880 上,我想用 iptables 重新连接。我的配置如下:

iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
iptables -A INPUT -p tcp --dport 1880 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 1880 -j ACCEPT

iptables -A FORWARD -p all -j DOCKER-USER
iptables -A FORWARD -p all -j DOCKER-ISOLATION-STAGE-1
iptables -A FORWARD -p all -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED  -j ACCEPT
iptables -A FORWARD -p all -o docker0 -j DOCKER
iptables -A FORWARD -p all -i docker0 -o !docker0 -j ACCEPT
iptables -A FORWARD -p all -i docker0 -o docker0 -j ACCEPT

iptables -A DOCKER -p tcp -i !docker0 -o docker0 -d 192.168.50.124 --dport 1880 -j ACCEPT

iptables -A DOCKER-ISOLATION-STAGE-1 -p all -i docker0 -o !docker0 -j DOCKER-ISOLATION-STAGE-2
iptables -A DOCKER-ISOLATION-STAGE-1 -p all -j RETURN

iptables -A DOCKER-ISOLATION-STAGE-2 -p all -o docker0 -j DROP
iptables -A DOCKER-ISOLATION-STAGE-2 -p all -j RETURN

iptables -A DOCKER-USER -p all -j RETURN
iptables -I DOCKER-USER -i docker0 -j ACCEPT

这些是我的 iptables 规则,我做错了什么?

如果我放置:

iptables -A OUTPUT -p tcp -j ACCEPT
&
iptables -A INPUT -p tcp -j ACCEPT
,它有效

docker node-red iptables
© www.soinside.com 2019 - 2024. All rights reserved.