Cum semnezi commit-urile git cu Yubikey

  • 1 minute de citit
  • 3 imagini

Disponibil și în English

Pe această pagină

Introducere

Dacă știi deja ce este un Yubikey, poți sări peste această secțiune.

Yubikey este un dispozitiv destul de scump care funcționează ca o cheie GPG portabilă. Este considerat sigur deoarece, odată ce cheia GPG privată se află pe dispozitiv, nu mai poate fi extrasă (decât dacă cineva găsește o metodă).

Poți importa propriile chei GPG generate sau poți genera o pereche nouă de chei direct pe Yubikey.

Yubikey poate face mult mai mult decât să stocheze o cheie GPG. Poate face autentificare în doi pași cu site-uri precum Google, Github sau Dropbox. Lista completă a site-urilor suportate este disponibilă pe site-ul oficial. Le poți folosi și cu telefonul mobil, dacă ai NFC: când te autentifici în Google cu datele tale, dacă NFC este activat, telefonul îți cere să apropii Yubikey de senzorul NFC, ca să poată comunica cu el. Dacă nu ai NFC, site-ul va folosi o altă metodă de autentificare în doi pași pe care ai activat-o pentru contul tău.

Poți folosi Yubikey și pentru a te autentifica pe mașini remote prin ssh sau pe laptop, dar asta este cam riscant dacă ai doar o cheie, pentru că, dacă pierzi cheia, ești blocat afară din propriile dispozitive și servere, decât dacă ai un al doilea Yubikey de rezervă.

Poți personaliza aproape complet Yubikey folosind gpg --card-edit când Yubikey este conectat. Iată rezultatul comenzii pe mașina mea:

1.png

Semnarea commit-urilor git

Dacă vrei să ai lângă commit-ul tău o insignă elegantă cu mesajul „Verified”, urmează acești pași:

  1. Generează perechea de chei GPG pe Yubikey. Rulează: gpg --card-edit, apoi admin ca să permiți comenzile de administrare. Vezi dacă poți găsi comanda potrivită folosind help pentru a-ți genera cheile.
  2. Mergi la Github->Settings->Security și adaugă acolo cheia ta publică.

2.png

  1. Configurează cheia de semnare.

4. Verifică-ți commit-urile când faci commit cu flag-ul -S. Dacă ai deja un commit, poți scrie: git commit --amend -S --no-edit ca să-l verifici.

  1. Fă push la commit.

3.png

Insigna „Verified” demonstrează că tu, și numai TU, ai făcut commit-ul. Dacă cineva îți preia contul de Github și încearcă să împingă un commit malițios, poate face asta, dar nu poate să-l verifice. Astfel, dacă lucrezi la un proiect cu securitate ridicată, tu și echipa ta puteți avea reguli care cer ca fiecare commit să fie verificat cu o cheie GPG personală.

Dacă îți place ce scriu pe blog, mă poți urmări pe Twitter

Mulțumesc pentru lectură!