0Pricing
DevOps Bootcamp · Lekcja

Uwierzytelnianie SSH za pomocą kluczy i plik konfiguracyjny

Skonfiguruj bezhasłowe połączenia SSH za pomocą par kluczy i usprawnij połączenia, korzystając z osobistego pliku konfiguracyjnego SSH.

Uwierzytelnianie SSH za pomocą kluczy i plik konfiguracyjny to bezpłatna lekcja DevOps Bootcamp na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej DevOps Bootcamp, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.

Dlaczego uwierzytelnianie za pomocą klucza?

Klucze SSH zastępują hasła kryptograficzną parą kluczy. Są bezpieczniejsze i umożliwiają automatyzację logowania bez hasła.

  • Klucz prywatny pozostaje na Państwa komputerze
  • Klucz publiczny jest kopiowany na serwer

Generowanie pary kluczy

Proszę użyć ssh-keygen, aby utworzyć nowoczesną parę kluczy Ed25519. Polecenie tworzy klucz prywatny oraz pasujący do niego klucz publiczny .pub.

ssh-keygen -t ed25519 -C "you@example.com"

Gdzie przechowywane są klucze

Domyślnie klucze znajdują się w ~/.ssh/. Klucz prywatny musi pozostać tajny, natomiast klucz publiczny można udostępniać.

ls -l ~/.ssh/

Kopiowanie klucza publicznego na serwer

ssh-copy-id w jednym kroku dopisuje Państwa klucz publiczny do pliku authorized_keys na serwerze.

ssh-copy-id user@server.example.com

Ręczna instalacja klucza

Jeśli ssh-copy-id jest niedostępne, proszę ręcznie dopisać klucz publiczny do zdalnego pliku authorized_keys.

cat ~/.ssh/id_ed25519.pub | ssh user@host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

Prawidłowe uprawnienia mają znaczenie

SSH odrzuca klucze z nadmiernie liberalnymi uprawnieniami. Katalog .ssh powinien mieć uprawnienia 700, a pliki kluczy — 600.

chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_ed25519

Łączenie za pomocą klucza

Po zainstalowaniu klucza publicznego polecenie ssh user@host loguje bez pytania o hasło. Proszę użyć -i, aby wybrać konkretny klucz.

ssh -i ~/.ssh/id_ed25519 user@server.example.com

Ochrona kluczy za pomocą hasła

Hasło szyfruje klucz prywatny na dysku. ssh-agent przechowuje je w pamięci, dzięki czemu trzeba je wpisać tylko raz w sesji.

eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519

Plik konfiguracyjny SSH

~/.ssh/config przechowuje ustawienia dla poszczególnych hostów, dzięki czemu można łączyć się za pomocą krótkiego aliasu zamiast długich wierszy poleceń.

# ~/.ssh/config
Host web
    HostName 203.0.113.10
    User deploy
    Port 2222
    IdentityFile ~/.ssh/id_ed25519

Łączenie za pomocą aliasu konfiguracji

Przy użyciu powyższego bloku polecenie ssh web automatycznie zastosuje wszystkie te opcje.

ssh web

Przydatne opcje konfiguracji

Plik konfiguracyjny obsługuje wiele opcji, na przykład podtrzymywanie połączeń.

  • ServerAliveInterval 60 utrzymuje otwarte bezczynne sesje
  • ForwardAgent yes przekazuje agenta
Host *
    ServerAliveInterval 60
    ServerAliveCountMax 3

Szybkie sprawdzenie

Proszę sprawdzić swoją wiedzę na temat kluczy SSH.

Podsumowanie

Skonfigurował(a) Pan/Pani bezpieczny dostęp SSH:

  • Wygenerowanie pary za pomocą ssh-keygen -t ed25519
  • Zainstalowanie klucza publicznego przez ssh-copy-id
  • Ograniczenie uprawnień (700/600)
  • Uproszczenie logowania za pomocą aliasów hostów w ~/.ssh/config

Często zadawane pytania

Czy lekcja „Uwierzytelnianie SSH za pomocą kluczy i plik konfiguracyjny” jest bezpłatna?

Tak — pełny tekst „Uwierzytelnianie SSH za pomocą kluczy i plik konfiguracyjny” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu DevOps Bootcamp, przejdź na CoddyKit PRO. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.

Co nauczysz się w „Uwierzytelnianie SSH za pomocą kluczy i plik konfiguracyjny”?

Skonfiguruj bezhasłowe połączenia SSH za pomocą par kluczy i usprawnij połączenia, korzystając z osobistego pliku konfiguracyjnego SSH. Ćwiczysz DevOps Bootcamp z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć DevOps Bootcamp?

Nie wymagamy żadnego doświadczenia. DevOps Bootcamp w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Uwierzytelnianie SSH za pomocą kluczy i plik konfiguracyjny”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji DevOps Bootcamp?

Tak. Każda lekcja DevOps Bootcamp zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Podstawowe narzędzia sieciowe (ping, ip, netstat)
  2. Podstawy bezpiecznej powłoki (SSH)
  3. SCP i Rsync do przesyłania plików
  4. Uwierzytelnianie SSH za pomocą kluczy i plik konfiguracyjny
← Powrót do DevOps Bootcamp