Tutorial como criar chave SSH (SSH key) pro gitlab ou github no mac osx ou linux

Objetivo

Fazer conexões automáticas no gitlab ou github com git pull, git push, git clone usando o protocolo SSH sem a necessidade de informar senha. Também útil na utilização de webhook que atualiza o software no servidor, sempre que há um commit na branch master.

O que será necessário?

  1. Acesso ao terminal (linha de comando)
  2. Uma conta no GITLAB ou GitHub
  3. Um repositório já criado
  4. Uma conta de email já registrada no GitHub ou no seu perfil do GITLAB

Como configurar a nova chave SSH, para autenticação automática e inserir no github / gitlab?

PASSO 1: Abrir o aplicativo terminal com o usuário desejado

Abra o aplicativo terminal, e tenha certeza que esteja utilizando o usuário correto que deseja realizar a autenticação. Lembre-se de não utilizar o usuário root.

PASSO 2: Criar uma nova chave ssh

Digite no terminal o comando, substituindo o email, pelo seu email registrado no perfil do github/gitlab:

ssh-keygen -t rsa -b 4096 -C "meu-email@email.com.br"

Selecione o local onde deseja salvar a chave. Se apertar enter (sem escrever nada), ela será salva na sua pasta home, podendo ser:

No Linux e MAC OS, o caminho fica:

~/.ssh/id_rsa.pub

No Windows:

C:\Users\nomedoseuusuario\id_rsa.pub

Selecione uma senha (passphrase), para adicionar uma camada extra de segurança para sua chave, porém esta etapa é opcional. Você só irá precisar lembrar desta senha quando desejar alterá-la. Não é necessário lembrar e escrever ela toda vez que fizer a autenticação automática.

Será perguntando novamente a senha, para confirmação.

Será gerado então uma impressão digital do seu computador/servidor (key fingerprint).

PASSO 3: Copiar a chave SSH (SSH key) para seu GitHub / GITLAB

Para poder cadastrar sua chave no Gitlab ou github, você precisa acessar o arquivo id_rsa.pub (que é sua chave pública) , copiar todo seu interior e inserir na página de chaves. Digite o comando para mostrar na tela sua chave gerada:

No Linux e MAC OS, o camando é:

cat  ~/.ssh/id_rsa.pub

No Windows:

type "c:\Users\nomedoseuusuario\.ssh\id_rsa.pub"

O início da chave deve começar com ssh-rsa e terminar com o seu email escolhido.

Algoritmo ed25519

Uma alternativa para criação de chave SSH é utilizar o algoritmo ed25519 ao invés de RSA. Para criar o par de chaves com este algoritmo, utilize o comando:

ssh-keygen -t ed25519 -C "meu-email@email.com.br"

O caminho para a chave pública é o mesmo, mas agora ela possui o nome vinculado ao algoritmo:
No linux e Mac OS:

~/.ssh/id_ed25519.pub

No Windows:

C:\Users\nomedoseuusuario\id_ed25519.pub

Para ver o conteúdo da chave pública, utilize o comando:

Caso esteja utilizando Linux ou Mac OS:

cat  ~/.ssh/id_ed25519.pub

Agora se está utilizando o Windows, use o comando:

type "c:\Users\nomedoseuusuario\.ssh\id_ed25519.pub"

Caso tenha alguma dúvida ou sugestão, escreve aí nos comentários! Farei o possível para responder!