Estou tentando usar uma chave de curva elíptica recém-gerada com o controle de versão git para o GitLab.
Normalmente eu faço:
ssh-add -D # to be sure no other identities are used than the one I add
ssh-add ~/.ssh/my-rsa-key
git add ...
git commit ...
git push ...
Em seguida, a coisa do porta-chaves pediria novamente a senha da chave para armazená-la para a sessão e eu poderia pressionar e puxar sem precisar adicionar nenhuma chave novamente ou digitar a senha novamente.
No entanto, com as chaves da curva elíptica, parece que não funciona. Primeiro de tudo, não consigo ssh-add
a chave:
ssh-add ~/.ssh/id_ed25519
Enter passphrase for /home/user/.ssh/id_ed25519: # here I enter my password
Could not add identity "/home/user/.ssh/id_ed25519": communication with agent failed
No entanto, quando não removi todas as identidades e não usei ssh-add <key>
e cancelei a inserção de uma senha para o conjunto de chaves para outras chaves (rsa), fui solicitado a digitar a senha da chave de curva elíptica na linha de comando e quando eu entrei lá, eu poderia empurrar ou puxar do meu repositório. O problema é que eu tenho que inserir minha senha em todas as interações com o gitlab e meu repositório. Então eu tentei configurar meu ~/ssh/config
para não solicitar senha o tempo todo:
Host gitlab.com
User "user"
PreferredAuthentications publickey,password
IdentityFile /home/user/.ssh/id_ed25519
IdentitiesOnly yes
AddKeysToAgent yes
Mas isso também não funciona, fica me incomodando com a senha em cada puxada ou push.
Como posso adicionar as chaves como faço com as chaves RSA, para que eu não tenha que digitar a senha o tempo todo?