[git] Modification marqué 'unverified' sur GitHub (résolu)

Applications, problèmes de configuration réseau
@rché0
Daikyu
Messages : 90
Inscription : jeu. 09 sept. 2021, 20:57

[git] Modification marqué 'unverified' sur GitHub (résolu)

Message par @rché0 »

Bonjour,

j'ai ce problème qui s'affiche sur les commits signés par ma clé SSH.
La clé affichée correspond bien à celle que j'ai renseigné sur le site GitHub.

Au début, j'avais mis l'adresse mail @users.noreply.github.com dans .gitconfig,
puis je l'ai remplacer par ma véritable adresse, croyant que ça venait de là. Voici le fichier :

Code : Tout sélectionner

[user]
name = ***
email = ***
signingkey = ~/.ssh/id_rsa
[url "git@github.com:"]
insteadOf = https://github.com/
[commit]
gpgsign = true
[gpg]
format = ssh
Je n'ai rien trouvé sur le web qui puisse résolver mon problème (j'ai peut-être mal chercher :pastaper: )
Si vous avez la solution, vous serrez acclamé par un grand MERCI.
Dernière modification par @rché0 le ven. 04 août 2023, 17:23, modifié 1 fois.
@rché0
Daikyu
Messages : 90
Inscription : jeu. 09 sept. 2021, 20:57

Re: [git] Modification marqué 'unverified' sur GitHub

Message par @rché0 »

Oups,

je croie bien que j'ai fourni ma clé privée :/
J'ai corrigé en mettant ~/.ssh/id_rsa.pub dans le fichier de conf et modifier ma clé sur le site.
Est-ce que ça vient de là ? Et dois-je recréer une clé pour plus de sécurité ou ce n'est pas la peine ?
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10707
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [git] Modification marqué 'unverified' sur GitHub

Message par FoolEcho »

On la refait vu que j'avais fait un laïus pour pas grand chose et que tu as posté dans l'intervalle...

Dans ta conf locale tu dois indiquer ta clé privée, c'est avec elle que tu signes.
Sur github tu dois indiquer la clé publique, qui permettra à github de vérifier la signature.

P.S. Pour mémo sinon, faut refaire une passe sur la configuration: https://docs.github.com/fr/authenticati ... rification
«The following statement is not true. The previous statement is true.» :nage:
@rché0
Daikyu
Messages : 90
Inscription : jeu. 09 sept. 2021, 20:57

Re: [git] Modification marqué 'unverified' sur GitHub

Message par @rché0 »

Dans ta conf locale tu dois indiquer ta clé privée, c'est avec elle que tu signes.
D'après GitHub, il faut renseigner la clé publique https://docs.github.com/fr/authenticat ... r-ssh-key

En attendant, j'ai voulu recréer une clé ed25519 comme expliqué sur le site mais je bloque désormais avec la commande ssh -T git@github.com, j'ai n'est pas de retour de prompt et aucune erreur qui s'affiche voici le retour après quelques temps :

Code : Tout sélectionner

ssh: connect to host github.com port 222: Connection timed out
J'ai ajouter ma clé privée avec ssh-add ~/.ssh/id_ed25519.
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17238
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [git] Modification marqué 'unverified' sur GitHub

Message par benjarobin »

Bonjour, pourquoi le port 222 ?
Sinon clairement il faut spécifier le chemin de la clé (publique ou privé), de plus j’utiliserais le chemin absolue, sans utilisation de ~ (tilde) : https://docs.github.com/en/authenticati ... ur-ssh-key
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
@rché0
Daikyu
Messages : 90
Inscription : jeu. 09 sept. 2021, 20:57

Re: [git] Modification marqué 'unverified' sur GitHub

Message par @rché0 »

Salut@benjarobin,

c'est un port pris comme ça, c'est pour éviter le 22 connu.
Effectivement, c'est le chemin absolue que j'utilise, je ne voulais pas mettre mon nom :)

Code : Tout sélectionner

ssh -T git@github.com -v
OpenSSH_9.3p2, OpenSSL 3.1.2 1 Aug 2023
debug1: Reading configuration data ~/.ssh/config
debug1: ~/.ssh/config line 7: Applying options for github.com
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Connecting to github.com [140.82.121.3] port 223.
debug1: connect to address 140.82.121.3 port 223: Connection timed out
ssh: connect to host github.com port 223: Connection timed out
J'ai changer le port mais je n'ai pas cette connection :/
J'ai fouillé dans /etc/ssh/ssh_config et .ssh/config. Je n'ai rien vu.

J'ai modifier quelques fichiers dans /etc ?

EDIT :ça marche avec le port d'origine 22 :bravo:

@ben : pense-tu que désormais mes modifications seront signée ?
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17238
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [git] Modification marqué 'unverified' sur GitHub

Message par benjarobin »

Ce n'est pas toi qui choisi le port, tu es le client, tu n'es pas un serveur. Donc c'est forcément le port 22, car github (le serveur) écoute uniquement sur le port 22 pour une connexion ssh.
Je ne sais pas si tes modifications seront signées car je n'ai pas ta vrai configuration. Le mieux est de tester dans une branche
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
@rché0
Daikyu
Messages : 90
Inscription : jeu. 09 sept. 2021, 20:57

Re: [git] Modification marqué 'unverified' sur GitHub

Message par @rché0 »

Re,

malheureusement, c'est toujours marqué unverified.
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17238
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [git] Modification marqué 'unverified' sur GitHub

Message par benjarobin »

Tu as bien spécifié la clé publique dans la configuration de ton profil de github ?
Sans savoir ce que tu as fait, ta configuration, bref, sans aucune information c'est impossible de t'aider
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
@rché0
Daikyu
Messages : 90
Inscription : jeu. 09 sept. 2021, 20:57

Re: [git] Modification marqué 'unverified' sur GitHub

Message par @rché0 »

Oui et la modification apportée dans la branche test est noté comme la clé fournie à github, mon .gitconfig :

Code : Tout sélectionner

[user]
name = ***
email = ***
signingkey = /home/***/.ssh/id_ed25519.pub
[url "git@github.com:"]
insteadOf = https://github.com/
[commit]
gpgsign = true
[gpg]
format = ssh
Dernière modification par @rché0 le jeu. 03 août 2023, 22:36, modifié 1 fois.
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17238
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [git] Modification marqué 'unverified' sur GitHub

Message par benjarobin »

Tu as bien copier-coller le contenu du fichier id_ed25519.pub dans ton profil de github ? Désolé je repose la même question posée différemment.
As tu bien fait des commits avec cette nouvelle clé ssh ?
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
@rché0
Daikyu
Messages : 90
Inscription : jeu. 09 sept. 2021, 20:57

Re: [git] Modification marqué 'unverified' sur GitHub

Message par @rché0 »

Quand j'ai poussé sur la branche test, le mot de passe de la clé ne m'a pas été demandé. Pourtant, j'en ai recrée une aujourd'hui avec mpd.

Code : Tout sélectionner

git commit -m 'test'
[test d685f32] test
 1 file changed, 3 insertions(+)


Code : Tout sélectionner

git push --set-upstream origin test
Énumération des objets: 5, fait.
Décompte des objets: 100% (5/5), fait.
Compression par delta en utilisant jusqu'à 8 fils d'exécution
Compression des objets: 100% (3/3), fait.
Écriture des objets: 100% (3/3), 508 octets | 508.00 Kio/s, fait.
Total 3 (delta 2), réutilisés 0 (delta 0), réutilisés du pack 0
remote: Resolving deltas: 100% (2/2), completed with 2 local objects.
remote: 
remote: Create a pull request for 'test' on GitHub by visiting:
remote:      https://github.com/***/***/pull/new/test
remote: 
To github.com:***/***.git
 * [new branch]      test -> test
la branche 'test' est paramétrée pour suivre 'origin/test'.
J'ai bien mis le résultat de less .ssh/id_ed25519.pub dans la config de github. Comme dit, le commit crée sur la branche test à bien le hash de celle mise sur le site :/
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17238
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [git] Modification marqué 'unverified' sur GitHub

Message par benjarobin »

Pour être triplement sûr, car je pense que tu ne l'as pas fait. Tu mélanges 2 types de clé SSH : La clé d'authentification et la clé de signature (après tu peux utiliser la même pour les 2).
Peux tu aller ici : https://github.com/settings/keys et vérifier que tu as bien dans la section "SSH keys" une clé dans la sous section "Signing keys", ne pas confondre avec la sous section "Authentication Keys"
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10707
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [git] Modification marqué 'unverified' sur GitHub

Message par FoolEcho »

benjarobin a écrit : jeu. 03 août 2023, 21:20 Bonjour, pourquoi le port 222 ?
Sinon clairement il faut spécifier le chemin de la clé publique : https://docs.github.com/en/authenticati ... ur-ssh-key
Par contre j’utiliserais le chemin absolue, sans utilisation de ~
Sauf que leur doc est fausse sur ce point.
Tu signes nécessairement avec ta clé privée et tu déchiffres avec la publique.
Donc en local c'est bien la clé privée qu'il faut indiquer.
Et sur github la clé publique pour vérifier la signature (j'ignore si on peut indiquer la privée comme ça peut se faire depuis gitlab par exemple, mais bref).

Sinon ça n'aurait aucun sens: n'importe qui pourrait récupérer ta clé publique et signer n'importe quoi en ton nom.

D'ailleurs cf. la doc côté gitlab sur ce point : https://docs.gitlab.com/ee/user/project ... ur-ssh-key .
«The following statement is not true. The previous statement is true.» :nage:
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17238
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [git] Modification marqué 'unverified' sur GitHub

Message par benjarobin »

FoolEcho a écrit : jeu. 03 août 2023, 22:58Sauf que leur doc est fausse sur ce point.
Alors certes je suis d'accord avec toi pour la logic, mais cela fonctionne de mettre le chemin vers la clé publique... Et oui cela n'a aucun sens, on est d'accord (j'ai édité mon précédent message pour éviter toute confusion). Je suppose qu'il ont du gérer la chose, ainsi tu peux mettre les 2, il détecte la présence du .pub et l'enlève afin de trouver la clé privé (voir message ci-dessous, ce n'est pas comme cela que cela fonctionne).
Edit: Je viens de vérifier, et les 2 configurations sont fonctionnelles. Et mettre un chemin vers un fichier inexistant échoue bien.
Edit2: Ici le problème n'est pas le fait de ne pas arriver à signer un commit, mais le fait que Github indique "unverified" sur le commit
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
@rché0
Daikyu
Messages : 90
Inscription : jeu. 09 sept. 2021, 20:57

Re: [git] Modification marqué 'unverified' sur GitHub

Message par @rché0 »

@FoolEcho,

j'ai modifier le .gitconfig, mais c'est pareil.

Si tu penses au .ssh/config :

Code : Tout sélectionner

Host                  github.com
IdentityFile          /home/***/.ssh/id_ed25519
User                  ***
IdentitiesOnly        yes
StrictHostKeyChecking yes

Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17238
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [git] Modification marqué 'unverified' sur GitHub

Message par benjarobin »

Comme je te l'indique ton problème n'est pas le fait de ne pas arriver à signer un commit, mais le fait que Github indique "unverified" sur le commit.
Ici tu arrives à signer, donc à moins de ne pas utiliser la bonne clé pour signer, ton problème est dans la configuration de Github !!! Voir mon message qui explique de vérifier ton profil github.
Peux tu faire un screenshot de la page : https://github.com/settings/keys ?
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10707
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [git] Modification marqué 'unverified' sur GitHub

Message par FoolEcho »

benjarobin a écrit : jeu. 03 août 2023, 23:00
FoolEcho a écrit : jeu. 03 août 2023, 22:58Sauf que leur doc est fausse sur ce point.
Alors certes je suis d'accord avec toi pour la logic, mais cela fonctionne de mettre le chemin vers la clé publique... Et oui cela n'a aucun sens, on est d'accord. Il ont du gérer la chose, ainsi tu peux mettre les 2, il détecte la présence du .pub et l'enlève afin de trouver la clé privé.
Edit: Je viens de vérifier, et les 2 configurations sont fonctionnelles. Et mettre un chemin vers un fichier inexistant échoue bien.
Edit2: Ici le problème n'est pas le fait de ne pas arriver à signer un commit, mais le fait que Github indique "unverified" sur le commit
Mouais c'est de la bidouille à mon sens leur truc... dans les faits ça semble bien la clé publique dont il faut indiquer le chemin. Mais visiblement c'est derrière soit par un agent ssh ou pour un prompt pour accéder à la clé privée et signer (cf. https://wenijinew.medium.com/git-how-to ... 4661beddf5) ... Un gros raccourci.
benjarobin a écrit : jeu. 03 août 2023, 23:00 Edit2: Ici le problème n'est pas le fait de ne pas arriver à signer un commit, mais le fait que Github indique "unverified" sur le commit
Alors désolé mais pas d'accord. On n'a pas vu l'ombre d'un commit signé ici.
Avant d'envoyer sur le github faudrait déjà vérifier en local si le commit est bien signé (nous on n'en sait rien on parle dans le vide -> si ce n'est pas signé, c'est sûr que github n'a rien à vérifier). Il faut vérifier qu'il y a bien présence de la partie signature via:

Code : Tout sélectionner

git log --show-signature
«The following statement is not true. The previous statement is true.» :nage:
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17238
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [git] Modification marqué 'unverified' sur GitHub

Message par benjarobin »

FoolEcho a écrit : jeu. 03 août 2023, 23:15Alors désolé mais pas d'accord. On n'a pas vu l'ombre d'un commit signé ici.
Par défaut, à moins d'avoir cocher la case "Vigilant mode -> Flag unsigned commits as unverified", il n'y a le flag "unverified" que sur les commit signés (qui n'ont pas pu être vérifiés).
De plus au vu de la configuration de son git qu'il a partagée, cela demande de signer, si cela échoue, le commit n'est pas créé, donc je suis assez persuadé que c'est OK.
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17238
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [git] Modification marqué 'unverified' sur GitHub

Message par benjarobin »

FoolEcho a écrit : jeu. 03 août 2023, 23:15Mouais c'est de la bidouille à mon sens leur truc... dans les faits ça semble bien la clé publique dont il faut indiquer le chemin.
J'ai essayé de creuser le sujet, on peut bien spécifier la clé publique, voir https://dev.to/li/correctly-telling-git ... mmits-4c2c
Je suis maintenant perplexe de comment cela fonctionne...

Edit : Ok, l'explication est dans la documentation de Git (https://git-scm.com/docs/git-config#Doc ... signingKey), en gros cela ne fonctionne avec la clé publique que si tu as un agent ssh, ce qui a l'air d'être le cas de @rché0 car il ne doit plus saisir la passphrase de la clé privée.

Note : @rché0 Cette discussion est hors sujet, elle est principalement avec FoolEcho, je répète ce n'est pas ton souci, il est inutile d'embêter avec cela :-)
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Répondre