1.生成密钥对;2.上传公钥至服务器;3.关闭密码登录等安全加固措施;4.配置多密钥管理。要使用密钥登录linux服务器,首先在本地运行ssh-keygen生成公钥和私钥,接着用ssh-copy-id或手动方式将公钥添加到服务器的authorized_keys文件,成功登录后编辑sshd_config关闭passwordauthentication等选项以提升安全性,最后可通过配置~/.ssh/config文件实现多个密钥的自动匹配管理,确保权限设置正确并参考日志排查问题。

想用密钥登录Linux服务器,主要是为了安全又方便。密码容易被猜,密钥更难破解,还能免去每次输密码的麻烦。只要设置一次,之后就能自动登录。

生成密钥对:先有钥匙才能开门
你要在本地电脑上生成一对密钥——一个公钥、一个私钥。公钥可以给别人,私钥必须自己留着,不能泄露。

运行下面这条命令就可以:
ssh-keygen -t rsa -b 4096
系统会让你选保存路径,默认是 ~/.ssh/id_rsa,直接回车就行。然后会提示你输入密码(passphrase),这个不是必须的,但加上会更安全。

完成后会在 .ssh 目录下看到两个文件:id_rsa 是私钥,id_rsa.pub 是公钥。
小贴士:如果你已经有密钥了,可以跳过这步。比如你在 GitHub 或其他服务里用过的 SSH 密钥,也可以复用。
把公钥放到服务器上:让门锁认识你的钥匙
接下来要把你的公钥上传到服务器上,这样服务器就知道允许哪些密钥登录。
最简单的方法是使用 ssh-copy-id 命令:
ssh-copy-id user@your_server_ip
它会把本地的公钥添加到服务器上的 ~/.ssh/authorized_keys 文件里。
如果没有这个命令,也可以手动复制内容,粘贴到服务器上的对应文件中:
cat ~/.ssh/id_rsa.pub | ssh user@your_server_ip "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
执行完后测试一下能不能免密登录:
免费语音克隆
这是一个提供免费语音克隆服务的平台,用户只需上传或录制一段 5 秒以上的清晰语音样本,平台即可生成与用户声音高度一致的 AI 语音克隆。
95 查看详情
ssh user@your_server_ip
如果没让你输密码就进去了,说明成功了。
安全加固:别让别人随便拿钥匙开门
虽然现在可以用密钥登录了,但默认的SSH配置还允许密码登录,这意味着黑客可能还在尝试暴力破解。所以最好关掉密码登录。
编辑服务器上的SSH配置文件(通常在 /etc/ssh/sshd_config),找到这几个选项并改成这样:
PasswordAuthentication no —— 关闭密码登录PermitRootLogin no —— 不允许root直接登录ChallengeResponseAuthentication no —— 关闭交互式认证UsePAM no —— 如果不需要PAM模块的话可以关掉
改完重启SSH服务:
sudo systemctl restart sshd
注意:改之前确保你能用密钥登录,否则可能把自己关在外面了。
多个密钥怎么管理:一把钥匙开一扇门
有时候你会有多个服务器或多个账号,每个用不同的密钥。这时候可以用 ~/.ssh/config 文件来指定不同主机使用的密钥。
比如这样写:
Host server1 HostName 192.168.1.10 User user1 IdentityFile ~/.ssh/id_rsa_server1Host server2 HostName 192.168.1.11 User user2 IdentityFile ~/.ssh/id_rsa_server2
这样你只需要敲 ssh server1,系统就会自动用对应的密钥登录。
基本上就这些。整个过程不复杂,但有几个关键点容易忽略,比如权限问题、目录结构是否正确、密钥有没有加载等。遇到问题时可以看日志文件 /var/log/auth.log,里面会有线索。
以上就是如何配置Linux用户密钥登录 SSH免密登录安全设置的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/457808.html
微信扫一扫
支付宝扫一扫




















