SSH Client2 min read
Mac 怎么用 SSH 私钥登录服务器?DartShell 实操
手上有个私钥文件,知道服务器地址和账号,但在 Mac 上不知道从哪儿登录?私钥可不是双击就能连上的,得让 SSH 客户端用它来认证。这里用 DartShell 走一遍。
先别把文件搞错了
客户端用的是私钥;公钥得事先放到服务器上,授权给想登录的账号。只有私钥,服务器没有给这个账号授权对应的公钥,也连不上。如果文件名是 .pub 结尾,别把它当私钥选进去。这次选的是 demo_ed25519.pem,名字只是为了测试,私钥不必叫这个名字,也不一定用 .pem 后缀。
到 DartShell 里,选上这个文件
打开要连的主机,确认下地址、用户名和 SSH Port,然后把认证方式从“密码”切换到“私钥”。图里的地址和 22333 端口是测试环境,操作时换成自己的连接参数。

点私钥输入区上方的小文件夹图标,找到私钥然后点“打开”。DartShell 会读这个文件的内容。配图没有展示私钥正文,你也别把自己的私钥发到评论区。如果这个文件有口令,“私钥密码”就填解锁私钥的口令,而不是服务器账号的密码。这次用的是没有设置口令的测试私钥。

连上后,试试敲个命令
点“连接”,进了终端后输入 whoami && uname -s,确定下登录的账号和远端系统。这次返回的是 yxf 和 Darwin:连的是 macOS 测试端,不是 Linux 云服务器。

看到终端能返回命令结果,才算把这一条连接验证好了。如果认证不通过,核对下用户名、私钥,以及服务器上给这个账号授权的公钥是否匹配,别只换个文件名再试。你平时连服务器,是输密码多,还是用密钥多?
相关操作
DartShell
想要更高效的远程运维体验?
DartShell 在一套 macOS 原生体验里统一了 SSH、RDP、VNC、SFTP 和串口,帮你减少工具切换和重复配置。
Download DartShell