上一篇 下一篇 分享链接 返回 返回顶部

密钥登录免密码配置提升运维安全

发布人: 发布时间:3小时前 阅读量:3

引言

在IDC运维中,账号登录安全是基础防线。传统的密码登录存在暴力破解、弱口令泄露等风险。通过SSH密钥对实现免密码登录,能够显著提升运维账号的安全性。本文详细解析密钥登录的工作原理及配置步骤,帮助运维人员快速部署免密码认证。

配置步骤

1. 生成SSH密钥对

在本地客户端(如运维电脑)执行以下命令生成密钥对,推荐使用ED25519算法(更安全、更高效):

ssh-keygen -t ed25519 -C "your_email@example.com"

系统会提示设置密钥存储路径(默认~/.ssh/id_ed25519)并可选设置保护密码(passphrase)。即使私钥泄露,攻击者仍无法直接使用。

2. 上传公钥到服务器

将生成的公钥(id_ed25519.pub)添加到目标服务器的授权密钥文件中:

ssh-copy-id -i ~/.ssh/id_ed25519.pub user@server_ip

该命令会自动将公钥追加到服务端~/.ssh/authorized_keys文件中。若服务器未安装ssh-copy-id,可手动复制公钥内容并执行:

mkdir -p ~/.ssh && chmod 700 ~/.ssh
echo "你的公钥内容" >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys

3. 设置正确的文件权限

密钥相关文件权限不当会导致SSH连接失败或安全风险。务必在服务端检查并设置:

  • ~/.ssh目录权限:700(仅所有者可读、写、执行)
  • ~/.ssh/authorized_keys权限:600(仅所有者可读写)
  • 用户家目录权限不能对其他用户开放写入

4. 验证并测试免密码登录

在客户端执行:

ssh user@server_ip

若配置正确,应直接登录成功,无需输入密码。如果之前设置过passphrase,则仍需输入passphrase(建议使用SSH Agent免重复输入)。

5. 禁用密码登录(可选但强烈推荐)

在服务器上编辑SSH配置文件/etc/ssh/sshd_config

PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM no

保存后重启SSH服务:sudo systemctl restart sshd。注意:先保留一个已测试通过的会话,防止误操作导致无法登录。

安全注意事项

使用强密钥算法与长度

优先选择ED25519RSA-4096位密钥。避免使用1024位以下RSA或DSA算法。

定期轮换密钥

建议每6~12个月更换一次密钥对,尤其是在员工离职或设备丢失后立即更换。

保护私钥安全

私钥文件权限必须设置为600(仅所有者)。使用高强度passphrase加以保护,并启用SSH Agent自动管理。

多因素认证作为补充

对高权限账户,可叠加SSH + 安全密钥(如U2F)TOTP验证码,进一步提升安全性。

结语

通过本文的配置,运维人员可实现基于密钥的免密码登录,有效抵御暴力破解和密码泄露风险。在IDC环境中,坚持密钥认证结合最小权限原则,是构建安全运维体系的基础。

目录结构
全文
企业微信 企业微信
微信公众号 微信公众号
服务热线: 400-790-1688
电子邮箱: 3310008520@qq.com