Ssh – Vim SCP parameter with private public key pair

amazon ec2private-keyscpsshvim

Currently, I am trying to edit a file on a remote server using Vim's built-in netrw plugin. I can SSH fine into my Amazon EC2 server using a command like this:

ssh -i <keyfile> bitname@<ec2-address>

However, I'd like to be able to use my own Vim configurations and have been trying to use scp like this:

:e scp://user@<ec2-address>//

But without a parameter to enter my keyfile, I get a permission denied (publickey) error.

Is there a parameter that I can use to enter my keyfile or another solution I am overlooking?

Thanks in advance,

Best Answer

I haven't got Vim's netrw plugin, but try the following.

Create an ssh client config file for your host. Put the following in $HOME/.ssh/config:

Host myserveralias
Hostname ec-address
User user
IdentityFile /path/to/keyfile
PasswordAuthentication no

Replace the values according to your host of course. Then login using an scp URL like this:

:e scp://myserveralias//

Most ssh cliets on Linux honour the client configuration file (also a sytem-wide one in /etc/ssh/ssh_config (not to be confused with sshd_config). I hope your plugin will do so too. For more configuration options see man ssh_config. Debugging using ssh -vvv usually helps you out.