Tente
scp -P 21 root@myhost /home/direc/file.tar username@secondhost:/home/dir
Onde -P é o número da porta.
Eu estou tentando copiar o arquivo do meu servidor para outro, então estou usando o seguinte comando:
scp root@myhost /home/direc/file.tar username@secondhost:/home/dir
Estou recebendo o erro:
ssh: conecta-se ao host segunda porta 22 terminal da conexão expirou
Eu sei que pode ser porque a porta 22 não está aberta no segundo host
so Como faço para transferir especificando a porta 21 no meu segundo host
Tente
scp -P 21 root@myhost /home/direc/file.tar username@secondhost:/home/dir
Onde -P é o número da porta.
Duas falhas que vejo na sua tentativa e na resposta.
1) scp é um utilitário de shell seguro (ssh) para a cópia segura de arquivos entre hosts. Ele usa o ssh para transferência de dados e usa a mesma autenticação e fornece a mesma segurança que o ssh (consulte scp manpage). Por padrão, o ssh usa a porta 22. Portanto, a menos que você altere o número da porta padrão de ssh no servidor de destino para 21 ou não tenha instalado e iniciado o servidor ssh (sshd) no servidor de recebimento, não será possível usar scp para copiar arquivos.
2) A linha de comando apropriada do seu exemplo deve ser:
scp -P '*port running ssh on destination server*' /home/direc/file.tar username@remotehost:/home/dir
O primeiro root@myhost
não é necessário e, na verdade, tentará copiar um arquivo chamado root@myhost
(que provavelmente não existe) e file.tar para o servidor de destino. Você provavelmente receberá a mensagem:
root@myhost: No such file or directory during the copy.
Tags scp