插件窝 干货文章 如何配置CentOS系统以限制root用户远程登录

如何配置CentOS系统以限制root用户远程登录

sudo 登录 配置 root 143    来源:    2025-04-15

限制root用户远程登录CentOS系统的配置方法

限制root用户远程登录是提高Linux系统安全性的重要措施。以下是几种在CentOS系统上实现这一目标的方法:

方法1:通过SSH配置文件限制

  1. 使用root或具有sudo权限的用户登录系统
  2. 编辑SSH配置文件:

    sudo vi /etc/ssh/sshd_config
    
  3. 找到以下行并进行修改:

    #PermitRootLogin yes
    改为
    PermitRootLogin no
    
  4. 保存文件后重启SSH服务:

    sudo systemctl restart sshd
    

方法2:使用PAM模块限制

  1. 编辑PAM配置文件:

    sudo vi /etc/pam.d/sshd
    
  2. 在文件顶部添加:

    auth required pam_listfile.so item=user sense=deny file=/etc/ssh/deniedusers onerr=succeed
    
  3. 创建被拒绝用户列表文件并添加root:

    sudo echo "root" > /etc/ssh/deniedusers
    
  4. 设置文件权限:

    sudo chmod 600 /etc/ssh/deniedusers
    
  5. 重启SSH服务:

    sudo systemctl restart sshd
    

方法3:结合sudo权限替代root登录

  1. 创建一个具有sudo权限的普通用户:

    sudo adduser adminuser
    sudo passwd adminuser
    sudo usermod -aG wheel adminuser
    
  2. 按照方法1或方法2限制root登录

  3. 需要root权限时,普通用户可以使用:

    sudo -i
    或
    sudo [command]
    

验证配置

  1. 测试root登录是否被拒绝:

    ssh root@your_server_ip
    

    应该看到"Permission denied"错误

  2. 测试普通用户登录:

    ssh adminuser@your_server_ip
    

    应该能正常登录

注意事项

  1. 在实施这些更改前,确保已创建替代的管理员账户
  2. 建议在本地终端测试配置,保持一个活动会话以防配置错误导致无法远程访问
  3. 对于关键生产系统,建议先在测试环境验证配置
  4. 定期审核系统日志以确保安全策略有效: bash sudo tail -f /var/log/secure

通过以上方法,您可以有效限制root用户的远程登录,同时通过sudo权限保持必要的管理能力,显著提高系统安全性。