在现代Linux系统管理中,使用SSH密钥认证是提升服务器安全性的最佳实践之一。相比传统的密码登录,SSH密钥不仅更安全,还能实现免密登录,极大提高工作效率。本文将详细讲解如何在Ubuntu系统中使用ssh-keygen命令生成SSH密钥对,并完成基本配置。即使你是完全的新手,也能轻松上手!
SSH(Secure Shell)是一种加密的网络协议,用于安全地访问远程服务器。SSH密钥由一对文件组成:一个私钥(private key)和一个公钥(public key)。私钥必须严格保密,保存在本地;公钥则可以上传到远程服务器。当客户端尝试连接时,服务器会用公钥验证私钥持有者的身份,从而实现安全认证。
确保你的Ubuntu系统已安装OpenSSH客户端。大多数Ubuntu发行版默认已包含。如未安装,可运行以下命令:
sudo apt updatesudo apt install openssh-client 打开终端(Terminal),输入以下命令:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com" 参数说明:
-t rsa:指定密钥类型为RSA(目前最常用)。-b 4096:指定密钥长度为4096位(比默认的2048位更安全)。-C "your_email@example.com":添加注释(通常为邮箱),便于识别密钥用途。执行后,系统会提示你选择保存密钥的路径。直接按回车使用默认路径:~/.ssh/id_rsa。
Enter file in which to save the key (/home/your_username/.ssh/id_rsa): 接下来,系统会询问是否设置密码短语(passphrase)。你可以选择设置(更安全)或直接按回车跳过(方便自动化脚本使用)。
生成完成后,进入.ssh目录查看:
ls -l ~/.ssh/ 你会看到两个关键文件:
id_rsa:私钥文件(切勿泄露)id_rsa.pub:公钥文件(可安全分享)假设你要登录的服务器IP为192.168.1.100,用户名为ubuntu,可使用ssh-copy-id命令自动上传公钥:
ssh-copy-id -i ~/.ssh/id_rsa.pub ubuntu@192.168.1.100 系统会提示你输入远程服务器的密码。成功后,下次再通过SSH连接该服务器时,将不再需要密码(除非设置了passphrase)。
~/.ssh目录权限为700,私钥文件权限为600。可通过以下命令修复:chmod 700 ~/.sshchmod 600 ~/.ssh/id_rsa ssh-keygen时指定不同文件名即可。通过本文,你已经掌握了在Ubuntu系统中使用ssh-keygen命令生成SSH密钥的基本方法。这不仅能提升Linux远程登录安全性,还能简化日常运维操作。记住,良好的安全习惯从正确配置SSH公私钥配置开始!
如果你正在学习服务器管理,那么掌握Ubuntu SSH密钥生成和ssh-keygen命令教程中的技巧,将是你迈向专业运维的重要一步。
本文由主机测评网于2025-12-05发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/2025123106.html