SSH Setup w Ubuntu

Anonim

SSH Setup w Ubuntu

Technologia SSH (Secure Shell) pozwala bezpiecznie zarządzać komputera za pomocą bezpiecznego połączenia. SSH produkuje zaszyfrowane wszystkie przesyłane pliki, w tym hasła, a także przesyła całkowicie dowolnego protokołu sieciowego. Aby poprawnie pracować, musi być nie tylko instalowany, ale także skonfigurowany. Chodziło o produkt głównej konfiguracji, którą chcielibyśmy porozmawiać pod tym artykułem, podejmując najnowszą wersję systemu operacyjnego Ubuntu na przykład, który będzie znajdujący serwer.

Skonfiguruj SSH w Ubuntu

Jeśli nie ukończyłeś jeszcze instalacji do komputera serwera i klienta, należy to zrobić początkowo, korzyść z całej procedury jest dość prosta i nie zajmie dużo czasu. Z szczegółowym podręcznikiem na tym temacie spełniają inny artykuł na poniższym ogniu. Pokazuje również procedurę edycji pliku konfiguracyjnego i testowania ssh, więc dziś skupimy się trochę na innych zadaniach.

Czytaj więcej: Instalowanie SSH-Server w Ubuntu

Tworzenie pary kluczy RSA

W nowo zainstalowanym SSH nie ma więcej określonych kluczy do połączenia z serwera do klienta i odwrotnie. Wszystkie te parametry muszą być ustawione ręcznie natychmiast po dodaniu wszystkich elementów protokołu. Para kluczy pracuje przy użyciu algorytmu RSA (redukcja nazw deweloperów Rivest, Shamir i Adleman). Dzięki temu kryptosystemowi klucze są szyfrowane przez specjalne algorytmy. Aby utworzyć parę otwartych kluczy, wystarczy wprowadzić odpowiednie polecenia w konsoli i postępuj zgodnie z instrukcjami wyświetlanymi.

  1. Idź do pracy z "Terminalem" przez dowolną wygodną metodę, na przykład, otwierając go przez menu lub kombinację klucza Ctrl + Alt + T.
  2. Uruchom terminal w Ubuntu, aby dalej skonfigurować SSH

  3. Wprowadź polecenie SSH-Keygen, a następnie kliknij przycisk Enter.
  4. Utwórz klawisz SSH przez konsolę w systemie operacyjnym Ubuntu

  5. Proponuje się utworzenie pliku, w którym zostaną zapisane klucze. Jeśli chcesz zostawić je w miejscu wybranym domyślnie, po prostu kliknij Enter.
  6. Wybierz plik, aby zapisać klucze protokołu SSH w Ubuntu

  7. Klucz publiczny może być chroniony przez frazę kodową. Jeśli chcesz użyć tej opcji, napisz hasło w pojawił się ciąg. Znaki wkładania nie będą wyświetlane. W nowej linii będzie musiała go powtórzyć.
  8. Wprowadzanie frazy kluczowej podczas tworzenia klucza SSH w Ubuntu

  9. Następnie zobaczysz powiadomienie, że klucz został zapisany i możesz również zapoznać się z losowym obrazem graficznym.
  10. Udane kluczowe stworzenie dla SSH w systemie operacyjnym Ubuntu

Teraz jest para klientów - tajemnica i otwarta, aby być użyta do dalszego połączenia między komputerami. Wystarczy umieścić klucz do serwera, aby uwierzytelnianie SSH zakończy się sukcesem.

Skopiuj otwarty klucz do serwera

Istnieją trzy kluczowe metody kopiowania. Każdy z nich będzie najbardziej optymalny w różnych sytuacjach, gdy na przykład jeden ze sposobów nie działa lub nie jest odpowiedni dla określonego użytkownika. Proponujemy rozważyć wszystkie trzy opcje, zaczynając od najprostszego i skutecznego.

Opcja 1: polecenie ssh-copy-id

Komenda SSH-Copy-ID jest wbudowana w system operacyjny, więc nie musi instalować żadnych dodatkowych komponentów do jego wykonania. Przestrzegaj prostej składni, aby skopiować klucz. W terminalu musisz wprowadzić nazwę użytkownika SSH-Copy-ID, gdzie nazwa_użytkownika @ Remote_host jest nazwą komputera zdalnego.

Skopiuj klucz SSH poprzez specjalne narzędzie w Ubuntu

Po pierwszym połączeniu otrzymasz powiadomienie z tekstem:

Nie można ustalić autentyczności hosta "203.0.113.1 (203.0.113.1)".

ECDSA Key Fingerprint jest FD: FD: D4: F9: 77: FE: 73: 84: E1: 55: 00: AD: D6: 6D: 22: Fe.

Czy na pewno chcesz kontynuować łączenie (tak / nie)? TAk

Musisz określić opcję Tak, aby kontynuować połączenie. Po tym narzędzie niezależnie wyszuka klucz jako plik ID_RSA.Pub, który wcześniej został utworzony. Podczas pomyślnego wykrywania wynik ten zostanie wyświetlony:

USR / BIN / SSH-COPY-ID: INFO: Próba zalogowania się za pomocą nowego klawisza (ów), aby odfiltrować dowolne, które są zainstalowane

/ USR / BIN / SSH-COPY-ID: Info: 1 Klucz (y) pozostają do zainstalowania - jeśli pojawi się monit teraz, aby zainstalować nowe klucze

[email protected] Hasło:

Określ hasło od zdalnego hosta, aby narzędzie mogło ją wprowadzić. Narzędzie skopiuje dane z pliku klucza publicznego ~ / .ssh / id_rsa.pub, a następnie na ekranie pojawi się komunikat:

Liczba (y) dodanych: 1

Teraz spróbuj zalogować się do maszyny, a: "SSH" [email protected] ""

I sprawdź, czy dodano tylko kluczem (y).

Pojawienie się takiego tekstu oznacza, że ​​klucz został pomyślnie załadowany na komputerze zdalnym i nie pojawi się już żadnych problemów z połączeniem.

Opcja 2: Kopiowanie otwartego klucza przez ssh

Jeśli nie możesz użyć powyższego narzędzia, ale jest hasło do wprowadzenia zdalnego serwera SSH, możesz ręcznie przesłać swój klucz użytkownika, zapewniając w ten sposób dalsze stabilne uwierzytelnianie po podłączeniu. Jest używany do tego polecenia kota, które odczytuje dane z pliku, a następnie zostaną wysłane na serwer. W konsoli musisz wprowadzić ciąg.

Cat ~ / .ssh / id_rsa.pub | SSH Nazwa użytkownika @ Remote_host "Mkdir -p ~ / .ssh && Touch ~ / .ssh / authorized_keys && chmod -r go = ~ / .ssh && cat >> ~ / .ssh / authorized_keys".

Przenieś skopiowany klucz za pośrednictwem specjalnego narzędzia Ubuntu

Po pojawieniu się komunikatu

Nie można ustalić autentyczności hosta "203.0.113.1 (203.0.113.1)".

ECDSA Key Fingerprint jest FD: FD: D4: F9: 77: FE: 73: 84: E1: 55: 00: AD: D6: 6D: 22: Fe.

Czy na pewno chcesz kontynuować łączenie (tak / nie)? TAk

Kontynuuj połączenie i wprowadź hasło, aby wprowadzić serwer. Następnie klucz publiczny zostanie automatycznie skopiowany do końca pliku konfiguracyjnego autoryzowanego_keys.

Opcja 3: Ręczna kopiowanie klucza otwartego

W przypadku braku dostępu do komputera zdalnego za pomocą serwera SSH wszystkie opisane powyżej działania są wykonane ręcznie. Aby to zrobić, najpierw skontaktuj się z informacją o kluczowym komputerze PC za pośrednictwem komendy Cat ~ / .SSH / id_rsa.pub.

Zobacz kluczowe informacje za pośrednictwem polecenia CAT w Ubuntu

Ekran zostanie wyświetlony w przybliżeniu taki ciąg: klawisz SSH-RSA + jako zestaw znaków == DEMO @ Test. Po tym przejdź do pracy na zdalnym urządzeniu, w którym utworzysz nowy katalog przez MKDIR -P ~ / .ssh. Dodatkowo tworzy plik autoryzowany_keys. Następnie wstaw klucz tam, którego nauczyłeś się wcześniej za pomocą Echo + wiersz kluczy publicznych >> ~ / .ssh / authorized_keys. Następnie możesz spróbować przeprowadzić uwierzytelnianie z serwerem bez użycia haseł.

Uwierzytelnianie na serwerze za pomocą utworzonego klucza

W poprzedniej sekcji dowiedziałeś się o trzech metodach do kopiowania zdalnego klucza komputera na serwer. Takie działania pozwolą Ci połączyć się bez hasła. Procedura ta jest wykonywana za pośrednictwem wiersza poleceń, wprowadzając nazwę SHH SSH Username @ Remote_host, gdzie nazwa użytkownika @ Remote_host jest nazwą użytkownika i nazwa komputera hosta. Po pierwszym połączeniu zostaniesz powiadomiony o nieznanym połączeniu i możesz kontynuować, wybierając opcję Tak.

Połącz się ze zdalnym komputerem przez SSH w Ubuntu

Połączenie zostanie automatycznie nastąpi, jeśli fraza klucza (hasło) nie została określona podczas tworzenia pary kluczy. W przeciwnym razie najpierw musisz przedstawić go kontynuować pracę z SSH.

Wyłącz uwierzytelnianie hasła

Udane konfigurowanie kopiowania kluczowego jest rozpatrywane w tej sytuacji, gdy można wprowadzić serwer bez użycia hasła. Jednak możliwość uwierzytelniania umożliwia zatem atakujący używać narzędzi do wyboru hasła i pęknięcia chronionego połączenia. Złącznie się z takich przypadków umożliwi pełnoprawne wprowadzanie hasła w pliku konfiguracyjnym SSH. Będzie to wymagać:

  1. W terminalu otwórz plik konfiguracyjny przez edytor za pomocą polecenia sudo gegdit / etc / ssh / sshd_config.
  2. Uruchom plik konfiguracyjny SSH poprzez edytor w Ubuntu

  3. Znajdź linię PasswordAuthentication i wyjmij # znak na początku, aby zmierzyć parametr.
  4. Zmień wartość na nie i zapisz bieżącą konfigurację.
  5. Wyłącz uwierzytelnianie hasła w SSH przez Ubuntu

  6. Zamknij edytora i uruchom ponownie serwer Sudo Systemctl Restart SSH.
  7. Uruchom ponownie serwer SSH w systemie operacyjnym Ubuntu

Uwierzytelnianie hasła wyłączy się i wprowadź serwer może być używany tylko za pomocą klawiszy specjalnie utworzonych dla tego za pomocą algorytmu RSA.

Konfigurowanie standardowej zaporę

W Ubuntu domyślna firewall jest nieskomplikowana zapora firewall (UFW). Umożliwia rozwiązanie połączeń dla wybranych usług. Każda aplikacja tworzy własny profil w tym narzędziu, a UFW kontroluje je, umożliwiając lub niepokojące połączenie. Ustawianie profilu SSH przez dodanie go do listy jest przeprowadzane w ten sposób:

  1. Otwórz listę profili zapory przez polecenie Lista aplikacji Sudo UFW.
  2. Wyświetl standardowe profile Fivola w Ubuntu

  3. Wprowadź hasło z konta, aby wyświetlić informacje.
  4. Wprowadź hasło, aby wyświetlić listę profili standardowej Firevola Ubuntu

  5. Zobaczysz arkusz dostępnych aplikacji, musi być wśród nich openSsh.
  6. Standardowa lista profili Firevola w Ubuntu

  7. Teraz powinieneś rozwiązać połączenia przez SSH. Aby to zrobić, dodaj go do listy dozwolonych profili za pomocą Sudo UFW zezwalaj na OpenSSH.
  8. Dodaj serwer SSH, aby rozwiązać połączenia z zaporączką Ubuntu

  9. Włącz zaporę, aktualizując zasady, Sudo UFW Enable.
  10. Uruchom ponownie zaporę z aktualizacjami reguł w Ubuntu

  11. W przypadku przekonań jest to, że połączenia są dozwolone, status Sudo UFW powinien być przepisany, po którym zobaczysz status sieci.
  12. Zobacz listę dozwolonych połączeń zapory w Ubuntu

W tym celu nasze instrukcje konfiguracji SSH w Ubuntu są zakończone. Dalsze ustawienia pliku konfiguracyjnego i innych parametrów są osobiście przeprowadzane przez każdego użytkownika pod jego żądaniami. Możesz zapoznać się z działaniem wszystkich składników SSH w oficjalnej dokumentacji protokołu.

Czytaj więcej