Jak zabezpieczyć dostęp do Githuba za pomocą klucza SSH

Jak zabezpieczyć dostęp do Githuba za pomocą klucza SSH
Zdjęcie maskotki Github przed stroną internetową Github.

Podłączenie klucza SSH do Githuba to jeden z kluczowych kroków podczas zabezpieczania konta. Pozwala wykorzystać moc kryptografii klucza publicznego do ochrony repozytoriów Git. W tym artykule dowiesz się, czym są klucze SSH i jak możesz ich użyć, aby wzmocnić swoje konto Github.

Czym są klucze SSH?

Krótko mówiąc, klucze SSH to klucze publiczne przechowywane na zdalnym serwerze. Działają one jako serwer proxy uwierzytelniania, który umożliwia łączenie się i interakcję z maszynami bez podawania nazwy użytkownika i hasła.

Terminal pokazujący przykładowy klucz publiczny SSH.

Działa to tak, że za każdym razem, gdy łączysz się z maszyną przez SSH, Twój komputer lokalny wysyła wiadomość podpisaną Twoim prywatnym kluczem SSH. Następnie zdalna maszyna używa Twojego publicznego klucza SSH do sprawdzenia autentyczności wiadomości i zalogowania Cię.

Github stosuje to samo podejście do weryfikacji Twojej tożsamości na swoich serwerach. Witryna korzysta z Twojego klucza publicznego za każdym razem, gdy przesyłasz i modyfikujesz swoje repozytorium. Dzięki temu nie ujawnisz swoich danych uwierzytelniających Github podczas wypychania zatwierdzeń.

Generowanie kluczy SSH dla Githuba

Aby rozpocząć, otwórz nową sesję terminala za pomocą programu uruchamiającego aplikacje swojej dystrybucji.

Upewnij się, że na swoim komputerze zainstalowałeś OpenSSH i że demon agenta SSH jest aktualnie uruchomiony:

Uruchom następujące polecenie, aby uruchomić kreatora generowania klucza SSH:

Kreator zapyta Cię, czy chcesz użyć niestandardowej nazwy pliku klucza SSH dla swojego klucza. Naciśnij Enter, aby zaakceptować domyślną nazwę i lokalizację.

Terminal wyświetlający monit o lokalizację pliku dla nowego klucza SSH.

Wpisz hasło dla nowego klucza SSH. Będzie to służyć jako hasło Twojej maszyny lokalnej za każdym razem, gdy połączy się ona z Twoim kontem Github.

Terminal wyświetlający monit o podanie nowego klucza SSH.

Dodaj nowo wygenerowany klucz SSH do aktualnie działającego agenta SSH:

Dodawanie kluczy SSH do Githuba

Po uruchomieniu nowego klucza SSH możesz teraz połączyć swój komputer lokalny ze swoim kontem Github. Aby rozpocząć, uruchom następujące polecenie, aby wydrukować klucz publiczny SSH:

Podświetl swój klucz publiczny SSH, naciśnij prawy przycisk myszy i wybierz „Kopiuj”.

Terminal wyświetlający opcję Kopiuj w wierszu menu kontekstowego.

Otwórz nową sesję przeglądarki, a następnie przejdź do strony głównej Github.

Kliknij ikonę swojego profilu w prawym górnym rogu strony.

Zrzut ekranu domyślnej strony głównej Githuba.

Kliknij „Ustawienia” z listy rozwijanej.

Zrzut ekranu przedstawiający opcję Ustawienia w menu profilu Github.

Wybierz „Klucze SSH i GPG” na lewym pasku bocznym strony ustawień.

Zrzut ekranu przedstawiający opcję kluczy SSH i GPG w menu ustawień Github.

Kliknij przycisk „Nowy klucz SSH” obok nagłówka „Klucze SSH”.

Zrzut ekranu przedstawiający przycisk Nowy klucz SSH na stronie Klucze SSH i GPG.

Wybierz pole tekstowe „Tytuł”, a następnie podaj nazwę klucza.

Kliknij pole tekstowe „Klucz”, a następnie naciśnij Ctrl + V, aby wkleić klucz SSH.

Kliknij „Dodaj klucz SSH”, aby zatwierdzić nowe ustawienia.

Bezpieczny klucz Ssh dostępu do Github 09 Dodaj przycisk klucza Ssh

Otwórz nową sesję terminala i uruchom następujące polecenie:

Wpisz „tak”, a następnie naciśnij Enter.

Terminal podświetlający monit o zaufanie odciskowi palca SSH.

Spowoduje to rozpoczęcie nowej sesji SSH z jednym z serwerów odbierających Github. Jeśli klucz działa poprawnie, zostanie wydrukowana krótka wiadomość potwierdzająca połączenie SSH.

Terminal podświetlający krótką wiadomość potwierdzającą z Githuba.

Zarządzanie kluczami SSH

Chociaż dla większości użytkowników wystarczy pojedynczy klucz SSH, istnieją przypadki, w których trzeba zsynchronizować repozytorium Git hostowane na wielu komputerach. Aby to zrobić, musisz zaimportować klucze SSH specyficzne dla komputera.

Otwórz nową sesję terminala na komputerze, który chcesz połączyć z Githubem.

Upewnij się, że demon OpenSSH jest zainstalowany i uruchomiony w systemie:

Uruchom następujące polecenie, aby utworzyć odrębny klucz SSH dla nowego komputera:

Wpisz bezpieczne hasło dla nowego klucza SSH, a następnie naciśnij Enter.

Dodaj nowy klucz alternatywny do agenta SSH:

Wydrukuj zawartość klucza publicznego SSH, a następnie skopiuj go do schowka systemowego:

Wróć do strony „Klucze SSH i GPG” na swoim koncie Github.

Kliknij ponownie przycisk „Nowy klucz SSH”.

Podaj unikalną etykietę dla nowego klucza, a następnie wklej zawartość schowka pod polem tekstowym „Klucz”.

Zrzut ekranu przedstawiający nowy klucz alternatywny w Githubie.

Kliknij „Dodaj klucz SSH”, aby zastosować nowe ustawienia.

Sprawdź, czy Twoja nowa maszyna używa Twojego bezpiecznego klucza do łączenia się z Githubem, logując się przez SSH:

Oprócz wysyłania nowo wygenerowanych kluczy do Githuba, możesz także modyfikować istniejące klucze SSH, które już masz na swoim komputerze. Może to być przydatne, jeśli już używasz kluczy SSH jako loginu bez hasła w systemie Linux.

Aby zmodyfikować istniejący klucz, przejdź do katalogu „.ssh” na swoim komputerze:

Uruchom ssh-keygen z flagami -p, -o i -f wraz ze swoim Klucz SSH. Umożliwi to zmianę hasła do istniejącego klucza prywatnego:

Możesz także zmienić adres e-mail osadzony w kluczu publicznym, używając flagi -c:

Załaduj ponownie agenta SSH nowo zaktualizowanym kluczem:

Zastąp odpowiedni klucz publiczny SSH w swoim profilu Github.

Zrzut ekranu przedstawiający nowo zmodyfikowany klucz SSH w Githubie.

Usuwanie kluczy SSH z Githuba

Otwórz nową sesję terminala, a następnie uruchom demona agenta SSH:

Uruchom następujące polecenie, aby usunąć klucz prywatny SSH z komputera:

Wróć do kategorii „Klucze SSH i GPG” na swoim koncie Github.

Przewiń listę kluczy SSH na tej stronie, a następnie kliknij „Usuń” na tym, który chcesz usunąć.

Zrzut ekranu przedstawiający przycisk Usuń dla nowo zmodyfikowanego klucza SSH.

Kliknij „Rozumiem, usuń ten klucz SSH”.

Zrzut ekranu przedstawiający ostatni monit o potwierdzenie usunięcia klucza SSH.

Upewnij się, że Twój stary klucz SSH nie działa, rozpoczynając sesję SSH z jednym z serwerów Github:

Połączenie klucza SSH w celu zabezpieczenia konta Github to dopiero pierwszy krok w zrozumieniu, jak działa kryptografia i szyfrowanie klucza publicznego. Dowiedz się więcej o szyfrowaniu danych w spoczynku, tworząc szyfrowaną kopię zapasową w chmurze za pomocą Rclone.

Tymczasem możesz także dowiedzieć się więcej o automatycznym zarządzaniu repozytorium, używając haków Git.

Źródło zdjęcia: Roman Synkevych za pośrednictwem Unsplash. Wszystkie zmiany i zrzuty ekranu wykonał Ramces Red.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *