云服务器到手先做这件事:SSH 密钥登录设置与三个安全习惯

举报
yd_277074865 发表于 2026/10/27 09:25:32 2026/10/27
【摘要】 买好云服务器、第一次用 SSH 连上去之后,很多人就直接开始装软件了。但我的习惯是先花十分钟把登录这件事处理好:公网上的服务器从第一天就会被自动化程序扫描,弱密码被撞开只是时间问题。这篇记录我自己的设置顺序,都是基础动作,但顺序不能反。 一、先生成密钥对,私钥只留在自己电脑上在本地电脑上生成一对密钥(以常见的 Ed25519 为例):ssh-keygen -t ed25519 -C "my-...

买好云服务器、第一次用 SSH 连上去之后,很多人就直接开始装软件了。但我的习惯是先花十分钟把登录这件事处理好:公网上的服务器从第一天就会被自动化程序扫描,弱密码被撞开只是时间问题。这篇记录我自己的设置顺序,都是基础动作,但顺序不能反。

一、先生成密钥对,私钥只留在自己电脑上

在本地电脑上生成一对密钥(以常见的 Ed25519 为例):

ssh-keygen -t ed25519 -C "my-server"

生成的两个文件里,.pub 是公钥,可以放心上传到服务器;没有扩展名的那个是私钥,只留在本地、不要传给任何人,也不要放进任何网盘或聊天窗口。给私钥再设一个口令短语,等于多加一层锁。

二、把公钥装到服务器上,并先验证能登录

趁密码登录还开着,把公钥写进服务器的授权文件:

ssh-copy-id -i ~/.ssh/id_ed25519.pub user@服务器IP

如果本地没有 ssh-copy-id,也可以手动把公钥内容追加到服务器的 ~/.ssh/authorized_keys。装完先不要关密码登录,开一个新的终端窗口,用密钥试登录一次:

ssh -i ~/.ssh/id_ed25519 user@服务器IP

确认密钥能正常登进去,再做下一步。这一步是整个流程最重要的一道保险:先验证新路能走,再关旧路。

三、确认密钥可用后,再关掉密码登录

编辑服务器上的 /etc/ssh/sshd_config,把这两项改掉:

PasswordAuthentication no
PubkeyAuthentication yes

改完先检查配置语法再重载服务,不要直接断开当前会话:

sudo sshd -t
sudo systemctl reload sshd

sshd -t 没有输出代表语法没问题。如果语法写错就重载,服务起不来又断了会话,是新手最容易把自己锁在门外的情况,所以当前窗口保持连接,另开窗口验证新设置生效后再退出。

四、另外两个顺手养成的习惯

习惯一:安全组只开需要的端口。 SSH 的 22 端口和网站的 80/443 之外,其他端口默认不开。需要临时调试的端口,用完就关,不要想着「先全开着,以后再收」。

习惯二:系统更新别拖。 每隔一段时间执行一次系统更新,把安全补丁装上。服务器长期在线,被利用的往往不是高深的技术,而是几个月没打的已知漏洞。

习惯三(可选):改 SSH 端口只能减少噪音,不能代替密钥。 把 22 改成其他端口,登录日志确实会清净很多,但这只是减少扫描噪音,安全性还是来自密钥本身,不要改完端口就放心继续用弱密码。

小结

顺序总结起来就是四步:本地生成密钥、上传公钥、新窗口验证能登录、最后才关密码登录。核心原则只有一个:永远先验证新路走得通,再关掉旧路。这样设置完,日常登录反而更省事,一条命令就进去,安全也比密码时代扎实得多。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。