SSH 免密登录配置入门:三分钟告别重复输密码
【摘要】 ssh-keygen 生成 ed25519 密钥对、ssh-copy-id 上传公钥、config 别名管理多服务器三步配好 SSH 免密登录,附私钥权限与关闭密码登录的安全提醒。
每天要 SSH 到服务器好几次,每次都输一遍密码?花三分钟配好免密登录,之后连接只需一条命令。本文介绍最通用的公钥认证方案,适用于所有 Linux 服务器和云主机。
一、生成密钥对
ssh-keygen -t ed25519 -C "your_email@example.com"
一路回车即可。会在 ~/.ssh 下生成两个文件:id_ed25519 是私钥(绝不能外泄),id_ed25519.pub 是公钥(要放到服务器上)。
二、把公钥传到服务器
ssh-copy-id user@your-server-ip
输最后一次密码,之后 ssh user@your-server-ip 就不再需要密码了。Windows 用户没有 ssh-copy-id 的话,手动把公钥内容追加到服务器的 ~/.ssh/authorized_keys 文件里也可以。
三、用 config 管理多台服务器
服务器多了以后,在 ~/.ssh/config 里给每台机器起别名:
Host web
HostName your-server-ip
User root
Port 22
IdentityFile ~/.ssh/id_ed25519
之后连接只需输入 ssh web,连端口和用户名都不用记。
四、安全提醒
- 私钥文件权限必须是 600,权限过宽会被 SSH 拒绝使用;
- 配好免密后,建议在服务器上关闭密码登录(PasswordAuthentication no),安全性大幅提升;
- 私钥千万不要提交到代码仓库。
结语:免密登录是运维效率的分水岭。配上 config 别名之后,管理十几台服务器也能像访问本地目录一样轻松。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)