copy with ssh with port other than 22

Solution 1:

scp --help or man scp would have told you the option was -P port. You also need to declare this before the file arguments:

scp -P 2000 -i ~/.ssh/id_rsa.pub [email protected]:~/.ssh/id_rsa_localbox.pub

I also wouldn't trust ~-relative links. Use full paths if you can.

But if you're copying IDs, ssh-copy-id also has an option to provide SSH connection options:

ssh-copy-id -i ~/.ssh/id_rsa.pub '-p 2000 [email protected]'

Solution 2:

use a capital P

(it's in the man page...)

Solution 3:

You can create file ~/.ssh/config and put relevant information for the remote host in there:

Host remotehost.com
Port 2000
User username

See man page for ssh_config.

This allows you to then run ssh as:

ssh remotehost.com

and scp as:

scp important_file remotehost.com: