我想限制服务器上的所有用户只能使用 SFTP,而管理员组的成员应该拥有完整的 SSH 访问权限。
我发现可以使用Match Group
and来限制组的成员ForceCommand
。但我没有发现任何逻辑否定。所以我尝试反向构造它:
# SFTP only, full access only for admin group
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
Match Group admin
X11Forwarding yes
AllowTcpForwarding yes
ForceCommand /usr/local/sbin/ssh-allowcmd.sh
并构建了一个ssh-allowcmd.sh
执行给定命令或/bin/bash
用于交互式访问的脚本。
有更好的解决方案吗?