• # Client GitHub et serveur à la fois ?

    Posté par  . Évalué à 2.

    Ce genre d'article est très intéressant.

    Mais quand je regarde ce que je fais, de manière complètement ingénue :

    • Ma clé SSH de base est utilisée sur mon ordinateur pour me connecter à mes serveurs
    • Mes clé GitHub/Gitlab ont des noms différents, je les configure donc dans le ~/.ssh/config
    • Mon serveur n'est pas mon ordinateur, il n'a pas mes clés publiques SSH GitHub/Gitlab

    Je me demande du coup qui possède son serveur SSH publiquement accessible sur une machine qui fait aussi du push ?

    • [^] # Re: Client GitHub et serveur à la fois ?

      Posté par  . Évalué à 2.

      En fait, dans ce cas là, c'est un peu différent. Tu arrives sur un serveur que tu ne connais pas, et qui ne te connais pas. Dans ce cas, ton client va essayer de présenter au serveur toutes les clefs publiques qu'il connaît (présentes dans ton ~/.ssh) pour voir s'il y en a une qui matche pour lancer l'authentification. Pour chacune de ces clefs, le serveur en extrait les informations disponibles et cherche des sources publiques qui exposent ces clefs pour te redonner les informations publiques qu'il a pu déduire de ce qu'il a trouvé (ton profil github, par exemple).

      Donc, sauf si tu stockes tes clefs ailleurs, le fait que tu utilises des clefs différentes pour tes clefs GitHub/Gitlab et sur tes serveurs ne change rien à ce qui est démontré par ce site.

      • [^] # Re: Client GitHub et serveur à la fois ?

        Posté par  . Évalué à 2.

        Un certain nombre de clés sont essayées par défaut :

        debug1: Will attempt key: /home/user/.ssh/id_rsa RSA SHA256:Ct1TO[…]
        debug1: Will attempt key: /home/user/.ssh/id_ecdsa 
        debug1: Will attempt key: /home/user/.ssh/id_ecdsa_sk 
        debug1: Will attempt key: /home/user/.ssh/id_ed25519 
        debug1: Will attempt key: /home/user/.ssh/id_ed25519_sk 
        debug1: Will attempt key: /home/user/.ssh/id_xmss 
        
        […]
        
        debug1: Trying private key: /home/user/.ssh/id_ecdsa
        debug1: Trying private key: /home/user/.ssh/id_ecdsa_sk
        debug1: Trying private key: /home/user/.ssh/id_ed25519
        debug1: Trying private key: /home/user/.ssh/id_ed25519_sk
        debug1: Trying private key: /home/user/.ssh/id_xmss
        

        Plus celle que j'ai ajoutée dans mon ssh-agent. Les autres ne sont pas présentées. Donc ma clé nommée id_rsa_github_glandos.pub n’est jamais envoyée. Ou alors ssh -v me ment.

        • [^] # Re: Client GitHub et serveur à la fois ?

          Posté par  (site web personnel, Mastodon) . Évalué à 2.

          Comme il dit, il faudrait que la clef soit dans ton ~/.ssh/ ; est-ce le cas de ton id_rsa_github_glandos.pub ?
          Ceci dit, la condition n'est pas suffisante car il ne peut pas savoir tout ce qui est clef utilisable ou pas (même en se basant sur l'extension on ne sait pas si c'est une vieille clef qui n'est plus utilisée mais pas supprimée par exemple.) Je pense que c'est juste les clefs par défaut pour chaque algo actif (et qui sont nommés id_$algo …mais mon hypothèse se heurte à l'étrange id_xmss que je ne connait pas) Je regarde le manpage plus tard.

          “It is seldom that liberty of any kind is lost all at once.” ― David Hume

        • [^] # Re: Client GitHub et serveur à la fois ?

          Posté par  . Évalué à 3.

          Au temps pour moi, j'étais persuadé que le client essaiyait toutes les clefs dans .ssh. Merci pour les précisions.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.