SSH básico

SSH básico

Olá Dev! tudo bom?

Hoje irei falar um pouco sobre SSH. Lembrando que, eu não sou nenhum especialista, porém, tenho algum conhecimento básico pra ir se virando na medida do possível, e estarei passando esse conhecimento agora neste artigo.

SSH - O que é?

Bom, bem superficialmente, o SSH (Secure Shell) é um protocolo de acesso a rede, de forma criptografada e que normalmente utilizamos para acessar remotamente os servidores.

HABILITAR SSH

Provavelmente o SSH já está habilitado em seu Linux. Porém, caso não esteja, pode-se instalar dessa forma:

Instalação no Linux e no WSL do Win10

Para habilitar o SSH em qualquer máquina ubuntu, é bem simples, basta ter o openssh-server instalado na máquina.

Para instalar digite no terminal da máquina vc deseja ter acesso:

sudo apt-get install openssh-server

após, verifique se o serviço está rodando com:

sudo service ssh status

CHAVES SSH

São utilizadas as chaves SSH, para autenticar o acesso a algum servidor, ou serviços, como por exemplo o github.

Funciona da seguinte forma: É gerado um par de chaves, sendo uma chave pública e outra privada, onde a chave pública só pode ser aberta com a chave privada e vice-versa. Na prática, após gerar seu par de chaves, você irá enviar a chave publica pro seu github, ou servidor, e sempre que você for acessar ou utilizar um serviço de acesso por ssh, o seu ssh-agent irá fazer sua autenticação por meio de sua chave privada.

GERANDO CHAVER PARA LINUX OU WSL.

Para ver se existem chaves já geradas, vá na pasta ~/.ssh/

Se você não tem chaves já geradas, faça os seguintes passos:

  • Abra Terminal.

  • Cole o texto abaixo, substituindo o endereço de e-mail pelo seu endereço de e-mail.


~$ ssh-keygen -t ed25519 -C "SEUEMAIL@exemplo.com"

O comando criará uma nova chave SSH, usando o e-mail fornecido como uma etiqueta.


> Generating public/private ed25519 key pair.

  • Quando aparecer a solicitação “Enter a file in which to save the key” (Insira um arquivo no qual salvar a chave), presssione Enter. O local padrão do arquivo será aceito.

> Enter a file in which to save the key (/home/you/.ssh/id_ed25519): [Press enter]

  • Digite uma frase secreta segura no terminal, ou apenas digite enter.

> Enter passphrase (empty for no passphrase): [Type a passphrase]

> Enter same passphrase again: [Type passphrase again]

Adicionar sua chave SSH ao ssh-agent

Antes de adicionar uma nova chave SSH ao ssh-agent para gerenciar suas chaves, você deve ter verificado a existência de chaves SSH e gerado uma nova chave SSH.

  • Inicie o ssh-agent em segundo plano.

~$ eval  "$(ssh-agent -s)"

> Agent pid 59566

  • Adicione sua chave SSH privada ao ssh-agent.

~$ ssh-add ~/.ssh/id_ed25519

Após essas etapas, basta copiar sua chave publica que está no diretório ~/.ssh/ e coloca-la no seus serviços onde necessário.

  • OBS.: FAÇA BACKUP DE SUA CHAVE PRIVADA E NUNCA A COMPATILHE COM NINGUÉM!

Adicionando sua chave SSH ao servidor para acesso remoto

Após seu par de chaves gerados, você pode enviar sua chave publica para os servidores que deseja ter acesso para que não precise colocar a senha toda vez que for conectar, pois nesses casos, sua senha será sua chave privada ssh.


ssh-copy-id user@host

Após essa etapa, será solicitado a senha de usuário do host que está sendo enviada a chave publica; coloque a senha e pronto, sua chave publica já está cadastrada no host.

OBS.: Obviamente, caso perca sua chave privada, não tem como recuperar por meio de sua chave pública, ou seja, deve-se gerar um novo par de chaves e enviar a nova chave publica para o servidor que deseja ter acesso.

Comentários

Postagens mais visitadas deste blog

Iniciando no Python

Jenkins