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.
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ę.
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.
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”.
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 klawisz kontrolny + V aby wkleić klucz SSH.
Kliknij „Dodaj klucz SSH”, aby zatwierdzić nowe ustawienia.
Otwórz nową sesję terminala i uruchom następujące polecenie:
ssh-Tgit@github.com
Wpisz „tak”, a następnie naciśnij Wchodzić.
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:
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”.
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.
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ąć.
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:
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