如何允许ssh设置远程端口转发但不执行命令?

如何设置SSH命令来允许端口转发,但不执行命令。

我知道sshlogin可以使用-N来停止命令的执行,但sshconfiguration文件可以设置为不允许吗?

在Linux中限制shell的types和path是可选的,但是可以在SSHconfiguration本身中完成吗?

看看man sshd和searchAUTHORIZED_KEYS FILE FORMAT

你想要做的是创build一个公钥/私钥对,并把~/.ssh/authorized_keys作为普通的密钥放在~/.ssh/authorized_keys文件中。 然后编辑authorized_keys文件来添加string:

命令= “/ bin中/假” 时,没有代理转发,无PTY,无USR-RC,没有-X11-转发,permitopen = “127.0.0.1:80”

它最终会看起来有点像:

 command="/bin/false",no-agent-forwarding,no-pty,no-user-rc,no-X11-forwarding,permitopen="127.0.0.1:80" ssh-dss AAAAC3...51R== 

你会想把参数改成'permitopen',并且可能改变一些其他的设置,但我认为基本上是这样。

这篇文章应该把你放在正确的道路上

http://www.semicomplete.com/articles/ssh-security/