首页 / 新闻动态 / 详情
Finalshell · 产品动态与运维实践

围绕 SSH 远程连接、服务器文件传输与主机批量管理的真实场景,持续输出可落地的方法与产品更新说明,帮助团队把每一次运维操作做得更稳、更快。

Finalshell密钥登录教程:一次交接失败后的案例复盘

一次凌晨的交接,前同事在文档里只留了一句“服务器已改成密钥登录”。新同事打开 Finalshell,新建 SSH 连接,导入私钥,点连接却看到 no supported authentication methods available。密码登录已经关闭,现场又没有别的入口,只能先找云控制台 VNC 进去。事后复盘,问题不在工具,而在三个细节:私钥格式、认证方式选择、服务器端公钥权限。

先分清私钥、公钥和私钥口令

  • 私钥留在本地电脑,公钥追加到服务器的 ~/.ssh/authorized_keys。
  • 私钥口令用来保护私钥文件,不是服务器登录密码;Finalshell 导入私钥时会提示输入。
  • OpenSSH 私钥通常以 BEGIN OPENSSH PRIVATE KEY 开头,PuTTY 的 .ppk 是另一种格式,导入前要确认工具支持。
  • 把私钥内容贴到服务器上,是交接中最常见的错误;服务器只需要公钥。

Finalshell密钥登录教程:这次复盘的六步路径

  • 第一步,在本地确认私钥文件可用,最好先用 ssh -i 私钥路径 用户@主机 测试,排除网络与账号问题。
  • 第二步,登录服务器,把公钥追加进 ~/.ssh/authorized_keys,不要覆盖已有公钥,避免把其他同事锁在门外。
  • 第三步,收紧权限:home 目录不能是 777,~/.ssh 设为 700,authorized_keys 设为 600,属主必须是目标用户。
  • 第四步,回到 Finalshell 新建 SSH 连接,认证方式选“密钥”,导入私钥;如果有口令,填入口令而不是服务器密码。
  • 第五步,保留一个已登录的密码会话或云控制台会话,再开新窗口测试密钥登录,成功后再动 sshd 配置。
  • 第六步,确认密钥可登录后,再关闭密码认证;改完先执行 sshd -t 校验,再 reload 服务,别直接重启。

四个误判,让简单问题变复杂

  • 误判一:以为“导入私钥”等于“启用密钥认证”,连接配置里仍停留在密码方式。
  • 误判二:忽略私钥口令,反复输入服务器密码,日志里其实提示的是 publickey 失败。
  • 误判三:只改 authorized_keys,没看 SELinux 上下文;CentOS 上可用 restorecon -R -v ~/.ssh 修复。
  • 误判四:权限过宽被 sshd 拒绝,却把问题归到 Finalshell 版本或网络。
  • 误判五:改完配置不校验,sshd 起不来,现有会话一断就失去入口。

云主机和旧系统要多看一步

云厂商控制台创建的密钥对,公钥通常已经注入实例;本地生成的密钥则要自己追加。Ubuntu 上服务名可能是 ssh,CentOS 上多是 sshd,reload 命令要按系统来。若服务器禁止 root 直接登录,密钥也要绑到普通用户,再用 sudo 提权。旧系统对密钥算法支持有限,遇到报错可先看 /var/log/secure 或 /var/log/auth.log,不要盲目换工具。

交接清单:让下一个人少走弯路

  • 记录密钥用途、指纹、保管位置和对应主机,别只写“用密钥登录”。
  • 生产、测试环境分开建密钥,离职交接时按主机轮换,不共用一把私钥。
  • 关闭密码登录前,确认至少两个可用入口:密钥会话和云控制台。
  • 在 Finalshell 里给连接分组命名,备注认证方式,减少下一任同事的试错。
  • 定期查看登录日志,发现异常公钥或失败尝试及时处理。

这次交接最后花了四十分钟恢复,真正改配置只用了五分钟,其余时间都在确认“到底哪一步没对上”。Finalshell密钥登录教程看起来是工具操作,背后其实是密钥生命周期管理:本地私钥保管好,服务器公钥权限收好,改配置前留好退路。把这三件事写进交接文档,比留一句“已改密钥登录”有用得多。

继续了解 Finalshell

让每一台服务器都处在清晰的掌控之中

注册 Finalshell 账号,即可把会话配置、主机分组与常用命令同步到不同设备,随时随地延续熟悉的运维体验。