Oli*_*son 3 ssh iptables forwarding
我正在尝试设置一个 iptables 规则,该规则将阻止通过 ssh 本地远程转发连接访问 ssh 远程转发连接。所以,爱荷华州:
客户端 A 连接到服务器: ssh -R 10000:localhost:23 someserver 客户端 B 连接到服务器: ssh -L 23:localhost:10000 某个服务器
我无法让 iptables 阻止这个。在某些 sshd_config 设置无法覆盖的情况下,我需要转发(我将有一个程序专门分发客户端可以转发的端口,希望该程序随后会添加一个 iptables 规则以允许这样做)。
我试过了:
iptables --flush iptables -A 输入 -i lo -p tcp --dport 0:1024 -j 接受 iptables -A 输出 -o lo -p tcp --dport 0:1024 -j 接受 iptables --policy INPUT DROP iptables --policy 输出下降 iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A OUTPUT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT
但它仍然允许 ssh 本地转发连接访问远程转发端口。关于如何让 iptables 处理这个问题的任何想法?
编辑:尝试更改为:
iptables --flush iptables --policy INPUT DROP iptables --policy 输出下降 iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A 输入 -i eth1 -p tcp --dport 22 -j 接受 iptables -A 输出 -o eth1 -p tcp --sport 22 -j 接受 iptables -A 输入 -j 拒绝
我仍然可以建立转发的连接。很显然,这并不完全是这样。不过还是谢谢你的回答。你对我有什么其他想法吗?
在 ssh 服务器上关闭 ssh 转发不是更容易吗?只需AllowTcpForwarding
在您的 /etc/ssh/sshd_config 中从 yes更改为 no。如果这不适合,你可以尝试一些类似的东西
iptables -A OUTPUT -o eth1 -p tcp --cmd-owner "sshd" -j DROP
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5256 次 |
最近记录: |