Debian/Ubuntu 中“root 用户登录限制”通常有几种情况,你可以按对应方式解除。
1. 允许 root 用户登录系统(最常见)
很多 Debian 系统默认:
-
root 没有密码
-
禁止直接登录
先给 root 设置密码:
sudo passwd root
输入两次新密码即可。
然后就可以:
su -
切换 root。
2. 解除 SSH 禁止 root 登录
如果你是远程 SSH 登录,需要修改 SSH 配置。
编辑:
sudo nano /etc/ssh/sshd_config
找到:
PermitRootLogin prohibit-password
或者:
PermitRootLogin no
改成:
PermitRootLogin yes
同时建议检查:
PasswordAuthentication yes
保存后重启 SSH:
sudo systemctl restart ssh
或者:
sudo systemctl restart sshd
然后即可:
ssh root@服务器IP
3. Debian 默认 root 被锁定
有些 Debian 安装时只创建普通用户,root 实际被锁定。
查看状态:
sudo passwd -S root
如果看到:
root L ...
说明被锁定。
解锁:
sudo passwd -u root
然后重新设置密码:
sudo passwd root
4. 图形界面禁止 root 登录
GNOME/KDE 通常默认禁止 GUI root 登录。
一般不推荐开启。
如果必须开启(例如 lightdm):
编辑:
sudo nano /etc/lightdm/lightdm.conf
添加:
greeter-show-manual-login=true
allow-guest=false
但很多桌面环境仍会限制 root GUI 登录。
5. 云服务器无法 root 登录
很多 VPS 厂商(如 AWS、GCP):
-
禁止密码 root 登录
-
只允许 SSH Key
这种情况需要:
-
修改云平台安全策略
-
或使用普通用户 + sudo
推荐安全配置
通常建议:
普通用户登录
→ sudo 提权
而不是长期直接使用 root。
因为:
-
root 没有权限隔离
-
容易误删系统
-
SSH 爆破风险更高
快速开启 root SSH 登录(完整步骤)
sudo passwd root
sudo nano /etc/ssh/sshd_config
修改:
PermitRootLogin yes
PasswordAuthentication yes
然后:
sudo systemctl restart ssh
完成。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
