ear*_*arl 55
是的,只需/bin/false用作 shell 并指示用户启动隧道 SSH 进程而不执行任何远程命令(即-NOpenSSH的标志):
ssh -N -L 1234:target-host:5678 ssh-host
Run Code Online (Sandbox Code Playgroud)
cjc*_*cjc 10
在用户的 .ssh/authorized_keys 文件中,输入如下内容:
permitopen="192.168.1.10:3306",permitopen="10.0.0.16:80",no-pty ssh-rsa AAAAB3N...
Run Code Online (Sandbox Code Playgroud)
因此,基本上,您的控件将位于用户的 ssh 公钥前面,以空格分隔。在该示例中,使用特定公钥的连接将被允许仅将 SSH 端口转发到 192.168.1.10 的 MySQL 服务器和 10.0.0.16 的 Web 服务器,并且不会分配 shell (no-pty)。您特别询问“no-pty”选项,但如果用户只应该通过隧道连接到特定服务器,则其他选项也可能有用。
有关authorized_keys 文件的更多选项,请查看sshd 的手册页。
请注意,用户的体验可能看起来有点奇怪:当他们 ssh 进入时,看起来会话正在挂起(因为他们没有得到 pty)。没关系。如果用户指定了端口转发,例如“-L3306:192.168.1.10:3306”,端口转发仍然有效。
无论如何,试一试。
| 归档时间: |
|
| 查看次数: |
30078 次 |
| 最近记录: |