You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何按用户/组限制SSH正向隧道的目标地址?

当然可以实现!SSH服务端的配置文件支持通过Match规则结合PermitOpen参数,精准按用户或用户组限制正向隧道的目标地址,完全满足你的需求。下面是具体的实现方案和验证步骤:

1. 单个用户的限制配置

编辑SSH服务端的核心配置文件(通常路径为/etc/ssh/sshd_config),在文件末尾添加以下针对性规则:

# 限制client_a仅能转发到192.168.10.*网段的任意端口
Match User client_a
    AllowTcpForwarding yes
    PermitOpen 192.168.10.*:*
    # 可选:禁止该用户登录shell,仅允许隧道转发操作
    ForceCommand echo "This account is restricted to SSH tunnel forwarding only"

# 限制client_b仅能转发到192.168.11.*网段的任意端口
Match User client_b
    AllowTcpForwarding yes
    PermitOpen 192.168.11.*:*
    ForceCommand echo "This account is restricted to SSH tunnel forwarding only"

关键参数说明:

  • Match User:精准匹配指定用户,后续配置仅对该用户生效
  • AllowTcpForwarding yes:明确开启该用户的TCP转发权限(正向隧道依赖此配置)
  • PermitOpen:指定允许转发的目标地址和端口,支持通配符*,格式为[host]:[port],多个目标用空格分隔即可
  • ForceCommand:可选配置,用来限制用户无法登录交互式shell,避免用户通过shell执行其他非隧道操作
2. 用户组的批量限制配置

如果需要按用户组批量管理权限,可以替换为Match Group规则:

# 限制group_a组内所有用户仅能转发到192.168.10.*网段
Match Group group_a
    AllowTcpForwarding yes
    PermitOpen 192.168.10.*:*
    ForceCommand echo "This account is restricted to SSH tunnel forwarding only"

# 限制group_b组内所有用户仅能转发到192.168.11.*网段
Match Group group_b
    AllowTcpForwarding yes
    PermitOpen 192.168.11.*:*
    ForceCommand echo "This account is restricted to SSH tunnel forwarding only"

配置前请确保对应的用户组已创建,且目标用户已加入到对应组中。

3. 配置生效与验证
  1. 先检查配置文件语法是否正确,避免重启服务失败:
sshd -t

如果没有输出任何内容,说明配置格式完全合规。

  1. 重启SSH服务使配置生效:
# 适用于systemd架构的系统(如Ubuntu 16.04+/CentOS 7+)
systemctl restart sshd

# 适用于init架构的系统(如CentOS 6)
service sshd restart
  1. 验证限制效果:
    用client_a尝试转发到非允许的网段地址,比如:
ssh -L 8080:192.168.11.2:22 client_a@your-ssh-server-ip

此时SSH会返回类似channel 0: open failed: administratively prohibited: open failed的错误提示,说明限制规则生效;而转发到192.168.10.*网段的地址则可以正常建立隧道。

额外注意事项
  • 如果需要限制到具体端口(比如仅允许22端口),可以把PermitOpen的端口部分改为具体数值,比如192.168.10.*:22
  • 若要全局禁止隧道转发,仅给特定用户/组开放权限,可以在全局配置中设置AllowTcpForwarding no,再在Match块中单独开启
  • 建议开启SSH服务日志,方便排查配置问题,日志路径通常为/var/log/auth.log(Debian/Ubuntu)或/var/log/secure(CentOS/RHEL)

内容的提问来源于stack exchange,提问作者hermetik

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 07:55:16