我已经环顾Google寻求解决这个问题的方法,而且我可能会过度复杂化。
我正在寻找的是一种用户login后自动转发特定端口的方法。
基本上,我在一个网站上工作,作为主机上运行的不同服务器软件的入口。 我想要创build数量有限的SSH用户,并且有很大的限制。 他们有一个帐户的唯一的一点是转发端口。
我的问题是,我是否可以在SSH中设置一些configuration选项,以便每当这些受限用户中的一个login时,他们自动将一些主机端口转发给他们。
这里的想法是,我所做的网站只有一个指向http:// localhost:PORTS的URL列表。 我看了看“EscapeChar”,我想我可以设置一个脚本来转发端口,使用类似“〜CL PORT:localhost:PORT”。
有更简单的东西吗? 我在这里错过了什么?
我不相信你可以在服务器端做任何事情来转发端口。 我很确定你需要客户端来设置端口转发。
客户端configuration中的SSH客户端隧道可以非常容易地configuration。
如果您希望将用户限制在特定的命令和特定的端口上,则可以使用authorized_keys文件中的命令和permitopen选项。 有关详细信息,请参见sshd手册页。
我不完全明白你想要什么,但是如果你正在使用公钥encryption,也许你可以使用command="xxxx"参数公钥。 有关详细信息,请参阅man sshd 。
或者,有ssh -f命令(加上适当的其他选项)把ssh放在后台,但是听起来不像你想要的那样。
你可能也想检查PAM。 您可以使用PAM来触发特定于SSH的login命令。 有关更多详细信息,请参阅man pam 。
但是,正如有人所说,服务器可能无法转发端口。
如果您使用SSH客户端的.ssh/config文件来创build转发,该怎么办? 可能没有我想象的本地炮弹