“ Autorizzazione negata (publickey) ” ogni volta che provo a inviare la domanda a git

Recentemente ho riscontrato un problema: ogni volta che provo a eseguire il push al repository git (nel mio caso, Bitbucket), ottengo lerrore:

$ git push origin master [email protected]: Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. 

Ho trovato un modo per risolverlo eseguendo questi comandi:

eval `ssh-agent` ssh-add -l ssh-add ~/.ssh/id_rsa 

Se lo farò e poi proverò a git push origin master, funzionerà. Ma il problema è che questo problema inizia a comparire dopo un po di tempo (probabilmente dopo il riavvio, non sono sicuro di cosa lo faccia apparire di nuovo). UPD: molto probabilmente non è causato dal riavvio, perché lho appena affrontato 10 minuti dopo aver eseguito il codice precedente e ho ricevuto lo stesso errore. Da allora non ho riavviato il mio laptop.

Cosa può causare un simile comportamento e come posso risolverlo?

Commenti

Risposta

Penso che questo accada perché quando hai generato la tua chiave ssh, hai inserito una passphrase per sicurezza. Quando avvii ssh-agent e aggiungi ssh / rsa_id dovrebbe come per la passphrase.

[root@user xxxxx]# eval "$(ssh-agent -s)" Agent pid 12082 [root@user xxxxx]# ssh-add /home/user/.ssh/id_rsa Enter passphrase for /home/user/.ssh/id_rsa: Identity added: /home/user/.ssh/id_rsa (/home/user/.ssh/id_rsa) git push -u origin master Counting objects: 94, done. 

Answer

Ok, ho dimenticato di pubblicare il problema: ho “accidentalmente impostato la mia chiave su un altro server per tutti gli host in ~/.ssh/config. Quindi lho usata per connettermi a tutti gli host invece di quello giusto. Lho cancellato per tutti gli host e lho impostato solo per quegli host che richiedevano quella chiave, e lho risolto.

Spero che possa essere utile ad altri.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *