如何正确配置服务器SSH私钥登录,具体步骤有哪些

服务器SSH登录配置的核心结论是:用SSH私钥替代密码登录,是提升服务器安全系数最直接、最有效的手段,配置过程不超过十分钟,一次配置长期受益。

为什么服务器ssh登录配置要选私钥而非密码

很多朋友刚开始接触云服务器时,习惯用ssh root@IP然后输入密码的方式登录,这种方式在个人测试环境里没什么问题,但一旦服务器暴露在公网,面临的扫描压力远超想象。

10分钟手把手教你通过SSH,使用密钥/账号远程登录Linux服务器(Windows/macOS)
加载中
10分钟手把手教你通过SSH,使用密钥/账号远程登录Linux服务器(Windows/macOS)

服务器ssh登录密码验证的三个痛点

  • 暴力破解风险高:公网服务器每时每刻都在被自动化脚本扫描,尝试常见用户名和弱密码。
  • 密码管理成本大:多台服务器使用不同密码容易忘,用相同密码又等于一锅端。
  • 无法精细控制权限:密码一旦泄露,等同于把服务器root权限交给了对方。

私钥登录的核心优势对比

SSH私钥登录采用非对称加密机制,私钥留在本地,公钥放在服务器端,服务器验证登录时,通过签名挑战来确认持有私钥的用户身份。

对比维度 密码登录 私钥登录
抗暴力破解 较弱,依赖密码强度 强,理论上不可穷举
泄露风险 密码可被钓鱼或撞库 私钥文件本地保存
多机管理 逐台记忆密码 同一私钥配多个公钥
审计追溯 弱 可配合证书做细粒度溯源

业内专家指出,生产环境服务器强制关闭密码登录、只保留密钥认证,已经是安全基线中的标准动作,多数云厂商的安全组默认规则也会建议用户优先使用密钥对。

ssh密钥对登录服务器:从生成到落地的完整步骤

下面这套流程以Linux/macOS客户端为例,Windows用户使用PowerShell或WSL效果一致。

云服务器ssh登录配置前的准备清单

如何正确配置服务器SSH私钥登录,具体步骤有哪些

  • 一台IP可达的Linux服务器(如Ubuntu 22.04、CentOS 7+)。
  • 本地终端工具(macOS/Linux自带终端,Windows推荐PowerShell 7)。
  • 当前可用的密码登录方式,或云控制台的VNC应急入口。

生成密钥对的具体命令

在本地终端执行:

ssh-keygen -t ed25519 -C "your_email@example.com"

ed25519是目前性能和安全性均衡较好的算法,若需要兼容老旧系统,使用rsa -b 4096。

一路上会询问保存路径和口令(passphrase),建议直接回车存到默认位置~/.ssh/id_ed25519,并设置一个额外的passphrase保护私钥文件,即使私钥泄露,没有passphrase也无法使用。

授权公钥到服务器的三连操作

首先生成公钥内容:

cat ~/.ssh/id_ed25519.pub

复制输出的整行字符串。

然后登录服务器(此时仍用密码),在服务器端执行:

mkdir -p ~/.ssh
chmod 700 ~/.ssh
echo "粘贴你刚才复制的公钥内容" >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

第三步,测试免密登录验证,在本地执行:

ssh root@你的服务器IP

如果直接进入服务器,说明公钥已经生效。此时回到服务器端,编辑/etc/ssh/sshd_config,将PasswordAuthentication改为no,然后重启SSH服务:

sudo systemctl restart sshd

后续登录彻底告别密码,记得在修改配置前保持当前会话不退出,避免配置错误导致自己锁在门外。

客户端登录与别名加速

多台服务器时,在本地~/.ssh/config中添加配置:

Host my-server
    HostName 203.0.113.5
    User root
    IdentityFile ~/.ssh/id_ed25519

以后直接执行ssh my-server即可登录,这是日常管理中最省心的远程服务器SSH登录配置方式之一。

如何正确配置服务器SSH私钥登录,具体步骤有哪些

ssh私钥登录失败怎么办:高频错误对照排查

配置过程中出现意外在所难免,以下几个场景占据了大多数ssh私钥登录失败怎么办的搜索需求。

配置后仍提示密码的权限问题

确认服务器端目录和文件的权限是否正确:

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

权限过宽(如authorized_keys为644)会导致SSH服务端拒绝信任该文件,同时检查客户端私钥权限:

chmod 600 ~/.ssh/id_ed25519

另外一个常见原因是sshd_config中指定了AuthorizedKeysFile路径,确保和实际文件路径一致,执行sudo grep -i authorizedkeysfile /etc/ssh/sshd_config查看。

私钥丢失与安全加固

私钥丢失不像密码找回那么简单,唯一的补救措施是使用云控制台的VNC登录服务器,重新写入新的公钥,所以生成密钥后,立刻将私钥备份到安全位置(如密码管理器),或复制一份到加密U盘。

安全加固层面,建议做两件事:

  • 修改SSH默认端口(如改为2299),减少扫描类攻击的噪音。
  • 在sshd_config中设置PermitRootLogin prohibit-password,保证root只能通过密钥登录。

对于需要异地登录的场景,可以在authorized_keys中为单个公钥加前缀限制来源IP,这个技巧对带公网IP的linux服务器ssh登录配置尤为实用。

私钥日常维护与多设备同步策略

当你习惯了密钥登录,接下来要考虑的是多设备使用体验,笔记本、办公室台式机、手机termius等工具,都需要访问同一台服务器。

多设备同步的主流做法

  • 不同设备生成不同密钥对:将各设备的公钥都追加到服务器authorized_keys中,好处是某一设备丢失可单独吊销,坏处是公钥文件管理需要条理。
  • 私钥文件跨设备拷贝

    如何正确配置服务器SSH私钥登录,具体步骤有哪些

    :将主私钥拷贝到其他设备,注意私钥本身用passphrase保护,且传输过程必须加密(如通过自建的WireGuard隧道)。

行业共识认为,按设备生成独立密钥对更安全,设备遗失时只需要移除对应那一行的公钥内容,无伤大雅。

定期轮换与审计

建议每半年到一年轮换一次密钥对,操作流程很简单:生成新密钥对,更新服务器公钥,确认新私钥登录成功后,再删除旧公钥,不要直接删除还没验证过的公钥,给自己留后路。

审计方面,查看服务器登录记录:

journalctl -u ssh --since today

或检查/var/log/auth.log中的Accepted publickey行,能清晰看到哪台设备在什么时间通过哪个公钥登录过。

常见疑问快速解答

服务器SSH登录配置中,id_rsa和id_ed25519选哪个更好?

ed25519密钥更短、生成速度快、安全性不低于RSA 4096,唯一限制是需要OpenSSH 6.5以上版本,目前主流Linux发行版和云厂商镜像都已完美支持,不需要兼容十年前的老系统时,首选ed25519。

修改端口后ssh登录命令怎么写?

ssh -p 2299 root@服务器IP

注意修改端口后,务必在云控制台安全组同步放行新端口,否则流量进不去,和没改一样。

服务器密码登录已经关闭,如何再添加新用户的公钥?

使用已有私钥登录服务器后,为新用户创建.ssh目录,写入公钥并配置权限,然后执行:

usermod -aG sudo newuser

没给新用户配sudo权限时,公钥写了也只能以普通用户身份操作。

服务器SSH登录配置这件事,本质上是把身份凭证从可猜测的字符串,升级为不可复制的数学签名,密码登录带来的便利性在安全意识面前不值一提,一次性花十几分钟完成私钥部署,之后每次登录都少一分风险,这笔账怎么算都划算。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/580883.html

赞 (0)
采集失败提示collector未安装如何解决,是什么原因
上一篇 2026年8月18日 20:04
如何查询ICP备案号?,ICP备案号查询入口在哪里?
下一篇 2026年8月18日 20:27

相关推荐

  • 5g网络到底好不好用?5g网络覆盖范围多大

    关于5g网络在数字化转型的深水区,5G网络已不再仅仅是通信技术的迭代,而是构建高并发、低延迟业务场景的核心基础设施,对于企业级用户而言,选择一款能够完美适配5G环境、提供稳定上行带宽并具备边缘计算能力的服务器,是保障业务连续性与用户体验的关键,本文基于真实测试环境,对当前市面上主流支持5G模组接入的高性能服务器……

    2026年6月17日
    4300
  • 服务器vip插件有哪些核心功能,怎么使用?

    服务器VIP插件是搭建稳定盈利服务器的核心支撑,选对工具并合理配置,就能在玩家体验和运营效率之间找到最佳平衡,为什么你的服务器需要VIP插件很多服主在服务器开起来后,第一反应是装个经济插件或者领地插件,但往往忽略了VIP系统,一套成熟的VIP插件 能直接决定玩家留存率和付费意愿,业内专家指出,服务器活跃度下降的……

    2026年7月25日
    2100
  • 个人注册域名合法吗?个人域名注册流程及注意事项

    关于个人注册域名的合法性在数字化浪潮席卷全球的今天,域名已不再仅仅是企业品牌的线上标识,更是个人创作者、独立开发者及自由职业者构建个人IP、托管博客或部署轻量级应用的核心资产,许多个人用户在尝试注册域名时,常对“个人是否具备注册资格”以及“注册后的法律合规性”存在疑虑,本文将从法律基础、注册流程、合规风险及服务……

    2026年6月12日
    3500
  • drupal 8 开发

    Drupal 8 开发的核心在于掌握其基于 Symfony 组件 的现代化架构,从传统的 过程式编程 彻底转向 面向对象编程(OOP),开发者必须摒弃 Drupal 7 时代的钩子思维,转而拥抱服务、依赖注入和配置管理,才能构建出高性能、可维护的企业级应用,这一转变不仅是代码风格的更新,更是开发思维的革命,要求……

    2026年2月16日
    22500
  • 研发活动说明怎么写?研究开发活动说明撰写指南

    研究开发活动是企业或机构推动创新的核心驱动力,涉及探索新技术、产品和解决方案的过程,在当今数字化时代,程序开发成为研究开发的关键组成部分,它通过代码实现想法,加速实验和产品迭代,本教程将深入解析如何在研究开发活动中高效进行程序开发,涵盖基础概念、实操步骤、最佳实践和常见问题解决,确保您能快速上手并提升项目成功率……

    程序开发 2026年2月11日
    11800
  • SQL执行计划错误致临时表空间不足?如何优化SQL执行计划

    关于SQL执行计划错误导致临时表空间不足的问题在数据库运维与性能调优的实战场景中,临时表空间(Temporary Tablespace)爆满往往被视为一种“突发性”故障,许多DBA的第一反应是检查SQL语句是否存在排序(ORDER BY)或分组(GROUP BY)操作,或者盲目地增加临时表空间文件的大小,在绝大……

    2026年6月12日
    5500
  • 哪个跨境电商平台最火?2026年跨境电商平台排名

    最火的跨境电商平台推荐在数字化贸易飞速发展的今天,跨境电商已成为全球商业增长的核心引擎,对于众多卖家而言,选择正确的平台仅仅是第一步,构建一个稳定、高速且安全的服务器基础设施,才是决定店铺转化率、用户留存率以及品牌口碑的关键基石,本文将深入剖析当前主流跨境电商平台的技术特性,并结合2026年的市场趋势,为您提供……

    2026年7月8日
    14600
  • 公司智能化门禁怎么选?智能门禁系统多少钱一套

    公司智能化门禁在数字化转型的浪潮中,企业安防早已超越了简单的“看门”概念,演变为集身份识别、数据追溯、权限管理及考勤联动于一体的综合安全中枢,作为企业IT基础设施的重要组成部分,服务器不仅是门禁系统的“大脑”,更是决定整个安防体系稳定性、响应速度与数据安全性基石,本文将对主流的企业级门禁服务器解决方案进行深度测……

    2026年6月29日
    1810
  • 如何用JS获取别人网站代码?,有哪些代码示例?

    用JavaScript获取别人网站代码的核心在于跨域请求,而JSONP、CORS和后端代理是三种主流实现方式, 我从原理到实例,一步步拆解这些方法,并说明你在实际开发中应注意的合规问题,js获取别人网站代码的两种主流方法JSONP:最基础的跨域方案JSONP利用<script>标签不受同源策略限制的……

    2026年7月30日
    2700
  • 开发价值吗?为什么现在开发项目还有价值吗?

    判断一个项目或产品是否具备开发价值吗,核心结论在于其能否在技术可行性、市场需求度与商业回报率之间找到最佳平衡点,只有当预期收益显著大于投入成本,且技术实现路径清晰时,项目才具备真正的开发价值,这不仅是一个技术决策,更是一个严谨的商业战略评估过程, 核心维度的价值评估体系要准确回答“开发价值吗”这一问题,必须建立……

    2026年3月13日
    11900

发表回复

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