Skip to content

Instantly share code, notes, and snippets.

@luanalessa
Last active November 8, 2023 16:00
Show Gist options
  • Save luanalessa/0e03f115f199fb6d9c9984e23f06d529 to your computer and use it in GitHub Desktop.
Save luanalessa/0e03f115f199fb6d9c9984e23f06d529 to your computer and use it in GitHub Desktop.

📗 GitHub - Conexão SSH

Usando o protocolo SSH, você pode se conectar e autenticar sevidores e serviços remotos. Gerando uma chave SSH você pode se conectar com o GitHub sem precisar inserir seu usuário e chave de acesso em cada conexão.

🔻 Passo a passo para configurar SSH no GitHub via terminal (Git Bash)

  1. Gerar chaves pública e privada, usando seu email do GitHub:
$ ssh-keygen -t ed25519 -C "fulanodetal@email.com"

# Saída : Generating public/private ed25519 key pair.

  1. Confirme os proximo passos, adicionar uma senha a conexão SSH é opcional. A resposta deverá ser semelhante ao exemplo:
# Saída : 
Your identification has been saved in /root/.ssh/id_ed25519
Your public key has been saved in /root/.ssh/id_ed25519.pub
The key fingerprint is:
SHA256:YzX9kjuahs789ha+mJkOJkU897GfDo36paHg67HnBdAc fulanodetal@email.com

  1. Inicie o ssh-agent
$ eval "$(ssh-agent -s)"

  1. Adicione a chave privada.
$ ssh-add /root/.ssh/id_ed25519

⚠️ Se não conseguir abrir a conexão para autenticar o agente, rode o seguinte comando e repita o passo 4:

$ exec ssh-agent bash # ou exec ssh-agent zsh

# Saída esperada: Identity added: /root/.ssh/id_ed25519 (lessalsn@gmail.com)

  1. Copie a chave pública:
$ cat ~/.ssh/id_ed25519.pub

# Saída esperada: ssh-ed25519 YzX9kjuahs789ha+mJkOJkU897GfDo36paHg67HnBdJSAAJSIJIJASIJ8798ASHvgvAc fulanodetal@email.com

  1. Adicione nas configurações do GitHub : Profile > Settings > SSH and GPG keys

  1. Teste a conexão:
$ ssh -T git@github.com
# Saída: Hi fulanodetal! You've successfully authenticated, but GitHub does not provide shell access.

Pronto, agora quando for adicionar o endereço do repositório remoto , use o protocolo SSH ao invés do HTTPS.

$ git remote add origin git@github.com:fulanodetal/meuprojeto.git


🚩 Aleḿ desses dois protocolos o Git também possui o seu próprio e foi desenvolvido para ter mais velocidade que os outros. Este é o protocolo mais rápido, mas pode ter problemas com firewalls, já que ele utiliza uma porta sem tráfego de rede normalmente.

$ git remote add origin git@github.com/fulanodetal/meuprojeto.git

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment