Jak skonfigurować serwer FTP na Debian 9 Stretch Linux
- 4471
- 947
- Pani Janina Cieśla
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…
- « Raspbian GNU/Linux Upgrade z Jessie do Raspbian Etrapt 9
- Odzyskaj zapomniane hasło roota w systemie Redhat 7 Linux Selinux »