Jak zainstalować i skonfigurować DropBear na Linux

Jak zainstalować i skonfigurować DropBear na Linux

Dropbear Suite zapewnia zarówno serwer SSH, jak i aplikację klienta (DBClient) i reprezentuje lekką alternatywę dla OpenSsh. Ponieważ ma niewielki ślad i bardzo dobrze wykorzystuje zasoby systemowe, jest ogólnie używany na urządzeniach osadzonych, o ograniczonej pamięci i mocy obliczeniowej (e.routery g lub urządzenia do osadzenia), gdzie optymalizacja jest kluczowym czynnikiem. Zapewnia wiele funkcji, takich jak na przykład, Przekazanie x11, i jest w pełni kompatybilny z OpenSsh Uwierzytelnianie klucza publicznego. W tym samouczku zobaczymy, jak go zainstalować i skonfigurować w Linux.

W tym samouczku nauczysz się:

  • Jak zainstalować i skonfigurować DropBear na Linux
  • Jak korzystać z narzędzi DropBearkey, DropBearConvert i DBClient


Zastosowane wymagania i konwencje oprogramowania

Wymagania oprogramowania i konwencje linii poleceń Linux
Kategoria Wymagania, konwencje lub wersja oprogramowania
System Niezależne od rozkładu (konfiguracja może się różnić)
Oprogramowanie Nie jest potrzebne dodatkowe oprogramowanie, aby śledzić ten samouczek oprócz Dropbear (patrz instrukcje instalacji poniżej)
Inny
  • Znajomość interfejsu wiersza poleceń
  • Podstawowe koncepcje SSH
  • Znajomość systemu
Konwencje # - Wymaga, aby podane polecenia Linux są wykonywane z uprawnieniami root bezpośrednio jako użytkownik root lub za pomocą sudo Komenda
$ - Wymaga, aby podane polecenia Linux zostały wykonane jako zwykły użytkownik niepewny

Instalacja

Instalowanie Dropbear jest bardzo prostym zadaniem, ponieważ jest dostępne we wszystkich głównych dystrybucjach Linux. Wszystko, co musimy zrobić, to użyć naszego ulubionego menedżera pakietów dystrybucyjnych. Na przykład w Debian i jego instrumentach pochodnych, takich jak Ubuntu trafny:

$ sudo apt instal instaluj dropbear

W najnowszych wersjach Fedory możemy użyć DNF Menedżer pakietów:

$ sudo dnf instaluj dropbear

DropBear jest dostępny w repozytorium „społeczności” na Archlinux, więc możemy go zainstalować za pośrednictwem Pacman:

$ sudo pacman -s dropbear


Możliwe jest również zainstalowanie pakietu DropBear na Red Hat Enterprise Linux 7 i Centos 7, dodając Epel dodatkowe repozytorium, a następnie użyj mniam Menedżer pakietów:

$ sudo yum instaluj dropbear

Niestety, chociaż wersja Epel repozytorium poświęcone najnowszej wersji Rhel (8) został już wydany, nie zawiera jeszcze pakietu dropBear. Nadal można zainstalować EPEL 7 w RHEL 8, ale należy to zrobić z ostrożnością.

Konfigurowanie dropBear

Usługa dropBear nie odczytuje swojej konfiguracji z dedykowanego pliku, takiego jak OpenSSH. Po prostu modyfikujemy zachowanie programu, uruchamiając go z odpowiednimi opcjami wiersza poleceń. Sposób, w jaki określamy opcje, zależy od rozkładu, którego używamy.

Na przykład na Ubuntu modyfikujemy /etc/domyślne/dropbear plik. Oto jego treść:

# Port TCP, który odnosi się do dropbear_port = 22 # Wszelkie dodatkowe argumenty dotyczące dropbear_extra_args = # Określ opcjonalny plik banerowy zawierający komunikat, który ma być # wysyłany do klientów przed ich połączeniem, na przykład „/etc/emisj.Net " # RSA Plik hostkey (domyślnie:/etc/dropBear/dropbear_rsa_host_key) #DropBear_Rsakey ="/etc/dropBear/dropBear_Rsa_host_key " # dss hostey plik (domyślne:/etc/dropBear/dropBear_DSS_HOST_KEY) #Dropear_dsskey =" Dropbear_dss_host_key "

Pierwszą rzeczą, którą możemy skonfigurować w tym pliku, jest Dropbear_port zmienna, która służy do ustawienia portu, którego demon powinien być słuchany (domyślnie to port 22).

DropBear_Extra_ARGS Zmienną można użyć do określenia opcji, które zostaną przekazane do dropBear. Powiedzmy na przykład chcemy wyłączyć logowanie hasła. Możemy wykonać zadanie, używając -S Opcja (zapoznaj się z Manpage DropBear, aby uzyskać pełną listę opcji), dlatego piszemy:

DropBear_Extra_ARGS = "-S"

Dropbear_banner Opcję można użyć do określenia pliku zawierającego komunikat do wyświetlania klientom, gdy próbują połączyć się z serwerem (to samo można zrobić za pomocą za pomocą -B opcja).

Wreszcie z Dropbear_rsakey I Dropbear_dsskey zmienne, możemy określić alternatywne ścieżki dla RSA I DSS klucze serwera, domyślna istota /etc/dropbear/dropbear_rsa_host_key I /etc/dropbear/dropbear_dss_host_key odpowiednio. Klucze są automatycznie generowane podczas instalacji programu przez Dropbearkey narzędzie (czytaj dalej, aby nauczyć się go używać).

W Fedorze opcje są zarządzane w inny sposób. Jeśli spojrzymy na Dropbear SystemD jednostka używana do konfigurowania usługi możemy zaobserwować następujące dyrektywy:

$ Systemctl Cat Dropbear.System Systemctl Cat Dropbear #/usr/lib/systemd/system/system/dropbear.serwis [jednostka] Opis = Dropbear SSH Server Daemon Dokumentacja = Man: DropBear (8) Wants = DropBear-Keygen.serwis po = sieć.Target [Service] EnvironmentFile = -/etc/sysconfig/dropbear execStart =/usr/sbin/dropbear -e -f $ $ opcje [instalacja] WantedBy = Multi -User.cel

Jeśli spojrzymy na [Praca] Stanza, widzimy Plik środowiskowy dyrektywa, która służy do określenia pliku pozyskiwanego dla zmiennych środowiskowych. W takim przypadku plik jest /etc/sysconfig/dropbear (Domyślnie nie istnieje, dlatego musimy to utworzyć). Jak możemy wydedukować obserwowanie ExecStart instrukcja, opcje poleceń są przekazywane poprzez rozszerzenie $ Opcje Zmienna: należy ją zdefiniować w pliku wymienionym powyżej.



Zobaczmy przykład. Załóżmy, że chcemy wyświetlić wiadomość, gdy użytkownik próbuje się połączyć. Aby wykonać zadanie, musimy użyć dropbear -B opcja i określ plik zawierający wiadomość, która ma być wyświetlona jako argument. Zakładając, że ten plik to „/etc/banner” (ścieżka jest dowolna), wewnątrz /etc/sysconfig/dropbear Plik, który piszemy:

Options = "-b /etc /baner"

Za każdym razem, gdy dokonujemy zmiany, musimy ponownie uruchomić usługę, aby była skuteczna. Zobaczymy, jak to zrobić w następnym akapicie.

Zarządzaj serwerem DropBear

W niektórych dystrybucjach, takich jak Ubuntu, demon dropbear jest automatycznie uruchamiany i włączony w rozruchu automatycznie podczas instalacji. Aby zweryfikować stan usługi dropbear, możemy uruchomić następujące polecenia:

# Sprawdź, czy usługa jest aktywna $ Systemctl is-Active Dropbear Active # Sprawdź, czy usługa jest włączona

Aby aktywować lub włączyć usługę ręcznie, używamy następujących poleceń:

# Rozpocznij usługę $ sudo systemctl start dropBear # Włącz usługę w rozruchu $ sudo systemctl Włącz DropBear # wykonaj oba działania z jednym polecenie

Jak już powiedziano, za każdym razem, gdy zmieniamy parametr konfiguracyjny, musimy ponownie uruchomić serwer. Wszystko, co musimy zrobić, to uruchomić:

$ sudo systemCtl restart dropbear

Narzędzia Dropbear

Aplikacja Dropbear jest wyposażona w użyteczne narzędzia. Spójrzmy:

Dropbearkey

Już widzieliśmy Klucz z dropbear służy do generowania prywatnych kluczy serwera. Podczas korzystania z narzędzia musimy określić typ klucza do wygenerowania, jeden z nich RSA, Ecdsa I DSS z -T opcja i plik docelowy do użycia dla tajnego klucza. Możemy również określić rozmiar kluczowy w bitach (powinna to być wielokrotność 8), używając -S opcja. Zobaczmy przykład.

Do wygenerowania 4096 bity prywatny Klucz RSA Do pliku o nazwie „Klucz” możemy uruchomić:

$ dropbearkey -t rsa -s 4096 -F klucz

Polecenie generuje klucz i wyświetla swoją publiczną część na ekranie. Ta część klucza można również wizualizować ją później, za pomocą -y opcja Dropbearkey. Opcja może być przydatna na przykład do wygenerowania pliku zawierającego klucz publiczny. Wszystko, co musimy zrobić, to przekierować dane wyjściowe polecenia. Możemy uruchomić:

$ DropBearmey -y -f klucz | grep ^ssh-rsa> key_public

DropBearConvert

DropBearConvert Narzędzie służy do konwersji między formatami klawiszy prywatnych OpenSSH. Korzystając z aplikacji, musimy zapewnić:

  • Input_Type: Typ klucza, który należy przekonwertować, może być albo dropbear lub openSSH;
  • Output_type: Typ klawisz należy przekonwertować na DropBear lub OpensSh;
  • input_file: ścieżka klucza do konwersji;
  • Output_file: ścieżka docelowa dla konwertowanego klucza.

dbclient

Aby połączyć się z serwerem SSH Dropbear, możemy użyć obu ssh, który jest klientem dostarczonym przez OpenSsh, lub natywny klient Dropbear: dbclient. Ten ostatni obsługuje wszystkie opcje, których można się spodziewać. Między innymi możemy użyć -P opcja określenia alternatywnego portu serwerowego do połączenia, lub -I Aby określić plik tożsamości użyć do połączenia. Aby połączyć się z serwerem Dropbear za pomocą dbclient Możemy uruchomić:

$ dbclient [email protected] gospodarz 192.168.122.176 'nie ma w pliku zaufanych hostów. (ECDSA-SHA2-NISTP521 Parta odcisk palca MD5 5E: FA: 14: 52: AF: BA: 19: 6e: 2c: 12: 75: 65: 10: 8a: 1b: 54) Czy chcesz kontynuować łączenie? (y/n) y [email protected]ło 176: 


Wniosek

W tym samouczku nauczyliśmy się znać Dropbear, lżejszą alternatywę dla serwera OpenSsh. Dropbear jest wyposażony w kompletny zestaw funkcji, takich jak przekazywanie X11, i jest szczególnie dopasowany do instalacji w systemach o ograniczonych zasobach, takich jak routery lub urządzenia do osadzenia. Widzieliśmy, jak zainstalować program w głównych dystrybucjach Linux, w jaki sposób możemy zmodyfikować zachowanie serwera, określając opcje, z którymi powinien być uruchomiony.

Wreszcie przyjrzeliśmy się niektórym narzędziom, które są dostarczane z apartamentu Dropbear, takie jak Dropbearkey, DropBearConvert I dbclient. Dwa pierwsze są używane do generowania kluczy prywatnych i do konwersji klucza z formatu OpenSSH odpowiednio w formacie dropbear (lub odwrotnie). Trzeci to mały klient, który może być wykorzystany jako alternatywa ssh.

Powiązane samouczki Linux:

  • Rzeczy do zainstalowania na Ubuntu 20.04
  • Wprowadzenie do automatyzacji, narzędzi i technik Linuksa
  • Rzeczy do zrobienia po zainstalowaniu Ubuntu 20.04 Focal Fossa Linux
  • Zagnieżdżone pętle w skryptach Bash
  • Mastering Bash Script Loops
  • Optymalizacja wydajności Linux: Narzędzia i techniki
  • Rzeczy do zainstalowania na Ubuntu 22.04
  • Jak w pełni wykorzystać OpenSsh
  • Mint 20: Lepsze niż Ubuntu i Microsoft Windows?
  • Jak skonfigurować serwer OpenVPN na Ubuntu 20.04