Você pode usar ~/.ssh/config
para especificar as portas a serem usadas para os hosts (e para definir muitas outras coisas boas; verifique a página de manual man ssh_config
):
# ~/.ssh/config
Host 67.12.21.133
Port 6774
Host 67.129.242.40
Port 6774
Ao fazer isso, você tem que usar a opção -3
para scp, que copia os arquivos através de sua máquina local. Caso contrário, scp emite o comando scp via ssh no primeiro host, então ele é executado
ssh -p 6774 [email protected] scp -rp /home/denny/testapp1.txt [email protected]:
e então o ~ / .ssh / config do primeiro host remoto (67.12.21.133) é usado no lugar do seu local.
Quando você configurou seu ~/.ssh/config
corretamente, isso deve funcionar:
scp -rp3 [email protected]:/home/denny/testapp1.txt [email protected]:
Claro, você também pode copiar o conteúdo do arquivo ~ / .ssh / config para o seu primeiro host remoto, e então você pode usar o scp sem a opção -3
, o que provavelmente irá acelerar a transferência.
Ou você pode usar o truque que o scp usa e usar essa linha de comando:
ssh -p 6774 [email protected] scp -rp -P 6774 /home/denny/testapp1.txt [email protected]:
(observe o caso diferente do parâmetro de porta para ssh e scp: ssh -p 6774
vs. scp -P 6774
)
PS: Eu recebi esta informação do bugzilla do OpenSSH onde eu inseri isso como um bug: link