如何配置 ssh 以自动将端口转发到另一台计算机?

如何配置 ssh 以自动将端口转发到另一台计算机?

我在 authorized_keys 中找到了 permit_open 选项,但我希望特定用户 ssh 到服务器并自动 telnet 到另一个用户,同时被关在 jail-boxed 中。这意味着类似这样:

用户1@本地# ssh 用户1@远程1

它实际上连接到防火墙后面的 remote2 telnet 端口,而 user1 无法访问防火墙后面的任何内容(包括 remote1)。

答案1

您可以使用端口转发或防火墙规则(ipchains 或类似规则)。我认为您希望 SSH 能够做到这一点,但这不是 SSH 的用途。

答案2

我不会使用端口转发,而只是将 ssh 用户在 remote1 上运行的初始程序更改为“telnet remote2”,而不是“/bin/bash”或其他程序。编辑:使用 authorized_keys 中的“command”选项

不过,也许您可​​以详细说明您的用例。

答案3

Renik 已经给了你答案,但不要忘记添加一些强化设置来禁用端口转发。

像这样 :

command="/usr/bin/ssh user1@remote1",no-port-forwarding,no-user-rc ssh-rsa ... user@host

答案4

撇开安全环境中的 telnet 用户不谈,我同意 Harv 的观点 - 您正在尝试使 SSH 过载。如果这是我的构建,我可能会为远程用户安装 openVPN 以连接到 remote1,然后使用 iptables 将隧道传出的流量限制为发往 remote2(和回复)的 TCP/23。

相关内容