目前,我正在尝试使用 Vim 的内置 netrw 插件编辑远程服务器上的文件。我可以使用以下命令通过 SSH 顺利进入我的 Amazon EC2 服务器:
ssh -i <keyfile> bitname@<ec2-address>
不过,我希望能够使用我自己的 Vim 配置,并一直尝试像这样使用 scp:
:e scp://user@<ec2-address>//
但是如果没有输入密钥文件的参数,我就会收到权限被拒绝(公钥)错误。
是否存在我可以用来输入密钥文件的参数或我忽略的其他解决方案?
提前致谢,
答案1
我还没有 Vim 的netrw
插件,但请尝试以下步骤。
为您的主机创建一个 ssh 客户端配置文件。输入以下内容$HOME/.ssh/config
:
Host myserveralias
Hostname ec-address
User user
IdentityFile /path/to/keyfile
PasswordAuthentication no
当然,请根据您的主机替换这些值。然后使用 scp URL 登录,如下所示:
:e scp://myserveralias//
Linux 上的大部分 ssh 客户端都遵守客户端配置文件(也是系统范围的配置文件/etc/ssh/ssh_config
,不要与 混淆sshd_config
)。我希望您的插件也能这样做。有关更多配置选项,请参阅man ssh_config
。使用 进行调试ssh -vvv
通常可以帮助您。