Ciência e Tecnologia

Como tornar o SSH ainda mais fácil de usar com arquivos de configuração

.

Cara elegante e moderno com tatuagem na mão, faz anotações no computador

Getty Images/hopeist

O Secure Shell (SSH) é uma daquelas ferramentas com as quais todos os usuários do Linux provavelmente trabalharão em algum momento. Com o SSH, você pode fazer login com facilidade (e segurança) em servidores e desktops remotos para administrar, desenvolver e verificar essas máquinas.

Usar o SSH é tão simples quanto:

Ou apenas:

Obviamente, você trocaria o endereço IP pelo endereço (ou domínio) da máquina que precisa acessar.

O SSH fica um pouco menos simples quando você tem várias máquinas acessadas com diferentes configurações (como diferentes nomes de usuário ou chaves de autenticação SSH). Imagine se você tivesse cerca de 20 servidores diferentes nos quais precisava fazer login diariamente. Você não apenas teria que acompanhar os endereços IP ou domínios desses servidores, mas também teria que lembrar quais nomes de usuário ou chaves de autenticação foram usados. Isso por si só poderia ser bastante opressor.

Também: Os melhores laptops Linux para consumidores e desenvolvedores

Felizmente, o SSH permite que você crie um arquivo de configuração para armazenar todas essas informações. Então, em vez de ter que digitar algo como ssh olivia@192.168.1.100 -p 2222você pode simplesmente digitar ssh web1.

Deixe-me mostrar como isso é feito.

Como criar o arquivo de configuração SSH

O que você precisará: As únicas coisas que você precisa para isso são uma máquina desktop com OpenSSH instalado e 1 ou mais servidores que permitem conexões SSH.

Faça login na máquina Linux que você usa para SSH em todas essas máquinas remotas. Abra uma janela de terminal e crie o novo arquivo de configuração com o comando mostrado em.

sshconfig1.jpg

Criando o novo arquivo de configuração SSH com a ajuda do nano.

Como este é um arquivo novo, será uma tela em branco na qual podemos começar a adicionar configurações para servidores. Digamos que você queira configurar os seguintes servidores remotos:

  • web1 em 192.168.1.100 com o usuário olivia

  • db1 em 192.168.1.101 com usuário nathan e chave SSH ~/.ssh/id_nathan

  • docker1 em 192.168.1.102 com o usuário lilly na porta 2222

Nossa primeira entrada ficará assim:

Host "web1"
     Hostname "192.168.1.100"
     User olivia

Se você salvar e fechar o arquivo neste ponto, poderá fazer SSH em 192.168.1.100 com o comando:

Vamos em frente e configurar as próximas duas entradas, que ficarão assim:

Host db1
     Hostname "192.168.1.101"
     User nathan
     IdentityFile ~/.ssh/id_nathan
     PubkeyAuthentication yes

Host docker1
     Hostname "192.168.1.102"
     User lilly
     Port 2222

Salve e feche o arquivo. Agora você pode proteger o shell nessas máquinas com os comandos:

ssh web1
ssh db1
ssh docker1

Você pode usar qualquer apelido que precisar para cada host, apenas torná-los memoráveis, para não esquecer qual máquina está tentando acessar e ter que consultar constantemente o arquivo de configuração para agitar sua memória.

Digamos, no entanto, que você use o mesmo nome de usuário em todos os seus servidores remotos, mas use um nome de usuário diferente em sua máquina local. Por exemplo, o nome de usuário da sua máquina local pode ser jack, mas você criou o usuário admin em todos os seus servidores remotos. Você pode criar uma única entrada para todos esses servidores com um curinga no endereço IP como este:

Host 192.168.1.*
User admin

A configuração acima seria colocada no topo do seu arquivo de configuração.

Você pode configurar cada servidor individualmente conforme necessário, deixando de fora a opção Usuário. Por exemplo, se ambos os servidores em 192.168.1.200 e 192.168.1.201 usarem autenticação de chave SSH, você poderá configurar entradas da seguinte forma:

Host web2
     Hostname 192.168.1.200
     IdentityFile ~/.ssh/id_admin
     PubkeyAuthentication yes

Host web3
     Hostname 192.168.1.201
     IdentityFile ~/.ssh/id_admin
     PubkeyAuthentication yes

Como aplicamos o usuário admin a toda a gama de máquinas no esquema de endereço IP 192.168.1.x, esse nome de usuário será aplicado a todas as conexões. Você também pode substituir essa configuração global adicionando uma linha de configuração do usuário conforme necessário.

Também: Pronto para abandonar o Windows para o Linux? Esta é a distro ideal para você

O arquivo de configuração SSH permite várias outras opções (todas as quais podem ser lidas na documentação oficial de configuração SSH), mas esses exemplos mostrados acima devem ser tudo o que você precisa para prosseguir com o arquivo de configuração SSH.

E isso é tudo para usar o arquivo de configuração SSH para ajudar a tornar seu acesso remoto com Secure Shell ainda mais fácil.

.

Mostrar mais

Artigos relacionados

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Botão Voltar ao topo