SSH公钥放在服务器哪个目录?,服务器SSH公钥存放路径设置

SSH公钥在服务器上的标准存放目录是用户家目录下的~/.ssh/authorized_keys文件,这是OpenSSH服务默认读取的认证文件路径。无论你是管理自己的云服务器还是配置公司内网机器,只要把公钥内容追加到这个文件并设置好权限,就能实现免密登录,这篇文章会把这个目录的来龙去脉、权限坑位和实操命令一次说清楚。

ssh公钥服务器哪个目录?标准路径与文件作用

很多刚接触Linux的朋友在配置免密登录时,最常问的就是“公钥到底该放哪”,答案其实很明确:对于OpenSSH服务,公钥放在目标服务器上你想要登录的那个用户的~/.ssh/authorized_keys文件里,这里的代表该用户的家目录,比如root用户就是/root/.ssh/authorized_keys,普通用户ubuntu就是/home/ubuntu/.ssh/authorized_keys。

绝对路径与相对路径的区别

  • 相对路径:~/.ssh/authorized_keys,适合在切换用户后使用。
  • 绝对路径:/home/用户名/.ssh/authorized_keys,适合在写脚本或配置工具时明确指定。

在绝大多数Linux发行版(CentOS、Ubuntu、Debian)中,这个路径是硬编码在/etc/ssh/sshd_config里的,对应参数为AuthorizedKeysFile .ssh/authorized_keys,如果你没有手动改过这个配置,那么默认就是上述目录。

不同用户下的公钥存放位置

  • root用户:/root/.ssh/authorized_keys
  • 普通用户zhangsan:/home/zhangsan/.ssh/authorized_keys
  • 使用sudo切换用户后,路径会随之变化,这一点在写自动化脚本时尤其容易踩坑。

行业共识认为,每个用户独立管理自己的公钥文件

SSH公钥放在服务器哪个目录?,服务器SSH公钥存放路径设置

是最安全的做法,不要把所有人的公钥都塞到root的authorized_keys里,否则一旦某个人的私钥泄露,整个服务器的最高权限就拱手让人了。

酷番云服务器ssh公钥配置路径与本地密钥生成

如果你刚在酷番云、简米云或华为云买了一台新服务器,第一件事应该是生成密钥对而不是设密码登录,本地生成公钥的命令是:

ssh-keygen -t rsa -b 4096 -C "你的邮箱或备注"

执行后,公钥会生成在本地~/.ssh/id_rsa.pub,私钥是~/.ssh/id_rsa。私钥永远不要传给任何服务器,它只留在本地电脑或密码管理器里,服务器上需要的是公钥内容。

使用ssh-copy-id一键上传公钥

最简单的做法是使用ssh-copy-id工具,它会自动把本地公钥追加到服务器的正确目录:

ssh-copy-id -i ~/.ssh/id_rsa.pub 用户名@服务器IP

这个命令会要求你输入一次服务器密码,之后就把公钥内容追加到了~/.ssh/authorized_keys末尾,并自动设置好目录和文件权限,如果你的系统没装这个命令,用apt install openssh-client或yum install openssh-clients即可。

手动创建authorized_keys的完整步骤

有些特殊场景(比如服务器只开密钥登录,你只能用VNC控制台)下需要手动操作,步骤如下:

  1. 登录服务器,切换到目标用户:su - 用户名
  2. 创建.ssh目录:mkdir -p ~/.ssh
  3. 设置目录权限为700:chmod 700 ~/.ssh
  4. 创建authorized_keys文件:touch ~/.ssh/authorized_keys
  5. 设置文件权限为600:chmod 600 ~/.ssh/authorized_keys

    SSH公钥放在服务器哪个目录?,服务器SSH公钥存放路径设置

  6. 将本地公钥内容粘贴进去:echo "ssh-rsa AAAAB3NzaC1yc2E..." >> ~/.ssh/authorized_keys

注意这里用的是>>追加而非>覆盖,否则会清掉之前已有的公钥,如果公钥中有空格或特殊字符,一定要用双引号包裹整段内容。

ssh公钥配置权限问题与私钥混淆场景

很多用户明明把公钥放对了目录,却登录失败,原因十有八九是权限太开放。SSH对权限非常敏感,目录或文件如果允许其他用户写入,服务端会直接忽略这个公钥。

权限设置不当导致的登录失败

  • 家目录权限不能是777,建议755或700
  • .ssh目录权限必须是700
  • authorized_keys文件权限必须是600或644,但不能是666

检查权限的命令:

ls -ld ~ ~/.ssh ~/.ssh/authorized_keys

如果发现权限不对,立即修复:

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

ssh公钥和私钥有什么区别?别搞反了

  • 公钥(.pub:可以公开,放在服务器上,相当于锁。
  • 私钥(无后缀):必须保密,留在本地,相当于钥匙。

业内专家指出,把私钥当作公钥上传是新手最常见的错误,如果你在authorized_keys里看到的是-----BEGIN RSA PRIVATE KEY-----开头的私钥内容,SSH服务会直接报错Permission denied (publickey)。

多密钥管理与authorized_keys文件格式

当你有多个设备(公司电脑、个人笔记本、手机)需要登录同一台服务器时,可以把每个设备的公钥都追加到

SSH公钥放在服务器哪个目录?,服务器SSH公钥存放路径设置

authorized_keys文件里,每行一个公钥,不要合并成一行。

多密钥文件如何切换

本地多个密钥对时,通过ssh -i ~/.ssh/某把私钥 用户名@服务器IP指定私钥,或者编辑~/.ssh/config配置文件,为不同服务器指定不同密钥:

Host myserver
    HostName 192.168.1.100
    User root
    IdentityFile ~/.ssh/company_rsa

格式与注释规范

每行公钥的格式为:ssh-rsa AAAA... 注释,注释部分一般写设备名或邮箱,方便日后识别,如果你要移除某台设备的访问权,直接删除对应行即可。

Q&A:ssh公钥服务器哪个目录?常见疑问解答

问:我把公钥放到了/etc/ssh/authorized_keys,为什么登录失败?

答:/etc/ssh/目录是SSH服务配置和主机密钥的存放位置,不是用户公钥目录,除非你在sshd_config里把AuthorizedKeysFile改成绝对路径,否则系统不会读取这个位置,正确路径是用户家目录下的~/.ssh/authorized_keys。

问:Windows服务器也能用这个目录吗?

答:Windows OpenSSH服务的公钥存放路径略有不同,通常在C:Users用户名.sshauthorized_keys,如果是Linux服务器上的WSL环境,则遵循Linux路径规则,但大多数生产服务器是Linux系统,所以~/.ssh/authorized_keys是通用答案。

问:服务器上有多个人需要登录,能否共用一个authorized_keys文件?

答:可以,但强烈不建议,正确的做法是每个用户单独维护自己的~/.ssh/authorized_keys文件,登录时通过ssh 用户名@IP指定身份,共用一个文件会导致权限边界模糊,且无法单独审计谁用了哪把密钥。

图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/753226.html

赞 (0)
上一篇 2026年8月30日 22:46
下一篇 2026年8月30日 22:51

相关推荐

  • 北京外包公司网站开发,选择合适外包服务商的关键考量是什么?

    随着数字经济的快速发展,网站开发已成为企业数字化转型的核心环节,北京作为中国的政治、文化与经济中心,拥有众多优秀的外包服务提供商,其网站开发服务凭借技术实力、资源整合能力及本地化优势,在国内外市场占据重要地位,北京外包公司网站开发不仅满足企业对网站功能的需求,更注重用户体验、性能优化及安全性,为企业提供从需求分……

    2026年1月9日
    02950
  • 东南亚哪个服务器人多,东南亚游戏服务器哪个区最火爆

    东南亚哪个服务器人多?答案是新加坡服务器人数最多,这一结论基于其区域网络枢纽地位和云服务节点密度,是目前绝大多数跨境业务的首选,很多朋友做东南亚市场,第一步就卡在选服务器上,市面上的说法五花八门,有人讲印尼用户多,有人讲越南增长快,听起来都有道理,但真正落到“同时在线人数”和“网络延迟”这两个硬指标上,答案会变……

    2026年9月17日
    0624
    • 服务器间歇性无响应是什么原因?如何排查解决?

      根源分析、排查逻辑与解决方案服务器间歇性无响应是IT运维中常见的复杂问题,指服务器在特定场景下(如高并发时段、特定操作触发时)出现短暂无响应、延迟或服务中断,而非持续性的宕机,这类问题对业务连续性、用户体验和系统稳定性构成直接威胁,需结合多维度因素深入排查与解决,常见原因分析:从硬件到软件的多维溯源服务器间歇性……

      2026年1月10日
      020
  • 云技术和服务器哪个好,云服务器和物理服务器有什么区别?

    云技术还是传统服务器,没有绝对的好坏,只有最适合的场景:需要快速弹性、低成本起步、不想管机房,选云服务器;数据必须物理隔离、追求极致性能、有合规硬性要求,上物理机,云技术和物理服务器,到底差在哪?云服务器和传统服务器到底有什么区别?说人话:云服务器是虚拟化技术将物理服务器集群切分出来的“计算单元”,你买到的是一……

    2026年8月18日
    01043
  • 拼多多用哪个服务器好,电商服务器怎么选不踩坑

    拼多多用哪个服务器好?先看结论拼多多店铺服务器选择,核心答案就一句话:中小卖家首选阿里云或腾讯云的轻量应用服务器,业务增长后无缝升级到ECS或CVM云服务器,预算有限用华为云入门款兜底,但千万别碰低价虚拟主机做主力店铺,这个结论源自一个很现实的行业共识:拼多多平台的流量机制决定了店铺活动期流量波动极大,且订单数……

    2026年9月9日
    0981

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

评论列表(3条)

  • 小花4568的头像
    小花4568 2026年8月31日 08:57

    这篇文章写得非常好,内容丰富,观点清晰,让我受益匪浅。特别是关于用户名的部分,分析得很到位,给了我很多新的启发和思考。感谢作者的精心创作和分享,期待看到更多这样高质量的内容!

  • 月马1835的头像
    月马1835 2026年8月31日 08:59

    读了这篇文章,我深有感触。作者对用户名的理解非常深刻,论述也很有逻辑性。内容既有理论深度,又有实践指导意义,确实是一篇值得细细品味的好文章。希望作者能继续创作更多优秀的作品!

  • luckycool9的头像
    luckycool9 2026年8月31日 08:59

    这篇文章的内容非常有价值,我从中学习到了很多新的知识和观点。作者的写作风格简洁明了,却又不失深度,让人读起来很舒服。特别是用户名部分,给了我很多新的思路。感谢分享这么好的内容!