技术教程
FinalShell macOS 客户端上手:告别密码,用密钥秒连服务器!
很多 macOS 用户在管理远程服务器时,可能还在用自带的终端或者其他复杂的工具。每次连接都要输密码,服务器一多就容易记混,效率也大打折扣。这时候,像 FinalShell 这样的工具就能大大提升我们的工作效率。它不仅界面友好,功能还很全面,特别是它的会话管理和密钥登录功能,简直是我的心头好。
今天,咱们就来聊聊如何在 macOS 上玩转 FinalShell,特别是怎么设置 SSH 密钥登录,让你彻底告别密码烦恼,一键秒连服务器!
FinalShell macOS 客户端:安装和基础配置
首先,咱们得把 FinalShell 装到你的 macOS 设备上。我这里用的是 FinalShell 4.5.0 这个版本,它的 macOS 客户端体验已经很不错了。
安装过程其实很简单,你可以直接去 FinalShell 官网下载对应的 macOS 版本。通常下载下来是个 .dmg 文件,双击打开,然后把 FinalShell 的图标拖到 “Applications” 文件夹里就行了。这个操作跟安装其他 macOS 应用没什么两样,非常傻瓜式。
安装完成后,打开 FinalShell。你会看到一个简洁的界面,左侧是会话列表区域,右侧是终端连接窗口。第一次打开时会提示你创建一个新的会话,或者你也可以点击左上角的“连接”按钮。
创建你的第一个服务器会话
- 点击“连接”按钮:在 FinalShell 窗口的左上角,找到那个像电源插头一样的图标,点击它。这会弹出一个“新建SSH连接”的窗口。
- 填写服务器信息:
- 名称:给你的服务器起个好记的名字,比如“我的生产服务器”或者“测试环境”。
- 主机:输入服务器的 IP 地址或者域名。比如
192.168.1.100或者yourserver.com。 - 端口:默认是
22,如果你服务器的 SSH 端口改过,记得填对。 - 用户:输入你连接服务器的用户名,通常是
root或者你创建的普通用户。
- 保存并连接:填完这些信息后,先别急着点“连接”。我们下面要配置密钥登录,这样更安全也更方便。

告别密码:设置 SSH 密钥登录
密码登录虽然直接,但安全性不高,而且经常输入也很麻烦。SSH 密钥登录是更推荐的方式,它利用公钥和私钥对来验证身份,既安全又便捷。这里我来一步步教你如何在 FinalShell 中配置密钥登录。我踩过一个坑,就是直接在 FinalShell 里面生成密钥,然后发现不能直接上传到服务器,还得手动复制,所以提前在终端生成密钥对会更高效。
第一步:生成 SSH 密钥对
在你的 macOS 终端里,输入以下命令来生成 SSH 密钥对:
ssh-keygen -t rsa -b 4096
执行这个命令后,系统会问你保存密钥文件的位置以及是否设置密码。一路回车就好(即使用默认路径和空密码)。通常,你的公钥会保存在 ~/.ssh/id_rsa.pub,私钥保存在 ~/.ssh/id_rsa。
如果你不确定这个步骤,可以参考这篇文章:FinalShell SSH 密钥配置:从生成到使用,一文打通
第二步:上传公钥到服务器
这一步是让服务器知道你的公钥,这样它才能用你的私钥来验证你的身份。最简单的方法是使用 ssh-copy-id 命令,如果你的服务器支持的话:
ssh-copy-id -i ~/.ssh/id_rsa.pub user@your_server_ip
把 user 替换成你的服务器用户名,your_server_ip 替换成服务器 IP 地址。它会提示你输入一次服务器密码,然后自动把公钥添加到服务器的 ~/.ssh/authorized_keys 文件中。这个命令是 SSH 工具包的一部分,macOS 通常自带。
如果 ssh-copy-id 不可用,你也可以手动复制公钥内容:
cat ~/.ssh/id_rsa.pub
复制输出的整个字符串。然后通过密码登录服务器,手动编辑 ~/.ssh/authorized_keys 文件,将公钥内容粘贴进去。如果 .ssh 目录或 authorized_keys 文件不存在,你需要手动创建并设置正确的权限:
mkdir -p ~/.ssh
chmod 700 ~/.ssh
touch ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
echo "你的公钥内容" >> ~/.ssh/authorized_keys
第三步:在 FinalShell 中配置密钥
回到 FinalShell 的“新建SSH连接”窗口。这次,我们要选择“密钥”作为认证方式:
- 认证方式选择“密钥”:在弹出的连接设置窗口里,找到“认证”选项卡(或者直接在主界面下拉选择)。将认证方式从“密码”切换到“密钥”。
- 选择私钥文件:点击私钥文件路径旁边的文件夹图标,导航到你之前生成的私钥文件
~/.ssh/id_rsa并选中它。FinalShell 会自动读取私钥内容。通常,如果你没有设置私钥密码,这里就不用填写密钥密码。 - 保存并连接:现在点击“连接”按钮。如果一切配置正确,FinalShell 就会直接通过密钥连接到你的服务器,无需再输入密码。是不是瞬间感觉世界都清净了?
更多关于 FinalShell 的文件传输功能,可以看这篇:FinalShell SFTP 文件传输:从本地到云端,文件管理从未如此简单
玩转会话管理,让你的服务器井井有条
当你的服务器数量越来越多时,会话管理就显得尤为重要。FinalShell 的会话管理功能可以让你把服务器归类,方便查找和管理。
- 创建文件夹:在 FinalShell 左侧的会话树区域,右键点击空白处,选择“新建目录”。给目录起个名字,比如“生产环境”、“测试机群”或者“客户服务器”。
- 拖拽会话:把已经创建好的会话拖拽到对应的文件夹中。你也可以在创建新会话时,直接选择存放的目录。这样,你的服务器列表就整洁多了。
- 自定义会话图标和备注:每个会话都可以右键点击选择“编辑”,在“属性”里可以修改图标或者添加备注信息。比如给生产环境的服务器用红色图标,测试环境用蓝色,一目了然。我在管理多个客户服务器时,会把客户名称写在备注里,非常实用。
如果你需要设置端口转发,FinalShell 也能轻松搞定:FinalShell 端口转发:打破内外网隔阂,安全访问内部服务
常见问题
问题一:密钥连接失败,提示权限问题?
解决办法:这通常是私钥文件的权限不正确导致的。在 macOS 终端,确保你的私钥文件 ~/.ssh/id_rsa 只有你自己有读写权限:
chmod 600 ~/.ssh/id_rsa
同时,服务器上的 ~/.ssh 目录权限应该是 700,~/.ssh/authorized_keys 文件的权限应该是 600。可以通过 SSH 密码登录服务器检查并修改。
问题二:连接服务器时提示 connection refused?
解决办法:这个错误通常意味着服务器的 SSH 服务没有运行,或者防火墙阻止了连接,再或者是端口号不正确。
- 检查 SSH 服务状态:尝试用
systemctl status sshd(CentOS/Ubuntu) 或service sshd status(老版本) 在服务器上查看 SSH 服务是否在运行。 - 检查防火墙:确保服务器的防火墙(如
firewalld或ufw)允许22端口(或你自定义的 SSH 端口)的入站连接。你可能需要添加规则来放行。 - 检查端口号:确认你在 FinalShell 中填写的端口号与服务器实际的 SSH 端口号一致。
问题三:FinalShell 在 macOS 上字体显示模糊?
解决办法:这可能是因为 FinalShell 基于 Java Swing 开发,在某些 macOS 版本上可能出现字体渲染问题。尝试在 FinalShell 的“设置” -> “终端”中调整字体大小和字体类型,或者开启“使用系统自带字体”。有时切换到像 Monaco 或 Menlo 这样的等宽字体会有改善。此外,确保你的 macOS 系统显示设置为默认分辨率,不要开启缩放。
问题四:如何备份 FinalShell 的会话配置?
解决办法:FinalShell 的配置通常存储在用户目录下的隐藏文件夹中。在 macOS 上,你可以在 ~/Library/Application Support/FinalShell 或者 ~/.finalshell 目录下找到配置文件。直接备份整个目录,以后重装系统或者迁移到新电脑时,把这个目录拷贝回去,就能恢复所有会话和设置了。非常方便,我每次换电脑都会先备份这个目录。
通过这篇文章,相信你已经掌握了 FinalShell macOS 客户端的基本安装、SSH 密钥登录的配置,以及会话管理的一些小技巧。告别繁琐的密码,让你的服务器管理工作变得更加高效和安全吧!
延伸阅读
若需进一步查阅,可先看本站以下教程: