如何限制root登录 ssh配置_技术学院_宜昌市隼壹珍商贸有限公司

您好,欢迎访问宜昌市隼壹珍商贸有限公司

400 890 5375
当前位置: 主页 > 新闻动态 > 技术学院

如何限制root登录 ssh配置

发布时间:2025-08-28  |  点击率:

首先禁止 root 用户通过 ssh 直接登录,具体方法是编辑 /etc/ssh/sshd_config 文件,将 permitrootlogin 设置为 no;1. 使用 sudo vim /etc/ssh/sshd_config 打开配置文件;2. 修改 #permitrootlogin yes 为 permitrootlogin no;3. 保存后重启 ssh 服务,使用 sudo systemctl restart sshd;4. 确保已创建普通管理员用户(如 admin),并将其加入 sudo(debian/ubuntu)或 wheel(centos/rhel)组;5. 推荐启用密钥登录、更改默认端口、配置防火墙和部署 fail2ban 以增强安全;6. 验证配置:尝试用 root 登录应被拒绝,说明限制已生效。

在 Linux 系统中,为了提高服务器的安全性,通常建议限制 root 用户通过 SSH 直接登录。这样可以防止攻击者直接暴力破解 root 账户密码。以下是限制 root 登录的 SSH 配置方法。

修改 SSH 服务配置文件

SSH 服务的配置文件通常位于

/etc/ssh/sshd_config
。你需要编辑这个文件来禁用 root 登录。

  1. 使用文本编辑器打开配置文件:
sudo vim /etc/ssh/sshd_config
  1. 找到以下这一行:
#PermitRootLogin yes

将其修改为:

PermitRootLogin no
说明:PermitRootLogin no:完全禁止 root 用户通过 SSH 登录。其他可选值(了解即可):without-password 或 prohibit-password:允许 root 使用密钥登录,但不允许密码登录。yes:允许 root 密码登录(不推荐)。forced-commands-only:只允许 root 执行预定义命令,通常用于自动化任务。
  1. 保存并退出编辑器。

重启 SSH 服务

修改配置后,必须重启 SSH 服务才能生效。

  • 在大多数现代 Linux 发行版(如 Ubuntu 18.04+、CentOS 7+)上使用:
sudo systemctl restart sshd
  • 对于旧版本的 Ubuntu,可能使用:
sudo systemctl restart ssh

⚠️ 注意:重启前建议确保你有其他管理员账户可以登录,否则可能被锁在系统外。

配置普通用户并提升权限(推荐做法)

禁用 root 登录后,应使用普通用户登录,再通过

sudo
su
切换到 root。

  1. 创建一个普通用户(例如
    admin
    ):
sudo adduser admin
  1. 将用户加入 sudo 组(Debian/Ubuntu):
sudo usermod -aG sudo admin

或加入 wheel 组(CentOS/RHEL):

sudo usermod -aG wheel admin
  1. 使用
    admin
    用户通过 SSH 登录,需要 root 权限时执行:
sudo su -

或直接运行需要权限的命令:

sudo systemctl restart nginx

额外安全建议

  • 使用密钥认证:禁用密码登录,仅允许 SSH 密钥登录,更安全。
  • 更改默认 SSH 端口:将端口从 22 改为其他端口,减少自动扫描攻击。
  • 启用防火墙:使用
    ufw
    firewalld
    限制访问 IP。
  • 使用 Fail2ban:自动封禁多次尝试登录失败的 IP。

验证配置是否生效

你可以通过另一台机器尝试用 root 登录:

ssh root@your_server_ip

如果返回类似 “Permission denied, please try again.” 或直接拒绝连接,说明配置成功。


基本上就这些。限制 root 登录是一个简单但非常有效的安全措施,强烈建议在生产环境中启用。

全国统一服务电话

400 890 5375

电子邮箱:879577@qq.com

公司地址:宜昌市西陵区黄河路5号三峡明珠10栋1051室

咨询微信

TEL:13680874598