423 字
2 分钟
Linux 服务器初始化:创建管理员用户并启用 SSH 密钥登录
新服务器不应长期直接使用 root 账户,也不应把密码作为主要远程登录方式。下面的流程将日常操作切换到拥有 sudo 权限的普通用户,并通过 SSH 密钥认证访问服务器。
避免把自己锁在门外请保持当前 root 会话不断开,在另一个终端确认新用户可以通过密钥登录并运行
sudo后,再修改 SSH 的密码登录策略。
1. 创建日常管理员账户
将 <user> 替换为实际用户名:
sudo useradd --create-home --shell /bin/bash <user>sudo passwd <user>sudo usermod -aG sudo <user>在 Debian/Ubuntu 上,可用以下命令验证该用户是否拥有 sudo 权限:
su - <user>sudo -v2. 在本地生成 SSH 密钥
如果还没有可用密钥,在本地机器执行:
私钥应始终只保留在你的受控设备或密钥管理工具中;不要上传、粘贴到聊天记录,也不要提交到仓库。
3. 部署并验证公钥
使用密码仅完成这一次公钥部署:
ssh-copy-id <user>@<server-host>ssh <user>@<server-host>无法使用 ssh-copy-id 时,可将本地 ~/.ssh/id_ed25519.pub 的内容追加到服务器用户的 ~/.ssh/authorized_keys,并确保权限正确:
chmod 700 ~/.sshchmod 600 ~/.ssh/authorized_keys4. 验证后收紧 SSH 策略
确认密钥登录正常后,在 /etc/ssh/sshd_config.d/hardening.conf(或发行版对应的 sshd 配置文件)加入:
PermitRootLogin noPasswordAuthentication noPubkeyAuthentication yes检查配置并平滑重载服务:
sudo sshd -tsudo systemctl reload ssh恢复方式在关闭密码认证前,确保至少两台受控设备保存了可用私钥,或确认云厂商控制台能够提供带外恢复入口。
Linux 服务器初始化:创建管理员用户并启用 SSH 密钥登录
https://blog.xqcherry.top/posts/operations/linux-user-and-ssh-access/