Baza wiedzy Proste instrukcje dotyczące pracy z usługą Profitserver
Główny Baza wiedzy Jak połączyć się z serwerem Linux przez SSH

Jak połączyć się z serwerem Linux przez SSH


Podstawowym sposobem połączenia się z serwerem Linux jest Protokół SSH. Ten typ połączenia jest bezpieczny, ponieważ wszystkie przesyłane przez niego dane są szyfrowane. Aby do nawiąż połączenie SSH powinieneś skonfigurować go na serwerze zdalnym, z którym chcesz się połączyć, a klienta po stronie użytkownika. Jest mnóstwo oprogramowania do połączenia SSH. Jeśli chodzi o Linuksa, pakiet OpenSSH jest najpopularniejszy, a w przypadku Windowsa ludzie najczęściej używają PuTTY.

Przyjrzyjmy się bliżej konfiguracji serwera na przykładzie Ubuntu Server 18.04, a następnie spróbujmy połączyć się z serwerem z poziomu systemu Linux i Windows.

Wszystko, co zrobimy, będzie z konta zwykłego użytkownika. W tym przypadku utworzyliśmy użytkownika „Mihail", i "korzeńKonto jest domyślnie wyłączone.

Konfiguracja po stronie serwera

Skonfiguruj pakiet, uruchamiając to polecenie:

sudo apt install openssh-server
Instalowanie środowiska SSH na serwerze Linux

Po zakończeniu instalacji upewnij się, że usługa jest uruchomiona. Użyj tego polecenia:

systemctl status sshd
Sprawdzanie dostępności usługi SSH

Stan „Aktywny (bieganie)„oznacza, że ​​usługa jest włączona i działa normalnie.

Aby uniknąć blokowania połączeń przychodzących przez zaporę sieciową, należy ją wyłączyć. W tym artykule nie będziemy bowiem konfigurować zapory sieciowej.

Użyj tego polecenia:

sudo ufw disable
Wyłączanie blokady połączeń przychodzących w Zaporze systemu Windows

Na tym etapie możesz już połączyć się z serwerem. Przy domyślnych ustawieniach serwer umożliwia połączenie ze standardowym portem 22 z uwierzytelnianiem opartym na haśle.

Połączenie SSH z Linuksa

Z reguły klient OpenSSH jest instalowany domyślnie na Linuksie i nie wymaga dodatkowej ręcznej konfiguracji. Połączenie można nawiązać z terminala za pomocą polecenia ssh. Parametrami w tym przypadku byłyby nazwa użytkownika i adres IP zdalnego serwera. Na naszym serwerze testowym, którego używamy jako przykładu, jest tylko jedno konto „mihail”, więc użyjemy tego.

ssh [email protected]

Przy pierwszym połączeniu będziesz musiał potwierdzić dodanie klucza publicznego serwera do bazy danych, dlatego odpowiedz „tak”. Następnie możesz wprowadzić hasło. Jeśli połączenie zostanie nawiązane pomyślnie, zobaczysz tekst powitalny wiersza poleceń serwera. Teraz wszystkie polecenia zostaną wykonane bezpośrednio na serwerze zdalnym.

Połączenie SSH z Linuksa

SSH z systemu Windows

Otwórz Putty i ustaw parametry połączenia. Upewnij się, że przełącznik „Rodzaj połączenia„zwrócono się do SSH. Wprowadź adres IP w polu „Nazwa hostapole „, wartość domyślna” 22 do "Port"I kliknij"Otwarte".

Połączenie SSH z systemu Windows

Przy pierwszym połączeniu kit poprosi Cię o potwierdzenie, że ufasz temu serwerowi, więc kliknij „Tak"

Pierwsze połączenie SSH z Windows

Po wpisaniu loginu i hasła zobaczysz wiersz poleceń zdalnego serwera.

Pomyślne połączenie SSH

Uwierzytelnianie za pomocą klucza. Zwiększanie poziomu bezpieczeństwa

Gdy klient próbuje nawiązać bezpieczne połączenie z serwerem przez SSH, przed zezwoleniem na połączenie serwer wymaga uwierzytelnienia (weryfikacji) klienta. Jak wspomniano wcześniej, uwierzytelnianie oparte na haśle jest zwykle używane domyślnie. Nie zapewnia ono solidnego bezpieczeństwa, ponieważ zawsze istnieje sposób na jego brutalne wymuszenie. Poza tym uwierzytelnianie za pomocą hasła nie ma zastosowania do połączeń SSH z użyciem skryptów.

Do tego typu zadań istnieje specjalna metoda uwierzytelniania za pomocą klucza. Chodzi o to, że klient generuje klucze prywatne i publiczne, a następnie klucz publiczny jest wysyłany do serwera. Po tym nie potrzebujesz hasła, aby połączyć się z serwerem, ponieważ uwierzytelnianie jest przeprowadzane na podstawie kluczy publicznych i prywatnych klienta. Aby zapewnić dobry poziom bezpieczeństwa, dostęp do klucza prywatnego powinien być ograniczony. Ze względu na fakt, że klucz prywatny jest przechowywany po stronie klienta i nie jest przesyłany przez sieć, ta metoda jest uważana za bezpieczniejszą.

Uwierzytelnianie za pomocą klucza w systemie Linux

Wygenerujmy klucze publiczne i prywatne na kliencie za pomocą oprogramowania narzędziowego ssh-keygen. Narzędzie zasugeruje zmianę ścieżki do klucza prywatnego i wprowadzi hasło dla dodatkowego bezpieczeństwa. Pozostaw wszystkie parametry domyślnie, naciskając Enter przy wszystkich żądaniach.

Uwierzytelnianie za pomocą klucza w systemie Linux w celu zapewnienia bezpiecznego połączenia

W rezultacie w katalogu domowym w folderze .ssh znajdziesz wygenerowane dwa pliki: id_rsa oraz id_rsa.pub zawierające odpowiednio klucze prywatne i publiczne.

Następnie będziesz musiał wysłać klucz publiczny na serwer. Aby to zrobić, skopiuj zawartość „id_rsa.pub”plik do”~/.ssh/authorized_keys” plik na serwerze. Przejdźmy najłatwiejszą drogą z pomocą „ssh-copy-id” narzędzie. Wprowadź login i adres IP serwera, tak jak w przypadku zwykłego połączenia. Po wprowadzeniu hasła klucz publiczny klienta zostanie automatycznie skopiowany na serwer. Uruchom to polecenie:

ssh-copy-id [email protected]
Autoryzacja SSH z kluczami prywatnymi

Po wykonaniu wszystkich tych czynności serwer nie będzie już wymagał podawania hasła.

Uwierzytelnianie za pomocą klucza w systemie Windows

Otwarte PUTTYGEN i kliknij "Wygeneruj Aby wygenerować klucze, wystarczy przesunąć myszkę nad ekranem, a narzędzie losowo wygeneruje klucze.

Po wygenerowaniu kluczy kliknij „Zapisz klucz prywatny” i zapisz go do pliku z kluczem prywatnym na swoim dysku. Możesz ustawić dowolną ścieżkę, ale nieco później będziesz musiał ją określić w Putty. Następnie skopiuj klucz publiczny z górnej części okna.

Generowanie klucza prywatnego dla połączenia SSH dla systemu Windows

Wyślijmy klucz publiczny, po prostu kopiując go do terminala. Otwórz kit i połącz się z serwerem jak zwykle. Teraz utwórzmy „.ssh/autoryzowane_klucze„i uniemożliwić innym użytkownikom dostęp do pliku, tak aby mógł go udostępnić tylko twórca.

mkdir .ssh
touch .ssh/authorized_keys
chmod 700 .ssh
chmod 600 .ssh/authorized_keys

Po utworzeniu pliku umieść w nim klucz publiczny klienta. Na poprzednim etapie skopiowaliśmy klucz publiczny do schowka. Aby zapisać zawartość schowka w pliku, użyj polecenia cat i przekierowania wyjścia.

cat > .ssh/authorized_keys

Po wpisaniu polecenia kliknij prawym przyciskiem myszy w oknie terminala i wklej to, co jest w schowku. Aby potwierdzić dane wejściowe, naciśnij „Ctrl + D”skrót i rozłączenie z serwerem.

Wysyłanie klucza na serwer

Teraz podajmy ścieżkę do klucza prywatnego w Putty i ponownie połączmy się z serwerem.

Pierwsze połączenie SSH z kluczem prywatnym

Od teraz, aby połączyć się z serwerem, wystarczy wpisać nazwę użytkownika. Jeśli próbujesz połączyć się z serwerem z innego urządzenia, które nie ma odpowiedniego klucza prywatnego, serwer poprosi o hasło. Po skonfigurowaniu uwierzytelniania opartego na kluczu możesz zabronić dostępu za pomocą hasła.

Połączenie z kluczem prywatnym zakończone
Następny artykuł ❯ Jak wyłączyć rozszerzoną konfigurację zabezpieczeń w IE

Zapytaj nas o VPS

Jesteśmy zawsze gotowi odpowiedzieć na Państwa pytania o każdej porze dnia i nocy.