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

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

Finalshell密钥登录怎么设置:六步完成免密登录

很多人第一次给 Finalshell 配置密钥,卡住的地方往往不在软件本身,而在“公钥到底放哪、私钥该选哪个文件”。下面这套流程从生成密钥开始,按顺序做完就能用密钥登录,并且在成功之前一直保留密码登录这条后路。

动手前先分清三个角色

  • 私钥:留在你自己的电脑上,绝不外传,Finalshell 连接时读取的就是它。
  • 公钥:由私钥派生,放到目标服务器的 ~/.ssh/authorized_keys 里。
  • 口令(passphrase):给私钥再加一层保护,可以为空,但公网服务器建议设置。

顺带提醒,Finalshell 只认 OpenSSH 格式的私钥(id_rsa、id_ed25519 这一类),PuTTY 的 .ppk 文件不能直接用,需要先转换。

第一步:在本地生成密钥对

Windows 打开 PowerShell 或 CMD,macOS 与 Linux 打开终端,执行:

ssh-keygen -t ed25519 -C "finalshell-办公笔记本"

连续回车即可,默认保存在用户目录下的 .ssh 文件夹。Windows 一般在 C:\Users\你的用户名\.ssh\,会得到 id_ed25519(私钥)和 id_ed25519.pub(公钥)两个文件。如果老服务器不支持 ed25519,把参数换成 -t rsa -b 4096。

提示设置 passphrase 时输入两次相同内容;想省事可以直接回车留空,但对外网开放的服务器不建议留空。

第二步:把公钥放到服务器上

最省事的办法是在终端执行 ssh-copy-id -i ~/.ssh/id_ed25519.pub 用户名@服务器IP,按提示输入一次密码即可。

没有 ssh-copy-id(Windows 上常见)就手动做:

  • 用文本编辑器打开 id_ed25519.pub,整行复制,注意别带多余换行和空格。
  • 用密码方式登录服务器,执行 mkdir -p ~/.ssh,再编辑 ~/.ssh/authorized_keys,把公钥粘贴进去,一行一把钥匙。
  • 依次执行 chmod 700 ~/.ssh 和 chmod 600 ~/.ssh/authorized_keys,权限过宽会被 SSH 直接拒绝。
  • 服务器若开了 SELinux,补一条 restorecon -R -v ~/.ssh,否则同样可能认证失败。

第三步:在 Finalshell 里切换认证方式

  • 在会话列表找到目标连接,右键选择编辑,或双击打开连接设置。
  • 把认证方式从“密码”改为“密钥”。
  • 点击私钥路径的选择按钮,定位到 .ssh 目录下的 id_ed25519,注意选没有 .pub 后缀的那个文件。
  • 如果私钥设了口令,在密码或口令栏填写;没设就留空。
  • 端口保持 22,改过端口的按实际填写,保存后双击连接。

连接成功时,终端不会再提示输入密码,而是直接落到命令行,说明公钥认证已经生效。

第四步:不成功时的排查顺序

  • 看提示语:出现 Permission denied (publickey),多半是公钥没写进去或权限不对;仍提示输入密码,说明服务器还在走密码认证。
  • 核对用户名:密钥绑定到具体账号,root 的公钥对普通用户无效。
  • 核对私钥文件:选错成 .pub 文件是最常见的失误。
  • 查服务器日志:/var/log/secure(CentOS 系)或 /var/log/auth.log(Debian 系)会写明拒绝原因。
  • 确认 sshd 允许公钥登录:PubkeyAuthentication yes,改完重启 sshd。

第五步:确认无误后再关闭密码登录

这一步别急。先用新开的窗口测试密钥登录,成功后再编辑 /etc/ssh/sshd_config,把 PasswordAuthentication 改为 no 并重启服务。同时备份一份私钥到安全位置,或导出一份加密副本——私钥丢了,服务器就只能走控制台救援。

几个容易忽略的细节

  • 私钥别放在同步网盘或聊天记录里,需要转移时用加密压缩包。
  • 多人共用一台服务器时一人一把密钥,在 authorized_keys 行尾注释写清归属,方便日后清理。
  • 换了电脑或重装系统,旧密钥不会自动跟过来,提前导出或在服务器上补登新公钥。
  • 给连接配好会话备注,过几个月回头看还能分清哪把钥匙对应哪台机器。

按这五步走完,Finalshell密钥登录怎么设置就不再是难题:本地生成、公钥上机、软件里选对私钥、验证通过后再收紧密码登录。顺序不乱,问题基本都能自己定位。

继续了解 Finalshell

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

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