**如何在 Debian 10 上配置 SSH 及用户权限
1. 测试环境:
• 系统要求:Debian 10 x64 及以上版本。
• 注意:Debian 10 以上的系统可能不稳定。
2. 开放端口:
• 使用命令开放端口 (自选端口):
ufw allow (自选端口)
3. 修改SSH端口:
• 修改 SSH 端口为 22:
nano /etc/ssh/sshd_config
• 修改完后,重启 SSH 服务使变更生效:
systemctl restart ssh
4. 创建新用户并设置密码:
• 新增用户 (用户名):
adduser (用户名)
• 设置密码为 (自选密码)。
• 如果需要更改 (用户名) 用户的密码:
sudo passwd (用户名)
5. 安装和更新 sudo 功能:
• 更新系统并安装 sudo:
apt update && apt install sudo
6. 将用户加入 sudo 权限:
• 使用 visudo 编辑 sudoers 文件:
visudo
• 在 User Privilege Specification 下加入一行:
(用户名) ALL=(ALL) NOPASSWD: ALL
• 如果希望每次使用 sudo 时都需要输入密码,则改为:
(用户名) ALL=(ALL:ALL) ALL
7. 禁用 root 用户 SSH 远程登录:
• 修改 SSH 配置文件:
nano /etc/ssh/sshd_config
• 找到 PermitRootLogin Yes,将其改为 no。
• 重启 SSH 服务使变更生效:
systemctl restart ssh
8. 生成ED25519密钥对:
• 生成算法:ED25519(首选)。
• 公钥保存为:id_ed25519.pub。
• 私钥保存为:id_ed25519,可以给私钥设置密码增加安全性。
• 点击 Save public key 保存公钥为 id_rsa.pub。
• 点击 Save private key 保存私钥为 id_rsa (PuTTY 私钥自带 .ppk 后缀)。
• 复制保存的公钥内容,命名为 authorized_keys,默认保存时会带有 .txt 后缀,上传到 VPS 时需去掉后缀。
9. 上传密钥文件到VPS:
• 在 VPS 中创建 .ssh 文件夹:
mkdir ~/.ssh
• 上传并保存 authorized_keys 文件,设置文件权限为 600:
chmod 600 ~/.ssh/authorized_keys
10. 修改 SSH 配置文件:
• 编辑 SSH 配置文件:
sudo nano /etc/ssh/sshd_config
• 找到 PasswordAuthentication 并将其改为 no。
• 找到 PubkeyAuthentication 并将其改为 yes。
• 保存并退出,重启 SSH 服务:
sudo systemctl restart ssh
11. 处理 sudoers 文件可能的特殊情况:
• 如果 visudo 后只看到 #includedir /etc/sudoers.d 的注释,而没有实际的授权规则,可能是因为系统配置使用了 #includedir 指令。
• 在 /etc/sudoers.d/ 目录下创建一个新的文件 (用户名) 来包含自定义的授权规则:
sudo visudo -f /etc/sudoers.d/(用户名)
• 在新文件中添加授权规则:
(用户名) ALL=(ALL) NOPASSWD: ALL
• 这行规则表示用户 (用户名) 在任何主机上以任何用户的身份执行任何命令时不需要输入密码。
**
评论