toraritte Asked: 2025-04-23 11:18:23 +0800 CST2025-04-23 11:18:23 +0800 CST 2025-04-23 11:18:23 +0800 CST 如果私钥需要密码,如何通过 Midnight Commander 的 Shell 链接连接和浏览远程服务器的文件(通过 SSH 复制文件)? 772 关于如何设置的有用文章和答案不胜枚举~/.ssh/config(例如,这篇就很不错),但没有一篇提到如果私钥也受密码保护该怎么办。 ssh 1 个回答 Voted Best Answer toraritte 2025-04-23T11:18:23+08:002025-04-23T11:18:23+08:00 创建~/.ssh/config包含一个或多个以下内容的条目的文件: Host your_server_name HostName 1.2.3.4 Port 22 User your_username IdentityFile ~/.ssh/your_private_key Host another_server HostName 4.5.6.7 Port 22 User another_username 的私钥another server需要密码,因此IdentityFile可以省略此行,因为ssh-agent将会使用: 设置适当的权限~/.ssh/config: chmod 600 ~/.ssh/config 开始ssh-agent: eval "$(ssh-agent -s)" 添加带有密码的私钥: ssh-add ~/.ssh/private_key_for_another_server 在 Midnight Commander 中,单击 Left或Right>Shell link... 并输入“another_server”(或在中给出的任何名称~/.ssh/config)。 如果一切正常,但 MC 仍然拒绝连接,请确保私钥也具有更严格的权限。我曾多次将私钥复制到新的“跳转”服务器,但什么也没发生,只是需要一些chmod 600…… 这个答案主要是以下几点的组合: 文章Midnight Commander 通过 Shell 链接(通过 SSH 复制文件)和 SFTP 链接使用 FISH 和公钥认证进行远程连接,以及 这个答案。 文章中还有很多图片和其他例子。
创建
~/.ssh/config
包含一个或多个以下内容的条目的文件:的私钥
another server
需要密码,因此IdentityFile
可以省略此行,因为ssh-agent
将会使用:设置适当的权限
~/.ssh/config
:开始
ssh-agent
:添加带有密码的私钥:
在 Midnight Commander 中,单击
Left
或Right
>Shell link...
并输入“another_server”(或在中给出的任何名称
~/.ssh/config
)。如果一切正常,但 MC 仍然拒绝连接,请确保私钥也具有更严格的权限。我曾多次将私钥复制到新的“跳转”服务器,但什么也没发生,只是需要一些
chmod 600
……这个答案主要是以下几点的组合:
文章Midnight Commander 通过 Shell 链接(通过 SSH 复制文件)和 SFTP 链接使用 FISH 和公钥认证进行远程连接,以及
这个答案。
文章中还有很多图片和其他例子。