DEV Community

Cover image for Introdução ao SSH
Fernanda Kipper
Fernanda Kipper

Posted on

Introdução ao SSH

O SSH desempenha um papel fundamental na segurança e na administração de sistemas e serviços online e por isso se tornou uma tecnologia necessária para os desenvolvedores.

Neste artigo, vamos entender os conceitos básicos que envolvem o protoloco SSH, entendendo os principais comandos e sair daqui sabendo utilizá-lo no nosso dia-a-dia!

O que é SSH

SSH, ou Secure Shell, é um protocolo de comunicação que permite a conexão segura entre dois computadores, possibilitando a transferência de dados e a execução de comandos à distância. Em muitos aspectos, o SSH é semelhante ao HTTP, um protocolo amplamente utilizado na web. No entanto, a principal diferença que distingue o SSH é a segurança que oferece.

Comunicação segura

O grande diferencial do SSH é a encriptação dos dados transmitidos entre os dois computadores. Isso significa que qualquer informação enviada ou recebida através de uma conexão SSH é codificada, tornando-a praticamente impenetrável para interceptações não autorizadas.

Como funciona

O SSH utiliza um mecanismo de chaves pública e privada para autenticar e proteger as conexões.
Esse método de autenticação garante que apenas as partes autorizadas tenham acesso aos sistemas envolvidos.

As chaves pública e privada agem como um sistema de bloqueio e chave, onde a chave privada é mantida em segredo pelo dono e a chave pública é compartilhada com o servidor SSH.

Image description

Usos Comuns do Protocolo SSH

Uma das aplicações mais comuns do SSH é permitir o acesso remoto a servidores e computadores. Isso é especialmente útil em ambientes de servidores e nuvem, como por exemplo instâncias EC2 da AWS, onde nós podemos nos conectar a instâncias remotas para gerenciá-las.

Outros usos incluem: Transferência de Arquivos Segura, Túneis Seguros....

Começando com SSH

Listando suas chaves SSH

Quando você gera chaves SSH, elas são armazenadas por padrão na pasta .ssh no diretório do seu usuário. Para listar todas as chaves SSH disponíveis, você pode usar o seguinte comando no seu terminal:

LINUX e MacOS

ls ~/.ssh
Enter fullscreen mode Exit fullscreen mode

Windows

dir ~/.ssh
Enter fullscreen mode Exit fullscreen mode

Este comando listará os arquivos na pasta .ssh, que geralmente podem ser os seguintes tipos de arquivos:

  • id_rsa: Sua chave privada RSA.
  • id_rsa.pub: Sua chave pública RSA correspondente.
  • id_dsa: Sua chave privada DSA (se você a gerou).
  • id_dsa.pub: Sua chave pública DSA correspondente.
  • Outros arquivos, dependendo de como você configurou suas chaves SSH.

Gerando uma Chave SSH

1. Instalando o Cliente SSH

O primeiro passo é garantir que você tenha um cliente SSH instalado em seu computador. Os clientes SSH estão disponíveis para Mac, Windows e Linux. Você pode encontrar links para download nos seguintes sites:

OpenSSH para Windows: Instale aqui se você for usuário do Windows.

OpenSSH para Linux: A maioria das distribuições Linux já inclui o OpenSSH, portanto, você não precisa instalá-lo separadamente.

OpenSSH para Mac: O macOS também inclui o OpenSSH. Portanto, você pode prosseguir para o próximo passo.

2. Gerando o Par de Chaves SSH

Com o cliente SSH instalado, abra o seu terminal e execute o seguinte comando:

ssh-keygen
Enter fullscreen mode Exit fullscreen mode

Quando você executar este comando, o utilitário ssh-keygen iniciará o processo de geração de chaves. Ele solicitará que você indique onde deseja armazenar as chaves. Por padrão, as chaves são armazenadas na pasta .ssh em seu diretório de usuário.

O utilitário ssh-keygen também solicitará que você defina uma senha para proteger sua chave privada. Embora seja opcional, é altamente recomendável definir uma senha para aumentar a segurança.

IMPORTANTE: O uso de uma senha para proteger sua chave privada é altamente recomendado, pois adiciona uma camada adicional de segurança. Mesmo com acesso ao seu computador, sem a senha não é possível utilizá-la.

Recuperando sua chave pública

Após gerar o par de chaves, você pode recuperar a chave pública, que é a parte que você compartilhará com servidores e serviços que deseja acessar com SSH como AWS e GitHub.

Para copiar a chave pública para sua área de transferência, execute o seguinte comando:

No macOS e Windows:

pbcopy < ~/.ssh/id_rsa.pub
Enter fullscreen mode Exit fullscreen mode

No Linux:

cat ~/.ssh/id_rsa.pub
Enter fullscreen mode Exit fullscreen mode

A chave privada (id_rsa) permanecerá armazenada em seu computador e nunca deve ser compartilhada com ninguém.

That's all, folks!

Obrigada por ter lido até aqui e espero que o post tenha te ajudado a entender mais sobre o protocolo 💜

Top comments (0)