Jak skonfigurować serwer FTP na Debian 9 Stretch Linux

Jak skonfigurować serwer FTP na Debian 9 Stretch Linux

Cel

Celem jest zainstalowanie i konfigurowanie serwera FTP w Debian 9 Stretch Linux, umożliwiając zarówno anonimowy lub lokalny dostęp użytkownika.

Wersje systemu operacyjnego i oprogramowania

  • System operacyjny: - Debian 9 odcinek
  • Oprogramowanie: - VSFTPD wersja 3.0.3

Wymagania

Uprzywilejowany dostęp do

Trudność

ŚREDNI

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

Instrukcje

Poniższy samouczek wyjaśni, jak zainstalować i skonfigurować serwer FTP za pomocą VSFTPD Demon. Omówi także różne konfiguracje, aby umożliwić zapis lub odczyt dostęp do anonimowego użytkownika, a także użytkowników lokalnych.

Instalacja VSFTPD

Zacznijmy od instalacji VSFPTD Server i FTP Client:

# apt Zainstaluj VSFTPD FTP 

Domyślnie skonfigurowany serwer VSFTPD, aby umożliwić użytkownikom systemu dostępu do ich katalogów domowych z dostępem tylko do odczytu. Poniżej znajduje się domyślny plik konfiguracji VSFTPD /etc/vsftpd.conf:



słuchaj = nie słuchanie_ipv6 = tak anonimowe_enable = nie local_enable = Tak dirmessage_enable = Tak użyj_localtime = Tak xferlog_enable = Tak Connect_From_Port_20 = Tak Secure_chroot_dir =/var/run/vsftpd/pusty pam_service_name = vsftpd rsA_Cerct_file =/etc/ssl/ Wąż.PEM rsa_private_key_file =/etc/ssl/private/ssl-cert-snakeil.klucz ssl_enable = nie 

Jak już wspomniano, powyższy plik konfiguracji zapewni tylko dostęp tylko do odczytu dowolnego użytkownika systemu wymienionego w środku /etc/passwd plik. Używać ftp polecenie i próba połączenia za pomocą nazwy użytkownika i hasła dowolnego z lokalnych użytkowników systemu:

# FTP LocalHost podłączony do LocalHost. 220 (VSFTPD 3.0.3) Nazwa (LocalHost: root): Linuxconfig 331 Podaj hasło. Hasło: 230 Login sukcesu. Zdalny typ systemu to UNIX. Korzystanie z trybu binarnego do przesyłania plików. ftp> plik put.TXT Local: Plik.TXT Remote: Plik.TXT 200 EPRT polecenie. Rozważ użycie EPSV. 550 odmowa. 

Jeśli potrzebujesz tylko dostępu do lokalnych użytkowników.



Zezwalaj na dostęp do zapisu użytkownika

Aby dodać dostęp do zapisu dla wszystkich użytkowników lokalnego systemu lub dodać następującą zwrotkę zapis_enable = tak. Nowy plik konfiguracyjny składa się z:

słuchaj = nie słuchanie_ipv6 = tak anonimowe_enable = nie local_enable = Tak dirmessage_enable = Tak użyj_localtime = Tak xferlog_enable = tak connect_from_port_20 = tak bezpieczny_chroot_dir =/var/run/vsftpd/pusty pam_service_name = vsftpd rsA_Cerct_file =/etc/SSL/ Wąż.PEM rsa_private_key_file =/etc/ssl/private/ssl-cert-snakeil.klucz ssl_enable = nie zapis_enable = tak 

Następnie ponownie uruchom swój VSFTPD:

# Systemctl restart vsftpd 

Wykonaj nowy test z ftp polecenie potwierdzenia dostępu do zapisu:

# FTP LocalHost podłączony do LocalHost. 220 (VSFTPD 3.0.3) Nazwa (LocalHost: root): Linuxconfig 331 Podaj hasło. Hasło: 230 Login sukcesu. Zdalny typ systemu to UNIX. Korzystanie z trybu binarnego do przesyłania plików. ftp> plik put.TXT Local: Plik.TXT Remote: Plik.TXT 200 EPRT polecenie. Rozważ użycie EPSV. 150 OK, aby wysłać dane. 226 Przeniesienie zakończone. FTP> LS 200 EPRT polecenie. Rozważ użycie EPSV. 150 Oto list katalogu. -RW ------- 1 1000 1000 0 czerwca 07 12:45.TXT 226 Directory wyślij OK. 


Zezwalaj tylko na określonych użytkowników

W tej chwili nasz serwer FTP umożliwia dostęp do dowolnego użytkownika systemu zdefiniowanego w środku /etc/passwd plik. Aby umożliwić tylko określonym użytkownikom możliwość logowania, możemy dołączyć następujące wiersze do naszego pliku konfiguracyjnego:

UserList_file =/etc/vsftpd.UserList LLIST LIST_ENABLE = Tak 

Powyższe włączy wstępnie zdefiniowaną listę użytkowników, w której każdy użytkownik wymienił w środku /etc/vsftpd.Lista użytkowników (Jedna nazwa użytkownika na wiersz) będzie miał dostęp do FTP odmówionego, podczas gdy wszyscy inni użytkownicy systemu będą mogli się zalogować. Stwórzmy nowy /etc/vsftpd.Lista użytkowników Lista użytkowników składająca się z jednego użytkownika Linuxconfig:

# echo linuxconfig> /etc /vsftpd.Lista użytkowników 

Uruchom ponownie serwer VSFTPD:

# Systemctl restart vsftpd 

Wykonaj nowy test z ftp polecenie potwierdzenia odmowy dostępu do serwera FTP dla Linuxconfig użytkownik:

# FTP LocalHost podłączony do LocalHost. 220 (VSFTPD 3.0.3) Nazwa (LocalHost: root): Linuxconfig 530 Odmówiono. Logowanie nie powiodło się. ftp> 

Jeśli jednak musisz być w stanie zalogować się tylko z zdefiniowanymi przez użytkowników /etc/vsftpd.Lista użytkowników, Dodaj następującą opcję konfiguracji UserList_deny = nie w pliku konfiguracyjnym VSFTPD /etc/vsftpd.conf. Poniżej znajduje się nasz obecny /etc/vsftpd.conf plik konfiguracyjny:

słuchaj = nie słuchanie_ipv6 = tak anonimowe_enable = nie local_enable = Tak dirmessage_enable = Tak użyj_localtime = Tak xferlog_enable = tak connect_from_port_20 = tak bezpieczny_chroot_dir =/var/run/vsftpd/pusty pam_service_name = vsftpd rsA_Cerct_file =/etc/SSL/ Wąż.PEM rsa_private_key_file =/etc/ssl/private/ssl-cert-snakeil.Klucz ssl_enable = nie zapis_enable = tak UserList_file =/etc/vsftpd.UserList LList_Enable = Tak UserList_deny = nie 


Pozwól anonimowi

Na tym etapie zezwolimy również na dostęp tylko przez anonimowych użytkowników. Zacznijmy tworzyć nowy katalog, który będzie używany jako katalog główny dla anonimowego użytkownika, np. /var/ftp. Do celów testowych możemy również umieścić w środku dowolnego pliku testowego /var/ftp:

# mkdir/var/ftp/ # chmod 555/var/ftp/ # chown ftp.ftp/var/ftp/ # touch/var/ftp/anonimowy.tekst 

Ponadto dołącz następujące wiersze do /etc/vsftpd.conf plik konfiguracyjny w celu zdefiniowania anonimowego katalogu domowego i anonimowego dostępu:

anon_root =/var/ftp anonimous_enable = tak 

Opcjonalnie dodaj no_anon_password = tak Linia, aby poinstruować VSFTPD, aby umożliwić anonimowi użytkownik automatycznie zalogować się bez hasła. Ponieważ teraz zdefiniowaliśmy listę użytkowników, musimy również dodać anonimowy Użytkownik do listy:

# Echo Anonimowy >> /etc /vsftpd.lista użytkownika # cat /etc /vsftpd.lista użytkownika LinuxConfig Anonimowy 

Jak zwykle uruchom ponownie serwer FTP i wykonaj ważność bieżącej konfiguracji:

# Systemctl restart vsftpd 

Test anonimowy login:

# FTP LocalHost podłączony do LocalHost. 220 (VSFTPD 3.0.3) Nazwa (LocalHost: root): Anonimowy login 230. Zdalny typ systemu to UNIX. Korzystanie z trybu binarnego do przesyłania plików. FTP> LS 200 EPRT polecenie. Rozważ użycie EPSV. 150 Oto list katalogu. -rw-r-r-- 1 0 0 0 czerwca 07 13:29 Anonimowy.TXT 226 Directory wyślij OK. ftp> 

Poniżej można znaleźć nasz bieżący plik konfiguracyjny VSFTPD:

słuchaj = nie słuchanie_ipv6 = tak anonimowe_enable = nie local_enable = Tak dirmessage_enable = Tak użyj_localtime = Tak xferlog_enable = tak connect_from_port_20 = tak bezpieczny_chroot_dir =/var/run/vsftpd/pusty pam_service_name = vsftpd rsA_Cerct_file =/etc/SSL/ Wąż.PEM rsa_private_key_file =/etc/ssl/private/ssl-cert-snakeil.Klucz SSL_ENABLE = Bez Write_enable = Tak UserList_file =/etc/vsftpd.UserList LList_Enable = Tak UserList_deny = nie anon_root =/var/ftp anonimous_enable = tak nie_anon_password = tak 


Włącz anonimowy dostęp do zapisu

Następnie pozwólmy anonimowi użytkownik przesyłać pliki i tworzyć nowe katalogi i więcej. Aby to zrobić, stwórz nowy katalog wgrywać W obrębie /var/ftp informator:

# mkdir/var/ftp/upload # chown ftp.ftp/var/ftp/upload/ 

Następnie dodaj następujące wiersze do pliku konfiguracyjnego VSFTPD:

anon_upload_enable = Tak anon_other_write_enable = Tak anon_mkdir_write_enable = tak 

Uruchom ponownie serwer:

# Systemctl restart vsftpd 

Po ponownym uruchomieniu anonimowy użytkownik będzie mógł przesyłać pliki, tworzyć katalogi Zmień nazwę plików:

# FTP LocalHost podłączony do LocalHost. 220 (VSFTPD 3.0.3) Nazwa (LocalHost: root): Anonimowy login 230. Zdalny typ systemu to UNIX. Korzystanie z trybu binarnego do przesyłania plików. FTP> LS 200 EPRT polecenie. Rozważ użycie EPSV. 150 Oto list katalogu. -rw-r-r-- 1 0 0 0 czerwca 07 13:29 Anonimowy.TXT DRWXR-XR-X 2 108 112 4096 JUN 07 13:57 Prześlij 226 Directory Wyślij OK. FTP> CD Prześlij 250 Directory pomyślnie zmieniło się. ftp> plik put.TXT Local: Plik.TXT Remote: Plik.TXT 200 EPRT polecenie. Rozważ użycie EPSV. 150 OK, aby wysłać dane. 226 Przeniesienie zakończone. FTP> LS 200 EPRT polecenie. Rozważ użycie EPSV. 150 Oto list katalogu. -RW ------- 1 108 112 0 czerwca 07 13:57.TXT 226 Directory wyślij OK. FTP> Zmień nazwę pliku.Txt nowy.TXT 350 Gotowy na RNTO. 250 Zmień nazwę sukcesu. FTP> LS 200 EPRT polecenie. Rozważ użycie EPSV. 150 Oto list katalogu. -RW ------- 1 108 112 0 czerwca 13:57 NOWOŚĆ.TXT 226 Directory wyślij OK. ftp> 

Poniżej można znaleźć nasz ostateczny plik konfiguracyjny VSFTPD:

słuchaj = nie słuchanie_ipv6 = tak anonimowe_enable = nie local_enable = Tak dirmessage_enable = Tak użyj_localtime = Tak xferlog_enable = tak connect_from_port_20 = tak bezpieczny_chroot_dir =/var/run/vsftpd/pusty pam_service_name = vsftpd rsA_Cerct_file =/etc/SSL/ Wąż.PEM rsa_private_key_file =/etc/ssl/private/ssl-cert-snakeil.Klucz SSL_ENABLE = Bez Write_enable = Tak UserList_file =/etc/vsftpd.UserList UserList_enable = Tak UserList_deny = nie anon_root =/var/ftp anonimous_enable = tak nie_anon_password = tak anon_upload_enable = Tak anon_other_write_enable = Tak anon_mkdir_write_enable = tak 

Załącznik

Komunikat o błędzie:

# FTP LocalHost podłączony do LocalHost. 220 (VSFTPD 3.0.3) Nazwa (LocalHost: root): Anonimowy 500 UOPS: VSFTPD: Odmawianie uruchomienia z zapisem korzeni wewnątrz chroot () logowanie nie powiodło się. ftp> 

Powyższe wskazuje, że twój anon_root Katalog jest zapisany. Rozwiązanie polega na tym, aby było to tylko do odczytu. Przykład:

# chmod 555 /var /ftp 

Alternatywnie spróbuj dodać następujący wiersz do pliku konfiguracyjnego VSFTPD:

zezwolić_writeble_chroot = tak 

Powiązane samouczki Linux:

  • Skonfiguruj serwer FTP w systemie Linux
  • Rzeczy do zainstalowania na Ubuntu 20.04
  • Jak skonfigurować VSFTPD na Debian
  • Jak skonfigurować serwer FTP/SFTP i klient na Almalinux
  • Rzeczy do zrobienia po zainstalowaniu Ubuntu 20.04 Focal Fossa Linux
  • Wprowadzenie do automatyzacji, narzędzi i technik Linuksa
  • Linux Pliki konfiguracyjne: Top 30 Najważniejsze
  • Rzeczy do zainstalowania na Ubuntu 22.04
  • Pobierz Linux
  • Lista klientów FTP i instalacja na Ubuntu 22.04 Linux…