通过安装自己的转发器绕过 sshd AllowTCPFowarding=no?

通过安装自己的转发器绕过 sshd AllowTCPFowarding=no?

在 的手册页中sshd_config,对于该AllowTCPForwarding选项,它指出:

允许Tcp转发

指定是否允许 TCP 转发。默认为“是”。请注意,禁用 TCP 转发不会提高安全性,除非用户也被拒绝 shell 访问,因为他们始终可以安装自己的转发器。

有人可以详细说明一下吗?我不明白有人如何安装自己的转发器来规避 TcpForwarding。是否必须安装某种代理服务器,然后创建到远程代理服务器的隧道?

答案1

嗯,SSH 转发是一种代理服务器。它的工作原理是在一侧接受连接,然后在另一侧建立连接,然后在两者之间转发数据。

您也可以轻松做到这一点。例如,使用 netcat:

nc -l -p 1234 ⇆ ssh user@remote 'nc remote2 80'

其中代表建立一个双向管。这或多或少应该可以做到(忽略任何缓冲问题)。

它不如内置的那么好,但是当然,只要在您选择的脚本语言上做一点工作,它就可以了。

答案2

具有 shell 访问权限的用户可以轻松地sshd在非特权端口上使用他/她自己的配置(例如允许 TCP 转发)运行。因此,为常规系统守护进程禁用它没有多大意义,除非您进行了大量其他强化操作。

相关内容