
在很多运维场景中,需要使用 root 用户远程登录 Debian 系统。本文提供从安装 SSH 到安全开启 root 登录的完整文字教程,适用于 Debian 9、10、11、12 及以后版本。
1️⃣ 切换到 root 用户
如果当前是普通用户,需要先切换到 root 用户:
su
# 输入 root 密码
或者使用 sudo 提权(无需完全切换):
sudo -i
2️⃣ 设置 root 用户密码
确保 root 用户有密码,否则无法使用密码登录:
passwd root
系统会提示输入并确认新密码。建议使用复杂密码,提高安全性。
3️⃣ 安装 SSH 服务
在 Debian 系统上安装 OpenSSH Server:
apt update
apt install -y openssh-server
安装完成后,SSH 服务默认会自动启动。查看状态:
systemctl status ssh
如未启动,可手动启用:
systemctl enable --now ssh
4️⃣ 修改 SSH 配置允许 root 登录
编辑 SSH 配置文件:
vi /etc/ssh/sshd_config
找到以下行并修改:
#PermitRootLogin prohibit-password
#PasswordAuthentication yes
改为:
PermitRootLogin yes
PasswordAuthentication yes
示例完整配置片段:
#LoginGraceTime 2m
PermitRootLogin yes
PasswordAuthentication yes
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10
vi 编辑技巧
按
i进入编辑模式删除
#或修改值按
Esc退出编辑模式输入
:wq保存并退出
5️⃣ 重启 SSH 服务
修改配置后,重启 SSH 使其生效:
systemctl restart ssh
确认服务正在运行:
systemctl status ssh
6️⃣ 测试 root 用户远程登录
在其他机器上使用 SSH 登录:
ssh root@服务器IP
输入 root 密码,如果登录成功,说明配置正确。
7️⃣ 安全性优化(强烈建议)
开启 root 登录存在安全风险,建议采取以下措施:
限制登录 IP
ufw allow from 你的IP to any port 22
ufw enable
使用 SSH Key 登录(推荐)
# 本地生成密钥
ssh-keygen -t ed25519
# 上传公钥到服务器
ssh-copy-id root@服务器IP
登录时无需密码,更安全。
修改默认 SSH 端口
# /etc/ssh/sshd_config
Port 2222
修改后重启 SSH 服务。
禁止空密码登录
PermitEmptyPasswords no
8️⃣ 总结
本教程覆盖 Debian 全系列,从安装 SSH、开启 root 登录到安全优化。
对于生产环境,建议使用 SSH Key 登录、限制 IP、修改端口,降低被攻击风险。
教程操作简单易懂,适合运维新手和有经验的用户参考。
评论区