Jak utworzyć tylko użytkownika SFTP w Debian 11

Jak utworzyć tylko użytkownika SFTP w Debian 11

SFTP (SSH File Transfer Protocol) to bezpieczny protokół plików używany do dostępu, zarządzania i przesyłania plików przez zaszyfrowaną sesję transportową SSH. Pierwsza bezpieczeństwo jest zasadą kciuka dla administratorów systemu. W niektórych przypadkach musimy umożliwić zdalnym użytkownikom dostępu do systemu plików w naszym systemie, ale nie chcesz pozwolić im na uzyskanie powłoki. Umożliwi to bezpieczny kanał, aby zapewnić ograniczony dostęp do określonych plików i katalogów.

Ten samouczek pomoże Ci skonfigurować dostęp do SFTP (bez dostępu do powłoki) w systemie Debian 11. Utworzy w systemie środowisko chroot, aby ograniczyć użytkownika SFTP tylko do określonego katalogu. Umożliwi również SFTP dostęp tylko bez SSH dostęp do użytkownika.

Wymagania wstępne

  • Uruchomiony system Linux Debian 11 Bullseye
  • Musisz mieć uprzywilejowane konto Sudo z dostępem do powłoki

Krok 1 - Utwórz nowego użytkownika

Przede wszystkim utwórz nowego użytkownika do połączenia z serwerem SFTP. Poniższe polecenie utworzy nowe konto wymienione sftpuser bez dostępu do skorupy. Możesz użyć dowolnej nazwiska lub wymagania.

sudo adduser -Shell /bin /false sfpuser  

Krok 2 - Utwórz katalog dostępu do SFTP

Utworzyłeś użytkownika dla SFTP. Teraz utwórz katalog do konfiguracji jako chroot dla SFTP. W tym przykładzie utworzę /var/sftp informator. Katalog musi mieć własność pierwotną, aby skonfigurować jako katalog chroot. Dlatego utworzymy subdirectory pod /var /sftp z dostępem do konta SFTP.

Utwórz strukturę katalogu za pomocą następującego polecenia:

sudo mkdir -p/var/sftp/pliki  

Następnie musimy ustawić prawidłowe uprawnienia do katalogów, aby skonfigurować jako dostęp do chroot z dostępem do zapisu do użytkownika. Tutaj /var /sFTP musi mieć główną własność i grupę za właściwą zgodą. Aby ustawić to pozwolenie, wpisz:

sudo chown root: root /var /sftp  sudo chmod 755 /var /sftp  

Teraz zmień zgodę na "akta" katalog umożliwiający dostęp do zapisu do SFTPUSER. Aby ustawić te uprawnienia, wpisz:

sudo chown sftpuser: sftpuser/var/sftp/pliki  

Gdy SFTPUSER połączy się z serwerem, dostanie /var /sftp jako katalog główny. Nie może uzyskać dostępu do systemu plików poza nim. Ponadto użytkownik może odczytać/zapisywać pliki tylko w katalogu „plików”.

Krok 3 - Skonfiguruj SSHD tylko dla SFTP

Następnie musisz skonfigurować serwer SSH, aby umożliwić „sftpuser” podłączenie serwera tylko z SFTP bez dostępu do powłoki. Aby wprowadzić niezbędne zmiany, edytuj plik konfiguracyjny SSH.

sudo nano/etc/ssh/sshd_config  

i dodaj następujące ustawienia na końcu pliku.

Dopasuj użytkownika sftpuser forceCommand Wewnętrzne SFTP hasło Authentiction Tak chrootdirectory /var /sftp permitTunnel no reagentagent fordacie 
Konfiguracja chroot dla użytkownika SFTP

Sprawdź dwukrotnie, że wszystkie ustawienia są prawidłowe. Następnie zapisz zmiany i uruchom ponownie usługę SSH, aby zastosować zmiany.

sudo systemctl restart ssh  

Wszystkie zakończone, używanie SFTP jest z powodzeniem tworzone w twoim systemie Debian. Teraz spróbuj zalogować się do systemu zdalnego za pomocą poświadczeń nowego użytkownika i sprawdź, czy wszystko działa poprawnie.

Krok 4 - Podłącz do SFTP

Można połączyć się ze zdalnym serwerem SFTP za pomocą wiersza poleceń lub aplikacji graficznych, takich jak FileZilla lub WinsCP. W tym samouczku pokażę wam obie sposoby podłączenia serwera SFTP.

Użytkownicy Linux mogą używać narzędzia linii poleceń SFTP do łączenia się ze zdalnymi instancjami SFTP.

sftp [chroniony e -mail]  Hasło [e -mail chronione]: sftp> 

Interfejs GUI lub użytkownicy systemu Windows mogą korzystać z graficznych klientów SFTP. Na przykład użyj klienta FileZilla, aby podłączyć zdalne konto SFTP w systemie zdalnym.

Sprawdź brak dostępu do powłoki:

Ponieważ to konto jest skonfigurowane dla połączenia tylko SFTP. Więc jeśli jakikolwiek użytkownik próbował się połączyć za pośrednictwem SSH, zostanie odłączony natychmiast po pomyślnym uwierzytelnianiu. Użytkownik otrzyma poniżej wiadomość:

SSH [chroniony e -mail]  Hasło [e -mail chronione]: ta usługa umożliwia tylko połączenia SFTP. Połączenie z SFTP.tecadmin.Zamknięta netto. 

Wniosek

W tym poradniku nauczyłeś się tworzyć środowisko więzienia chroot dla użytkowników SFTP bez dostępu do serwera. Środowisko Chroot zabezpiecza system plików, uniemożliwiając użytkownikom dostęp do plików poza zdefiniowanym katalogiem. Ten samouczek jest tworzony i testowany z systemem Debian 11 Bullseye, ale będzie to działać na innych wersjach Debiana.