我正在尝试限制通过服务器(使用 OpenSSH)上的 ssh 连接的用户仅在某些端口上进行本地端口转发。
我发现permitopen="address:port"
在他们的文件中设置选项~/.ssh/authorized_keys
可以达到我期望的效果。
但是这不是很方便,因为我必须编辑所有现有的authorized_keys文件,并且如果将来我想允许更多端口,更改允许的端口......我将不得不再次编辑它们所有。
对于一个组中的所有用户来说,是否可以实现类似的操作,即“如果用户属于该组,则仅允许在地址:端口上进行本地端口转发”?
谢谢!
編輯>sshd_config 文件似乎有一个功能可以实现这一点:匹配。我可以匹配一个用户或一个组,并为他们应用一些自定义配置,其中包括 PermitOpen,我第一次阅读手册页时肯定跳过了它。
答案1
您可以在/etc/ssh/sshd_config
并应用指令,例如PermitOpen
限制用户可以执行的操作。以下内容将允许组成员restricted
仅通过隧道连接到服务器上的端口 1234 和 google.com 上的端口 80
Match Group restricted
PermitOpen localhost:1234 google.com:80