小编Geo*_*eos的帖子

iptables 问题:将端口 x 转发到网络上不同机器的 ssh 端口

我有一台 Ubuntu PC,带有两个网卡,充当路由器。一张网卡eth0连接到互联网,另一张eth1连接到局域网。我想将 LAN 中不同主机的 ssh 端口暴露给外部世界的不同端口号。即“ssh user@router -p 1234”应该转到host1的ssh端口,“ssh user@router -p 3456”应该ssh到host2。我为 host1 添加了以下 iptable 规则,但它不起作用:

iptables -A FORWARD -i $EXTIF -o $INTIF -p tcp --dport 1234 -m conntrack --ctstate NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A PREROUTING -t nat -p tcp -d $EXTIP --dport 1234 -m conntrack --ctstate NEW,ESTABLISHED,RELATED -j DNAT --to-destination 10.9.0.2:22
Run Code Online (Sandbox Code Playgroud)

EXTIF是外部接口(eth0),INTIF是内部接口(eth1),EXTIP是eth0的IP地址。

有什么帮助吗?(不确定问题是否清楚,如果有人理解我的意图,请使用正确的行话进行编辑)

ubuntu ssh forwarding

3
推荐指数
1
解决办法
2441
查看次数

标签 统计

forwarding ×1

ssh ×1

ubuntu ×1