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

Admin

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.

Treść

  • Czym są klucze SSH?
  • Generowanie kluczy SSH dla Githuba
  • Dodawanie kluczy SSH do Githuba
  • Zarządzanie kluczami SSH
  • Modyfikowanie istniejących kluczy SSH
  • Usuwanie kluczy SSH z Githuba

Notatka: nowy w Git? Uczyć się od nasz przewodnik dla początkujących.

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ń.

Dobrze wiedzieć: Dowiedz się więcej o kryptografii klucza publicznego i o tym, jak może ona zabezpieczyć Twoją tożsamość online instalowanie GNU Kleopatra w systemie Linux.

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:

sudoaptinstallssheval`ssh-agent -s`

Uruchom następujące polecenie, aby uruchomić Generowanie klucza SSH czarodziej:

ssh-keygen-t ed25519 -C"[email protected]"

Kreator zapyta Cię, czy chcesz użyć niestandardowej nazwy pliku klucza SSH dla swojego klucza. Naciskać Wchodzić 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.

Notatka: Możesz także pozostawić pytanie o hasło puste, jeśli chcesz utworzyć klucz SSH bez hasła.

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

ssh-add ~/.ssh/id_ed25519

Dobrze wiedzieć: jeśli jesteś nowy w Githubie, dowiedz się niektóre z najlepszych aplikacji, które powinieneś dodać do swojego repozytorium Github.

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:

cat ~/.ssh/id_ed25519.pub

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 klawisz kontrolny + 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:

ssh-Tgit@github.com

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

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:

sudoaptinstallssheval`ssh-agent -s`

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

ssh-keygen-t ed25519 -f ~/.ssh/id-ed25519-pc2 -C"[email protected]"

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

Dodaj nowy klucz alternatywny do agenta SSH:

ssh-add ~/.ssh/id-ed25519-pc2

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

cat ~/.ssh/id-ed-25519-pc2

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:

ssh-Tgit@github.com

Modyfikowanie istniejących kluczy 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ż to robisz używanie kluczy SSH jako loginu bez hasła w systemie Linux.

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

cd ~/.ssh

Uruchomić ssh-keygen z -p, -o I -f flags wraz z kluczem SSH. Umożliwi to zmianę hasła do istniejącego klucza prywatnego:

ssh-keygen-p-o-f ./id-ed25519

Notatka: Możesz także użyć tych flag, aby przekonwertować zwykły klucz SSH na klucz bez hasła.

Możesz także zmienić adres e-mail osadzony w kluczu publicznym, korzystając z opcji -c flaga:

ssh-keygen-c-C"[email protected]"-f ./id-ed25519

Załaduj ponownie agenta SSH nowo zaktualizowanym kluczem:

ssh-add ~/.ssh/id-ed25519

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:

eval`ssh-agent -s`

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

ssh-add-d ~/.ssh/id-ed25519

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:

ssh-Tssh@github.com

Powiązanie 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 plik szyfrowana kopia zapasowa w chmurze za pomocą Rclone.

W międzyczasie możesz także dowiedzieć się więcej o automatycznym zarządzaniu repozytorium przez za pomocą haków Git.

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

Zapisz się do naszego newslettera!

Nasze najnowsze samouczki dostarczane bezpośrednio do Twojej skrzynki odbiorczej

Recenzja KDE 4.6: jest pełna niesamowitości
Recenzja KDE 4.6: jest pełna niesamowitości

26 stycznia br. Wydano KDE wersja 4.6.0 swoich Plasma Workspaces, Applications i Development Plat...

Jak korzystać z działań plazmowych KDE
Jak korzystać z działań plazmowych KDE

Pojęcie działań to nowa funkcja wprowadzona wraz z KDE 4. W starym modelu pulpitu KDE 3, pulpitem...

Ubuntu porzuca jedność na rzecz GNOME: co to oznacza
Ubuntu porzuca jedność na rzecz GNOME: co to oznacza

5 kwietnia 2017 r. firma Canonical – brytyjska firma zajmująca się rozwojem Ubuntu – ogłosiła zam...