Jak zabezpieczyć dostęp do Githuba za pomocą klucza SSH
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.
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ę.
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.
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”.
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.
Kliknij „Ustawienia” z listy rozwijanej.
Wybierz „Klucze SSH i GPG” na lewym pasku bocznym strony ustawień.
Kliknij przycisk „Nowy klucz SSH” obok nagłówka „Klucze SSH”.
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.
Otwórz nową sesję terminala i uruchom następujące polecenie:
Wpisz „tak”, a następnie naciśnij Enter.
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.
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”.
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.
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ąć.
Kliknij „Rozumiem, usuń ten klucz 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