编辑
2025-06-06
默认分类
00

目录

Debian 11 新建普通用户并允许远程登录(同时禁用 root 远程登录)
目标
步骤 1:禁止 root 远程登录
步骤 2:新建普通用户
2.1 创建用户
2.2 赋予 sudo 权限
2.3 验证用户是否在 sudo 组
步骤 3:允许新用户 SSH 登录
3.1 确保 SSH 允许密码登录(可选)
3.2 重启 SSH 服务
步骤 4:测试远程登录
4.1 从本地机器测试登录
4.2 测试 sudo 权限
步骤 5(可选):改用 SSH 密钥登录(更安全)
5.1 生成密钥对(本地机器)
5.2 上传公钥到服务器
5.3 禁用密码登录(提升安全性)
总结

Debian 11 新建普通用户并允许远程登录(同时禁用 root 远程登录)

目标

  1. 禁止 root 远程 SSH 登录(提升安全性)。
  2. 新建普通用户,并赋予 sudo 权限(以便需要时切换 root)。
  3. 允许该用户远程 SSH 登录

步骤 1:禁止 root 远程登录

修改 /etc/ssh/sshd_config

bash
sudo nano /etc/ssh/sshd_config

找到 PermitRootLogin 并修改为:

PermitRootLogin no

保存(Ctrl+O)并退出(Ctrl+X)。

重启 SSH 服务

bash
sudo systemctl restart sshd

验证 root 是否无法 SSH 登录:

bash
ssh root@your_server_ip

(应该会提示 Permission denied


步骤 2:新建普通用户

2.1 创建用户

bash
sudo adduser username

(替换 username 为你想要的用户名,如 user1
按提示设置密码和其他信息(可留空)。

2.2 赋予 sudo 权限

bash
sudo usermod -aG sudo username

-aG 表示追加到 sudo 组,不影响其他组)

2.3 验证用户是否在 sudo 组

bash
groups username

应显示 username : username sudo


步骤 3:允许新用户 SSH 登录

3.1 确保 SSH 允许密码登录(可选)

如果使用密码登录(而非密钥),检查 /etc/ssh/sshd_config

bash
sudo nano /etc/ssh/sshd_config

确认以下配置:

PasswordAuthentication yes

(如果已改为 no,需改回 yes 或使用 SSH 密钥登录)

3.2 重启 SSH 服务

bash
sudo systemctl restart sshd

步骤 4:测试远程登录

4.1 从本地机器测试登录

bash
ssh username@your_server_ip

输入密码后应成功登录。

4.2 测试 sudo 权限

bash
sudo -l

或执行:

bash
sudo whoami

应返回 root,并提示输入当前用户密码。


步骤 5(可选):改用 SSH 密钥登录(更安全)

5.1 生成密钥对(本地机器)

bash
ssh-keygen -t ed25519

(默认保存在 ~/.ssh/id_ed25519~/.ssh/id_ed25519.pub

5.2 上传公钥到服务器

bash
ssh-copy-id username@your_server_ip

或手动复制:

bash
cat ~/.ssh/id_ed25519.pub | ssh username@your_server_ip "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

5.3 禁用密码登录(提升安全性)

修改 /etc/ssh/sshd_config

PasswordAuthentication no

重启 SSH:

bash
sudo systemctl restart sshd

总结

操作命令
禁用 root 登录PermitRootLogin no + sudo systemctl restart sshd
创建用户sudo adduser username
赋予 sudo 权限sudo usermod -aG sudo username
允许 SSH 登录确保 PasswordAuthentication yes 或配置 SSH 密钥
测试登录ssh username@server_ip

安全建议:

  • 优先使用 SSH 密钥登录,禁用密码认证(PasswordAuthentication no)。
  • 仅向必要用户授予 sudo 权限。
  • 定期审查 /etc/sudoers/etc/ssh/sshd_config

这样既保证了安全性,又允许通过普通用户管理服务器。

本文作者:任浪漫

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!