1. 从零开始:为什么SSH密钥比密码更安全?
如果你刚接触云服务器,可能觉得用密码登录挺方便,输入IP、用户名、密码就完事了。但作为一个在运维和开发领域摸爬滚打了十来年的老手,我必须告诉你,密码登录是新手阶段最容易踩的坑。我见过太多因为弱密码或者密码泄露,导致服务器被“挖矿”程序入侵,CPU直接跑满,账单瞬间飙升的例子。尤其是在公网环境下,你的服务器端口就像一扇门,每天都有无数的自动化脚本在尝试用各种常见密码“敲门”。
那SSH密钥登录到底强在哪?简单来说,它用一对非对称加密的密钥文件代替了密码。你可以把它想象成一把非常复杂的“物理锁”和一把唯一的“钥匙”。公钥(锁)放在服务器上,私钥(钥匙)放在你自己的电脑里。登录时,服务器用你本地的私钥去“开锁”,匹配上了才能进去。这比单纯的密码验证安全好几个数量级,因为私钥文件本身很长、很复杂,几乎无法被暴力破解。而且,你还可以给私钥再加一道“门禁”——设置一个密码短语,这样即使私钥文件不小心丢了,别人也用不了。
在腾讯云上使用SSH密钥,还有一个额外的好处:管理方便。你可以在控制台统一生成和管理密钥对,然后一键绑定到多台服务器上。以后登录任何一台绑定了密钥的服务器,都用同一个私钥文件,再也不用记一堆不同的密码了。这对于管理多个项目、多台服务器的开发者来说,简直是福音。接下来,我就手把手带你走一遍从生成密钥到成功连接的全过程,保证你跟着做一遍就能彻底掌握。
2. 核心第一步:在腾讯云生成并绑定你的SSH密钥
很多教程会先让你在本地电脑生成密钥,然后再把公钥上传到服务器。这个流程没错,但对于腾讯云用户,我强烈推荐直接使用腾讯云控制台提供的密钥对创建功能。为什么呢?因为它更“傻瓜化”,而且避免了新手在复制粘贴公钥时可能出现的格式错误或权限问题。
2.1 在控制台创建密钥对
首先,登录你的腾讯云控制台,找到“云服务器” -> “SSH密钥”这个菜单。点击“创建密钥”,你会看到两个选项:“创建新密钥对”和“使用已有公钥”。对于第一次使用,我们直接选“创建新密钥对”。
这里有个关键点:密钥对名称。我建议你起一个有意义的名字,比如 my-macbook-pro-2024 或者 project-a-server-key。这样以后密钥多了,你一眼就知道这个密钥是配给哪台设备或哪个项目的。创建时,腾讯云会立刻让你下载一个后缀名为 .pem 的私钥文件。这个文件下载只有一次机会,务必立刻、马上把它保存到电脑上一个安全且你不会忘记的位置!比如,我习惯在用户目录下创建一个 ~/.ssh/tencent/ 的文件夹,专门存放云服务商的私钥。如果你不小心关掉了下载窗口,对不起,这个私钥就再也找不回来了,你只能删掉这个密钥对重新创建。
2.2 将密钥绑定到你的云服务器
下载好私钥后,回到SSH密钥列表,找到你刚创建的密钥,点击“绑定实例”。在弹出的窗口中,选择你想要用密钥登录的那台云服务器。你可以一次性绑定多台,非常方便。绑定操作是即时生效的,但这只是完成了“配钥匙”的第一步——相当于你把“锁”(公钥)装到了服务器的大门上,但服务器内部的SSH服务还没配置好去识别这把锁。所以,绑定后我们还需要登录到服务器内部去做一些配置。别担心,这次登录可能是你最后一次使用密码了。
3. 服务器端配置:让SSH服务认识你的“钥匙”
现在,我们需要进入服务器内部,告诉它的SSH服务:“嘿,以后认这把钥匙,别认密码了。” 你需要通过其他方式登录服务器,比如腾讯云提供的VNC登录(在控制台实例页面点击“登录”),或者如果你之前设置了密码,暂时再用一次密码登录。
3.1 放置公钥文件
登录成功后,第一件事就是检查并放置公钥。在Linux系统中,SSH公钥的“家”位于用户目录下的 .ssh/authorized_keys 文件里。我们按顺序操作:


879

被折叠的 条评论
为什么被折叠?



