设置SSH登陆权限

知识科普

设置SSH登陆权限

2025-01-26 21:27


                                            




操作场景

本节操作指导用户设置允许或禁止用户/IP通过SSH方式连接云服务器

约束与限制

  • 已安装Denyhosts插件。
  • 该文档中操作涉及重启sshd服务,请在合理的时间进行操作。

方法一:通过编辑sshd配置文件实现允许或者禁止指定用户/用户组或者IP登录

  1. 允许指定用户进行登录(白名单)

    在/etc/ssh/sshd_config 配置文件中设置AllowUsers选项,在配置文件末尾添加行格式如下(例如允许用户test通过192.168.1.2登录)。

    AllowUsers test@192.168.1.2
     
    说明:

    配置了指定用户或者用户组允许登录后,默认拒绝其他所有用户或者用户组。

  2. 禁止指定用户登录(黑名单)

    在 /etc/ssh/sshd_config 配置文件中设置DenyUsers选项,在配置文件末尾添加行格式如下(例如禁止用户testuser登录)。

    DenyUsers testuser 
     

    上述修改需要重启sshd服务。

    CentOS 6系列执行以下命令进行重启:

    service sshd restart

    Centos 7/EulerOS系列执行以下命令进行重启:

    systemctl restart sshd

方法二:使用DenyHosts允许或者禁止指定IP通过SSH登录

linux 服务器通过设置 /etc/hosts.allow 和 /etc/hosts.deny 这个两个文件,可以限制或者允许某个或者某段IP地址远程SSH登录服务器.方法比较简单,具体如下:

  1. 允许192.168.1.3 这个IP地址ssh登录,打开/etc/hosts.allow,添加如下行:
    sshd: 192.168.1.3
     
  2. 禁止所有ip通过ssh登录,打开/etc/hosts.deny,添加如下行:
    sshd:ALL