如何设置 SSH 命令以允许端口转发但不执行命令。
我知道 ssh 登录可以使用 -N 来停止命令执行,但是可以设置 ssh 配置文件来禁止它吗?
在 Linux 中限制 shell 的类型和路径是一种选择,但是可以在 SSH 配置本身中完成吗?
答案1
查看man sshd
并搜索AUTHORIZED_KEYS FILE FORMAT
~/.ssh/authorized_keys
您要做的是创建一个公钥/私钥对,并像平常一样将公钥放入文件中。然后编辑authorized_keys
文件以添加字符串:
命令=“/bin/false”,无代理转发,无pty,无用户rc,无X11转发,允许打开=“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”,并可能更改其他一些设置,但我认为基本上就是这样。
答案2
这篇文章应该能给你指明正确的方向