I'd prefer to use a syntax like interactive FTP and just 'pull' files from the server to my local pwd.
Use sftp
.
(Dica: Se você não puder ou não quiser abrir uma nova janela, você pode suspender a conexão SSH pressionando Enter , ~ , Ctrl Z , transfira seus arquivos e reinicie o SSH com fg
.)
Another possible solution might be to have some way to automatically set up my client computer as an ssh alias
Existem algumas maneiras.
-
Alias estáticos para
ssh
escp
- adicione isso ao seu~/.ssh/config
:Host home # If you don't have a domain name, check out DynDNS... # ...or just use your IP address. Hostname homepc.somedomain.tld # If necessary, uncomment: #User john #Port 1234
Uso:
scp foo home:
(Se você não fornecer um caminho após
:
, o arquivo irá para o seu diretório pessoal.) -
Use a variável de ambiente
SSH_CLIENT
.export client=${SSH_CLIENT%% *} if [[ $client == *:* ]]; then client="[$client]" fi
Coloque em
~/.profile
ou~/.bash_profile
ou onde você quiser e, em seguida, use$client
quando precisar de seu próprio endereço.scp foo "$client:"
-
Misture os dois.
~/.ssh/config
:Host client ProxyCommand ~/bin/reverse-connect %p
~/bin/reverse-connect
:#!/bin/sh if [[ $SSH_CLIENT ]]; then client=${SSH_CLIENT%% *} else echo "I don't know your address." >&2 exit 1 fi if [[ $client == *:* ]]; then client="[$client]" fi port=${1:-22} exec socat - "tcp:$client:$port"
Uso:
scp foo client: