Klonowanie repozytorium z GitHub za pomocą autoryzacji kluczem SSH


15 października 2020 / Michał Kortas


Każdy potrafi sklonować repozytorium z GitHuba przez HTTPS. Po czym jednak poznać prawdziwego master-developera? Autoryzuje się za pomocą klucza SSH! Oczywiście trochę żartuję, jednak jest to umiejętność, którą warto poznać, znać i stosować. Przemawiają za tym choćby względy bezpieczeństwa – nigdzie nie musimy podawać loginu i hasła do konta na GitHub.

Generowanie klucza SSH

W zależności od systemu operacyjnego i użytego narzędzie, generowanie klucza może się nieznacznie różnić.

Windows

Jeśli korzystamy z Windowsa, można to zrobić za pomocą PuTTygena. Alternatywnie można skorzystać np. z GitBash – co zaraz pokażę. Jeśli jesteś aktywnym developerem, masz go prawdopodobnie zainstalowanego na swoim PC.

Przejdźmy więc do swojego katalogu użytkownika, utwórzmy w nim nowy katalog .ssh i wejdźmy do niego.

Następnie wpiszemy komendę:

Odpali ona niewielki kreator klucza.

  1. Najpierw pojawi się pytanie, w jakim pliku zapisać nowy klucz. Jeśli podpowiedź się zgadza, można zatwierdzić opcję.
  2. Kolejno podać należy hasło do zaszyfrowania klucza. Należy to zrobić dwa razy.

Po tych dwóch krokach klucz zostanie wygenerowany.

Generowanie klucza SSH w GitBash

Generowanie klucza SSH w GitBash

Linux

Na Linuksie wystarczy użyć komendy:

Proces generowania wygląda identycznie z tym, który opisałem dla Windowsa.

Podłączanie klucza SSH do Github

W celu podłączenia klucza do GitHuba, przejdźmy do ustawień, do sekcji SSH and GPG keys. Dodajemy nowy klucz SSH i nadajemy mu nazwę oraz wklejamy wygenerowany wcześniej klucz publiczny.

Klucz SSH w GitHub

Klucz SSH w GitHub

Klonowane repozytorium przez SSH

Przechodzimy teraz do miejsca, gdzie chcemy sklonować repozytorium i odpalamy poniższą komendę, gdzie zmieniamy nazwę użytkownika (michalkortas) i nazwę repozytorium (private-repo) na własną.

Podajemy hasło użyte podczas generowania klucza SSH. Po zatwierdzeniu poprawnego hasła, repozytorium zostanie sklonowane.

Klonowanie repozytorium przez SSH

Klonowanie repozytorium przez SSH

Jeśli podejrzymy klucze dodane do GitHuba, można zobaczyć ostatnią aktywność każdego z nich.

Ostatnia aktywność klucza SHH na GitHub

Ostatnia aktywność klucza SHH na GitHub

Korzystacie z SSH, HTTPS, a może używacie już nowego GitHub CLI? Nie miałem jeszcze osobiście okazji przetestować tej ostatniej opcji, ale zapewne niedługo to zrobię.


Tagi:


Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.