Como posso fazer o SSH com um servidor remoto para procurar arquivos e editá-los? Eu tenho um nome de usuário e senha para usar.
O SSH vem por padrão em todas as versões do Ubuntu, assim você economiza em ter que instalá-lo (+1 por tê-lo já lá;))
Exceto, é claro, no caso em que você deseja um servidor SSH para o seu servidor Ubuntu. Nesse caso, você
sudo apt-get install openssh-server
o que deve deixar seu computador / servidor pronto para ser um servidor ssh.
Para usá-lo é bastante fácil:
ssh USER@SITE
por exemplo, se meu nome de usuário for cyrex e o site for ubuntu.com , faça o seguinte:
ssh [email protected]
Agora, digamos que você deseja copiar um arquivo chamado bubblegum.txt
do seu computador para o site do Ubuntu e deseja deixá-lo na /var/www
pasta do site do Ubuntu. você pode fazer isso (supondo que seu usuário tenha permissões suficientes no site do Ubuntu) usando o irmão do SSH, SCP (que também vem por padrão no Ubuntu):
scp bubblegum.txt [email protected]:/var/www
Observe o :
entre o USER @ SITE e a pasta onde você deseja copiá-lo. É o que separa os dois elementos.
Agora, digamos que você esteja carregando um arquivo enorme com o scp e, em seguida, o pior acontece, o mundo explode. Como você pode continuar carregando esse arquivo no servidor. Então você tem o irmão mais velho do SCP, rsync (vem por padrão no Ubuntu). De muitas maneiras, scp e rsync fazem a mesma coisa, mas aqui estão algumas grandes diferenças entre eles:
De qualquer forma, no caso do scp não conseguir carregar o arquivo inteiro, é aqui que o rsync entra para resgatar. (Obrigado a Marco Ceppi pela dica. Vote no seu comentário se você gosta de gatos .. e / ou cães)
Digamos que você fez a menção de upload acima do scp e chegou a 60%. Como você pode continuar nesses 60% sem perder o tempo necessário para o upload. Você faria o seguinte:
rsync --progress --partial bubblegum.txt [email protected]:/var/www
Isso diz ao rsync para mostrar o progresso de uma maneira legível e agradável com a --progress
bandeira. Ele também diz ao rsync para verificar e continuar de onde o arquivo bubblegum.txt chegou com o --partial
sinalizador. Você também pode simplificar a quantidade a ser gravada com o parâmetro -P, que é o mesmo que --progress e --partial, para que o exemplo acima fique assim:
rsync -P bubblegum.txt [email protected]:/var/www
Você pode até CTRL+ Cfazer o upload e continuar com o comando do rsync acima. É muito legal ter a capacidade de retomar algo a qualquer momento e quantidade de vezes.
Para mais informações sobre o rsync, que vem por padrão com o Ubuntu, você pode digitar os seguintes comandos do terminal:
man rsync
info rsync
rsync --help
Agora, para especificar uma porta para SSH. Para especificá-lo, você pode fazer o seguinte:
ssh [email protected] -p PORT
. Por exemplo: ssh [email protected] -p 1234
para dizer para usar a porta 1234 para o serviço SSH. Isso deve ser configurado no servidor primeiro para que ele funcione.
Para configurá-lo, basta abrir no servidor o arquivo ssh_config assim: nano /etc/ssh/ssh_config
e alterar a linha que diz # port 22
para outra porta. Lembre-se também de remover o comentário dessa linha. Deve ficar assim: port 1234
no caso do exemplo acima.
Agora basta reiniciar o serviço ssh no servidor e pronto. Para reiniciar o serviço, faça o seguinte:
sudo restart ssh
ou
sudo /etc/init.d/ssh restart
NOTA - Você também pode usar o SSH de ferramentas da GUI, como as filezilla
que oferecem a opção de usar ssh em vez de ftp. O ssh também pode ser acessado no menu Ubuntu:
que dá acesso a várias opções, incluindo compartilhamento do Windows, SSH e FTP :
Para mais informações sobre SSH, você pode usar um dos seguintes comandos no console na sua caixa Ubuntu:
man ssh
info ssh
ssh --help
Se você deseja navegar no servidor pelo Nautilus, como faz com os arquivos em sua máquina local:
Vá para "Arquivo" -> "Conectar ao servidor"
Selecione "SSH" em "Tipo de serviço"
Coloque o endereço IP ou o domínio em "Servidor"
Adicione seu nome de usuário e marque "Adicionar favorito" se quiser que o local seja salvo nos seus favoritos.
A pasta deve abrir para você.
fonte
Você pode usar
sshfs
para montar um diretório remoto no seu sistema de arquivos local.Veja https://help.ubuntu.com/community/SSHFS :
Uso da linha de comando
Agora, supondo que você tenha um servidor SSH em execução em uma máquina remota, basta executar o comando SSHFS para montar o diretório remoto. Neste exemplo, o diretório remoto é / projects no host remoto agora. O ponto de montagem local é ~ / far_projects.
Para desmontar,
Para adicioná-lo ao seu / etc / fstab,
Observe que você deve alterar $ USER para seu nome de login ao editar o fstab, mas não é necessário ao digitar comandos (o shell faz isso por você nesse caso).
fonte
Supondo que o servidor ssh já esteja configurado, abra um terminal e digite:
Você será solicitado a fornecer sua senha; apenas entre. Se você precisar de um número de porta, adicione
-p PORTNUM
.fonte
Se você pode usar o Vim, Pico ou etc, pode usar o terminal:
Digite sua senha e você estará dentro. A partir daí, é como um terminal comum, exceto que você não tem GUI.
Observe que você pode adicionar a opção '-X' e, se o servidor tiver um servidor X configurado, você poderá executar programas GUI. Basta digitar o nome deles se você adicionou -X e ele abrirá uma janela da GUI.
Agora, você provavelmente desejará configurar o login sem senha. Se você ainda não possui uma chave, digite
ssh-keygen
e apenas pressione enter para todos os padrões. Então façassh-copy-id [email protected]
. Feito isso, basta digitarssh [email protected]
e você não precisa digitar sua senha!Se o seu nome de usuário for o mesmo do seu laptop, você não precisará
MYUSER@
. Você pode apenas fazerssh mysite.com
. Você também pode usar a-l MYUSER
opção em vez deMYUSER@
Se você deseja uma GUI, o Nautilus pode fazer isso. Arquivo
->
Conectar ao servidor->
[selecione 'SSH' e preencha os detalhes de login]->
Conecte-se.Se você quiser apenas copiar um único arquivo, use scp [cópia segura].
scp [email protected]:path/to/file.dat ./
Isso copia o arquivo "~ / path / to / file.dat" para o diretório atual. Observe que, se você não tiver uma barra ou um til depois do
:
, ele atuará como se estivesse em seu diretório pessoal [~/
]. Se você deseja fazer o upload,scp ./local_file.dat [email protected]:
isso o colocará em seu diretório pessoal.fonte
ssh -X -C user@host nautilus --no-desktop
para ir no modo gui :)fonte