Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free.

How do I copy files from my local to some remote server which hosts ssh on port other than default (22).

I usually connect to the server using

ssh username@remotehost.com -p 2000

Now I need to copy files with scp

user@localbox:~$ scp ~/.ssh/id_rsa.pub user@remotebox.remotedomain.tld:~/.ssh/id_rsa_localbox.pub -p 2000

But this does not work.

share|improve this question

2 Answers 2

up vote 17 down vote accepted

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 ~/.ssh/id_rsa.pub user@remotebox.remotedomain.tld:~/.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 user@remotebox.remotedomain.tld'
share|improve this answer
// , Is there a way to search through the man pages for stuff like this? –  Nathan Basanese Aug 26 at 0:00

use a capital P

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

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.