pt.phhsnews.com


pt.phhsnews.com / Como copiar remotamente arquivos via SSH sem digitar sua senha

Como copiar remotamente arquivos via SSH sem digitar sua senha


SSH é um salva-vidas quando você precisa gerenciar remotamente um computador, mas sabia que também pode fazer upload e download de arquivos? Usando chaves SSH, você pode pular a necessidade de inserir senhas e usá-las para scripts!

Esse processo funciona no Linux e no Mac OS, desde que estejam corretamente configurados para acesso SSH. Se você estiver usando o Windows, você pode usar o Cygwin para obter funcionalidade semelhante ao Linux e, com alguns ajustes, o SSH também funcionará.

Copiando arquivos por SSH

A cópia segura é um comando realmente útil, e é muito fácil de usar. O formato básico do comando é o seguinte:

scp [opções] original_file destination_file

O maior kicker é como formatar a parte remota. Quando você endereça um arquivo remoto, é necessário fazê-lo da seguinte maneira:

usuário @ servidor: caminho / para / arquivo

O servidor pode ser um URL ou um endereço IP. Isto é seguido por dois pontos, depois o caminho para o arquivo ou pasta em questão. Vejamos um exemplo.

scp -P 40050 Desktop / url.txt [email protected]: ~ / Desktop / url.txt

Este comando apresenta a bandeira [-P] (note que é uma maiúscula P ). Isso me permite especificar um número de porta em vez do padrão 22. Isso é necessário para mim por causa da maneira como configurei meu sistema.

Em seguida, meu arquivo original é “url.txt” que está dentro de um diretório chamado "Desktop". O arquivo de destino está em “~ / Desktop / url.txt”, que é o mesmo que “/user/yatri/Desktop/url.txt”. Este comando está sendo executado pelo usuário “yatri” no computador remoto “192.168.1.50”.

E se você precisar fazer o contrário? Você pode copiar arquivos de um servidor remoto da mesma forma.

Aqui, eu copiei um arquivo da pasta “~ / Desktop /” do computador remoto para a pasta “Desktop” do meu computador.

Para copiar diretórios inteiros, você Você precisará usar o sinalizador [-r] (observe que é um r minúsculo).

Você também pode combinar sinalizadores. Em vez de

scp -P -r…

Você pode fazer

scp -Pr…

A parte mais difícil aqui é que a conclusão da tabulação nem sempre funciona, então é útil ter outro terminal com uma sessão SSH em execução para que você saiba onde colocar as coisas.

SSH e SCP sem senhas

A cópia segura é ótima. Você pode colocá-lo em scripts e fazer backups em computadores remotos. O problema é que você nem sempre pode estar por perto para digitar a senha. E, sejamos honestos, é realmente um grande esforço colocar sua senha em um computador remoto ao qual obviamente você tem acesso o tempo todo.

Bem, podemos contornar o uso de senhas usando arquivos de chaves. Podemos fazer com que o computador gere dois arquivos chave - um público que pertence ao servidor remoto e um privado que está no seu computador e precisa ser seguro - e estes serão usados ​​em vez de uma senha. Bastante conveniente, certo?

No seu computador, digite o seguinte comando:

ssh-keygen -t rsa

Isto irá gerar as duas chaves e colocá-las em:

~ / .ssh /

com os nomes "id_rsa" para sua chave privada, e "id_rsa.pub" para sua chave pública.

Depois de digitar o comando, você será perguntado onde salvar a chave. Você pode pressionar Enter para usar os padrões mencionados acima.

Em seguida, você será solicitado a inserir uma frase secreta. Pressione Enter para deixar este campo em branco e, em seguida, faça-o novamente quando solicitar a confirmação. O próximo passo é copiar o arquivo de chave pública para o seu computador remoto. Você pode usar o scp para fazer isso:

O destino da sua chave pública está no servidor remoto, no seguinte arquivo:

~ / .ssh / authorized_keys2

Chaves públicas subsequentes podem ser anexadas a este arquivo, muito parecido com o arquivo ~ / .ssh / known_hosts. Isso significa que, se você quiser adicionar outra chave pública à sua conta nesse servidor, copiará o conteúdo do segundo arquivo id_rsa.pub para uma nova linha no arquivo authorized_keys2 existente.

Considerações de segurança

Isn ' Isso é menos seguro que uma senha?

Em um sentido prático, não realmente. A chave privada que é gerada é armazenada no computador que você está usando e nunca é transferida, nem mesmo para ser verificada. Essa chave privada SOMENTE corresponde a essa chave pública, e a conexão precisa ser iniciada a partir do computador que possui a chave privada. O RSA é bastante seguro e usa um comprimento de bit de 2048 por padrão.

Na verdade, é bastante semelhante em teoria ao uso da sua senha. Se alguém souber sua senha, sua segurança sairá da janela. Se alguém tiver seu arquivo de chave privada, a segurança será perdida em qualquer computador que tenha a chave pública correspondente, mas precisará de acesso ao seu computador para obtê-lo.

Isso pode ser mais seguro?

Você pode combinar uma senha com arquivos de chave. Siga as etapas acima, mas insira uma senha forte. Agora, quando você se conectar via SSH ou usar SCP, precisará do arquivo de chave particular e da senha adequada.

Depois de inserir sua senha uma vez, você não será solicitado novamente por isso até você fechar sua sessão. Isso significa que, na primeira vez que você fizer SSH / SCP, precisará inserir sua senha, mas todas as ações subseqüentes não precisarão dela. Depois de sair do seu computador (não do remoto) ou fechar a janela do terminal, você terá que inseri-lo novamente. Desta forma, você não está realmente sacrificando a segurança, mas também não é assediado por senhas o tempo todo.

Posso reutilizar o par de chaves pública / privada?

Essa é realmente uma má ideia. Se alguém encontrar sua senha e você usar a mesma senha para todas as suas contas, elas agora terão acesso a todas essas contas. Da mesma forma, seu arquivo de chave privada também é super secreto e importante. (Para obter mais informações, consulte Como recuperar depois que a senha do seu email ficar comprometida)

É melhor criar novos pares de chaves para cada computador e conta que você deseja vincular. Dessa forma, se uma das suas chaves privadas for pego de alguma forma, você apenas comprometerá uma conta em um computador remoto.

Também é muito importante observar que todas as suas chaves privadas são armazenadas no mesmo lugar: em ~ /.ssh/ no seu computador, você pode usar o TrueCrypt para criar um container seguro e criptografado, e então criar links simbólicos em seu diretório ~ / .ssh /. Dependendo do que estou fazendo, eu uso esse super-paranoid super-método seguro para colocar minha mente à vontade.


Você usou SCP em algum script? Você usa arquivos de chave em vez de senhas? Compartilhe sua própria experiência com outros leitores nos comentários!


Como configurar o RetroArch, o melhor emulador de jogos retro All-In-One

Como configurar o RetroArch, o melhor emulador de jogos retro All-In-One

Deseja navegar em uma enorme coleção de jogos retrô do seu sofá, sem ter que conectar um grupo de sistemas ou remendar vários emuladores? RetroArch torna isso possível. Esta estação de emulação all-in-one pode rodar praticamente qualquer jogo retrô imaginável, e funciona em computadores Windows, Mac e Linux.

(how-to)

O menu Iniciar deve ser sagrado (mas ainda é um desastre no Windows 10)

O menu Iniciar deve ser sagrado (mas ainda é um desastre no Windows 10)

O menu Iniciar é um grampo da experiência do Windows e deve ser simplificado, eficiente e não afetado pelo maior mundo além do sistema operacional e programas que serve como um portal para. A Microsoft trouxe o Menu Iniciar de volta para o primeiro plano no Windows 10, mas eles o estragaram no processo.

(how-to)