Jak skonfigurować klucze SSH na Ubuntu Top 10.Top 10

Jak skonfigurować klucze SSH na Ubuntu Top 10.Top 10
To jest przewodnik, w którym nauczysz się skonfigurować klucze SSH na Ubuntu 20.04. Keys SSH zapewniają bezpieczeństwo twoich serwerów i proces logowania się do niego użytkowników, nie zagraża bezpieczeństwa. Robi to, tworząc zwykły system uwierzytelniania hasła jako na bok.

W skrócie, SSH lub „Secure Shell” jest zaszyfrowanym protokołem, z którym można zdalnie połączyć się z serwerem i mieć dostęp do powiązanych z nim informacji. Zapewnia znacznie bezpieczniejszy sposób rejestrowania, aby zapewnić bezpieczny sposób logowania się bez uszczerbku dla bezpieczeństwa.

Krok 1: Utwórz parę kluczy

Zaczniemy od utworzenia pary kluczowej w systemie klienta z dostępem do korzenia według typu:

$ ssh-keygen

To uruchamia najnowsze ssh-keygen, aby domyślnie tworzyć 3072-bitową parę klawiszy RSA. Możesz dodać flagę -B 4086, aby wygenerować większy klucz. Naciśnij Enter, a zapleci parę kluczową .SSH/ Subrectory. Pamiętaj, że jeśli jesteś gościem na serwerze, który miał już zainstalowany klucz, monit zapyta, czy chcesz go zastąpić, czy nie. Jeśli tak jest, wpisz „y”, aby zasygnalizować tak.

Następnie wiersz zapyta Cię, czy chcesz dodać hasło. Możesz zrezygnować, ale zalecamy dodanie jednego. Wzmacnia protokół bezpieczeństwa, obsługując dodatkową warstwę ochrony do ominięcia dla nieautoryzowanego użytkownika.

Krok 2: Skopiuj klucz publiczny na swój serwer

Następnie musimy przenieść klucz publiczny na Twój serwer Ubuntu.

Możesz użyć narzędzia SSH-Copy-ID, używając następującego polecenia:

$ ssh-copy-id nazwa użytkownika@server_host

To powinno załatwić sprawę w ciągu zaledwie kilku sekund. Jeśli klucz został pomyślnie skopiowany, przejdź na trzeci krok.

Czasami tak się zdarza, że ​​metoda SSH-Copy-ID kończy się niepowodzeniem lub po prostu nie jest dostępna. W takim przypadku musisz go skopiować za pośrednictwem SSH opartych na hasłach. Można to zrobić za pomocą polecenia CAT i upewnij się, że dodaj symbol >>, aby dodać do zawartości zamiast go zastąpić.

$ cat ~/.ssh/id_rsa.pub | ssh remote_username@server_ip_address
"mkdir -p ~//.ssh && cat >> ~/.ssh/autoryzowane_keys "

Jeśli po raz pierwszy łączysz się z nowym hostem, Twój system pokaże ci coś takiego:

Po prostu wpisz tak i naciśnij przycisk Enter. Następnie wprowadź hasło do konta dostępu użytkownika, a klawisz publiczny zostanie skopiowany do serwera Ubuntu.

Na wypadek, gdyby dostęp do SSH oparty na hasłach z jakiegoś powodu nie możesz po prostu skopiować klucza publicznego ręcznie. Dodaj ~//.ssh/autoryzowane_keys do id_rsa.plik pubowy na zdalnym komputerze. Następnie zaloguj się na konto zdalnego serwera i sprawdź, czy istnieje katalog ~ ssh. Jeśli nie, wpisz:

$ mkdir -p ~//.ssh

Teraz musisz tylko dodać klucz:

$ echo public_key_string >> ~/.ssh/autoryzowane_keys
$ chmod -r go = ~/.ssh

Upewnij się również, że używasz ~ ssh/ UŻYTKOWNIK katalog i NIE Katalog główny:

$ chown -r Younis: Younis ~/.ssh

Krok 3: Uwierzytelnij klucze SSH

Następnym krokiem jest uwierzytelnienie klawiszy SSH na serwerze Ubuntu. Najpierw zaloguj się do swojego zdalnego hosta:

$ SSH Nazwa użytkownika@remote_host

Zostaniesz poproszony o wprowadzenie klawisza fraz, który dodałeś w kroku 2. Wpisz to i kontynuuj. Uwierzytelnianie zajmie trochę czasu, a kiedy już skończy, zostaniesz zabrany do nowej interaktywnej powłoki na serwerze Ubuntu

Krok 4: Wyłącz uwierzytelnianie hasła

Dzięki uwierzytelnionym klawiszom SSH nie potrzebujesz już systemu uwierzytelniania hasła.

Jeśli uwierzytelnianie hasła jest włączone na serwerze, nadal będzie podatne na nieautoryzowany dostęp użytkownika za pośrednictwem ataków Brute Force. Byłoby więc lepiej, jeśli wyłączysz dowolne uwierzytelnianie oparte na hasłach.

Najpierw sprawdź, czy masz uwierzytelnianie oparte na Key SSH przygotowane do źródło Konto na tym serwerze. Jeśli tak, powinieneś zmienić to na konto dostępu do uprzywilejowanego użytkownika SUDO na tym serwerze, aby dostęp do administratora był otwarty dla Ciebie w przypadku awaryjnego lub gdy system staje w obliczu podejrzanych działań.

Po przyznaniu uprawnień administratora na konto zdalnego dostępu, zaloguj się na zdalnym serwerze z klawiszami SSH z uprawnieniami root lub sudo. Następnie użyj następującego polecenia, aby uzyskać dostęp do pliku konfiguracyjnego Demona SSH:

$ sudo gedit/etc/ssh/sshd_config

Po otwartym pliku wyszukaj katalog „hasłoAuthentication” i wpisz następująco, aby wyłączyć uwierzytelnianie hasła i loginy SSH oparte na hasłach.

$/etc/ssh/sshd_config

Hasło Automatyka nr

Aby zobaczyć te zmiany, musisz ponownie uruchomić usługę SSHD za pomocą następującego polecenia:

$ sudo systemctl restart ssh

Jako środek ostrożności otwórz nowe okno terminalu i sprawdź, czy usługa SSH działa poprawnie przed zamknięciem bieżącej sesji.

Dzięki weryfikowanym klawiszy SSH powinieneś być w stanie zobaczyć wszystko, co działa normalnie. Możesz wyjść z wszystkich bieżących sesji serwerowych.

Wniosek

Teraz, gdy masz system uwierzytelniania oparty na Key SSH, nie potrzebujesz już wrażliwego systemu uwierzytelniania hasła, ponieważ możesz po prostu zalogować się bez hasła. Mam nadzieję, że ten samouczek był pomocny.