Linux如何启用root密码直接登录

修改/etc/ssh/sshd_config文件,将PermitRootLogin设置为yes,保存后重启SSH服务(如systemctl restart sshd),并为root用户设置密码即可,但此举会降低系统安全性,不推荐。

Linux如何直接使用root登录密码

在Linux系统中,root用户拥有最高权限,默认情况下,出于安全考虑,大多数发行版禁止直接通过密码以root身份远程登录(如SSH),但在特定场景(如本地调试或内部环境)下,可能需要启用此功能,以下是详细操作指南:

Linux如何启用root密码直接登录


核心步骤:启用root密码登录

  1. 设置root密码
    若未设置过root密码,先执行:

    sudo passwd root

    输入当前用户密码后,设置新的root密码(需输入两次确认)。

  2. 修改SSH配置文件
    编辑SSH守护进程配置文件:

    sudo nano /etc/ssh/sshd_config

    找到以下参数并修改为:

    PermitRootLogin yes          # 允许root登录
    PasswordAuthentication yes   # 启用密码验证

    若参数被注释(行首有),需删除注释符号。

    Linux如何启用root密码直接登录

  3. 重启SSH服务

    • Debian/Ubuntu
      sudo systemctl restart ssh
    • CentOS/RHEL
      sudo systemctl restart sshd
  4. 测试登录
    从另一台机器验证:

    ssh root@服务器IP

    输入设置的root密码,确认登录成功。


安全风险与加固建议

⚠️ 重要警告
直接允许root密码登录会显著增加系统被暴力破解的风险,若必须启用,务必采取以下措施:

  1. 使用强密码
    长度≥12位,包含大小写字母、数字、特殊符号(如 J7#kQ9!zP2$d)。
  2. 限制访问源IP
    在防火墙(如ufw)中仅允许可信IP访问22端口:

    sudo ufw allow from 192.168.1.100 to any port 22
  3. 更改SSH默认端口
    编辑/etc/ssh/sshd_config,修改:

    Port 2222  # 改为非标准端口

    重启SSH服务并开放新端口。

    Linux如何启用root密码直接登录

  4. 安装fail2ban
    自动封禁多次登录失败的IP:

    sudo apt install fail2ban  # Debian/Ubuntu
    sudo yum install fail2ban  # CentOS/RHEL

替代方案(推荐)

更安全的做法是禁用root密码登录,改用以下方式:

  1. 通过普通用户切换
    • 用普通用户登录后切换至root:
      su - root   # 输入root密码
      或
      sudo -i     # 输入当前用户密码(需已配置sudo权限)
  2. 仅允许SSH密钥登录
    编辑/etc/ssh/sshd_config

    PermitRootLogin prohibit-password  # 禁止密码登录,仅允许密钥
    PasswordAuthentication no          # 全局禁用密码验证

恢复默认安全配置

操作完成后,建议恢复设置:

  1. 修改/etc/ssh/sshd_config
    PermitRootLogin no
    PasswordAuthentication no
  2. 重启SSH服务:
    sudo systemctl restart sshd  # 或 ssh

  • 启用root密码登录:仅建议在隔离测试环境中临时使用。
  • 生产环境:必须结合IP限制、强密码和fail2ban等防护措施。
  • 最佳实践:日常使用普通账户+sudo管理权限,SSH登录强制使用密钥认证。

引用说明:本文配置方法基于OpenSSH官方文档及主流Linux发行版(Ubuntu 22.04/CentOS 7+)安全指南,具体操作请以实际环境为准,并参考OpenSSH手册

原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/37624.html

(0)
酷盾叔的头像酷盾叔
上一篇 2025年6月24日 08:44
下一篇 2025年6月24日 08:49

相关推荐

  • Linux端口占用速解

    要结束Linux中被占用的端口,需先查找占用端口的进程ID(PID),再用kill命令终止该进程,步骤如下:,1. 使用 lsof -i :端口号 或 netstat -tulnp | grep 端口号 查找对应PID ,2. 执行 kill -9 PID 强制结束该进程

    2025年6月9日
    100
  • Linux如何查IP

    在Linux中查询IP地址,常用两种方法:,1. 使用传统命令:ifconfig(若未安装,需通过sudo apt install net-tools安装),2. 使用现代命令:ip addr show 或简写 ip a,这两个命令会列出网络接口及其对应的IP地址信息(如eth0、wlan0等),执行时可能需要sudo权限。

    2025年6月7日
    200
  • Linux镜像恢复系统盘教程

    使用Linux Live环境启动电脑,挂载系统分区后,利用dd命令或专用工具(如Clonezilla)将备份的镜像文件完整写入目标系统盘,覆盖原有数据以实现恢复,操作前务必确认设备名并备份重要数据。

    2025年6月24日
    000
  • Linux如何连接网络?

    Linux系统通过配置网络接口实现联网:使用命令行工具(如ip/ifconfig)或图形界面设置IP地址、子网掩码、网关和DNS;通过DHCP自动获取参数,或手动编辑配置文件(如/etc/network/interfaces);最后启用网络服务并确保路由正确。

    2025年6月18日
    100
  • Linux系统负载如何实时查看?

    在Linux中,使用 top、uptime 或 w 命令查看系统负载(Load Average),显示在输出信息的顶部,负载值表示单位时间内处于可运行或不可中断状态的平均进程数,也可直接读取 /proc/loadavg 文件。

    2025年6月21日
    100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN