2 votes

Comptes GitLab multiples SSH

Je possède plusieurs comptes GitLab et j'essaie de configurer l'authentification SSH. J'ai généré les paires de clés et les ai enregistrées dans le dossier ~/.ssh/public/proj1[2]/id_rsa.pub y ~/.ssh/private/proj1[2]/id_rsa Mon ~/.ssh/config ressemble à ceci

Host proj1
  HostName gitlab.com
  AddKeysToAgent yes
  UseKeychain yes
  User git
  IdentityFile ~/.ssh/private/proj1/id_rsa

Host proj2
  HostName gitlab.com
  AddKeysToAgent yes
  UseKeychain yes
  User git
  IdentityFile ~/.ssh/private/proj2/id_rsa

maintenant quand j'essaie de cloner un dépôt de proj1 comme git clone git@proj1:user_and_stuff.git Je reçois une erreur indiquant que je n'ai pas les privilèges suffisants. J'ai activé l'option -vv dans le ssh de git et d'abord il identifie correctement la clé

debug1: Reading configuration data /Users/user/.ssh/config
debug1: /Users/user/.ssh/config line 1: Applying options for proj1
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 48: Applying options for *
debug1: Connecting to gitlab.com port 22.
debug1: Connection established.
debug1: identity file /Users/user/.ssh/private/proj1/id_rsa type -1
debug1: identity file /Users/user/.ssh/private/proj1/id_rsa-cert type -1

mais quelques lignes plus tard, sortant de nulle part.

debug1: Will attempt key: /Users/user/.ssh/private/proj2/id_rsa RSA SHA256:fp agent
debug1: Will attempt key: unrelated_key1 RSA SHA256:fp agent
debug1: Will attempt key: unrelated_key2 RSA SHA256:fp agent
debug1: Will attempt key: /Users/user/.ssh/private/proj1/id_rsa  explicit

il propose d'abord la mauvaise clé et comme proj2 est aussi un compte gitlab il s'authentifie avec succès. Ce qui génère bien sûr l'erreur de permission car il tente de cloner proj1 alors qu'il est authentifié avec la clé de proj2.

Un conseil ? J'utilise mac OS.

0voto

ppribeli Points 21

Il semble que l'agent mac ssh ne soit pas capable d'utiliser des clés spécifiques pour des serveurs spécifiques. Nous avons résolu le problème en supprimant toutes les clés de l'agent. ssh-add -D et en supprimant la ligne AddKeysToAgent yes de la ~/.ssh/config pour empêcher l'ajout des clés à l'agent.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X