So konfigurieren Sie den FTP -Server auf Debian 9 Stretch Linux
- 1038
- 254
- Madleen Vater
Zielsetzung
Das Ziel ist es, den FTP -Server auf Debian 9 Stretch Linux zu installieren und zu konfigurieren, sodass sowohl anonymer als auch lokaler Benutzerzugriff ermöglicht werden können.
Betriebssystem- und Softwareversionen
- Betriebssystem: - Debian 9 Stretch
- Software: - vsftpd Version 3.0.3
Anforderungen
Privilegierter Zugang zu
Schwierigkeit
MITTEL
Konventionen
- # - erfordert, dass gegebene Linux -Befehle mit Root -Berechtigungen entweder direkt als Stammbenutzer oder mit Verwendung von ausgeführt werden können
sudo
Befehl - $ - Erfordert, dass die angegebenen Linux-Befehle als regelmäßiger nicht privilegierter Benutzer ausgeführt werden können
Anweisungen
Das folgende Tutorial erläutert, wie der FTP -Server installiert und konfiguriert wird vsftpd
Dämon. Außerdem werden verschiedene Konfigurationen erörtert, damit anonyme Benutzer sowie lokale Benutzer Schreib- oder schreibgeschützte Zugriff aufnehmen können.
VSFTPD -Installation
Beginnen wir mit VSFPTD Server und FTP -Client -Installation:
# APT Installieren Sie VSFTPD FTP
Standardmäßig wird der VSFTPD-Server konfiguriert, damit Systembenutzer mit schreibgeschütztem Zugriff auf ihre Heimverzeichnisse zugreifen können. Im Folgenden finden Sie eine Standard -VSFTPD -Konfigurationsdatei /etc/vsftpd.Conf
:
listen = no listen_ipv6 = yes anonymous_enable = no local_enable = yes dirmessage_enable = yes use_localtime = yes xferlog_enable = yes connect_from_port_20 = yese-cchroot_dir =/var/run/vsftpd/leer pam_service = vsftpd rsa_cert_file_name = vsftpd rsa_cert_file/service = vsftpd rsa_cert_file/service/sa- Schlangenöl.PEM RSA_PRIVATE_KEY_FILE =/etc/ssl/privat/ssl-cert-snakeoiloil.Schlüssel ssl_enable = nein
Wie bereits erwähnt, wird die obige Konfigurationsdatei nur einen schreibgeschützten Zugriff auf einen in den aufgeführten Systembenutzer gewährt /etc/passwd
Datei. Verwenden ftp
Befehl und versuchen, mithilfe von Benutzername und Kennwort eines der lokalen Systembenutzer eine Verbindung herzustellen:
# FTP Localhost mit Localhost verbunden. 220 (VSFTPD 3.0.3) Name (localhost: root): linuxconfig 331 Bitte geben Sie das Passwort an. Passwort: 230 Login erfolgreich. Remote -Systemtyp ist Unix. Verwenden des Binärmodus, um Dateien zu übertragen. FTP> Datei einlegen.Txt lokal: Datei.Txt remote: Datei.TXT 200 EPRT -Befehl erfolgreich. Erwägen Sie die Verwendung von EPSV. 550 Erlaubnis abgelehnt.
Wenn Sie nur von Ihren lokalen Benutzern schreibgeschützt sind, sind Sie fertig.
Benutzerzugriff zulassen
So fügen Sie Schreibzugriff für alle lokalen Benutzerbenutzer -Benutzer -Konzentrationen für Systeme hinzu oder fügen Sie die folgende Strophe hinzu write_enable = ja
. Die neue Konfigurationsdatei besteht aus:
listen = no listen_ipv6 = yes anonymous_enable = no local_enable = yes dirmessage_enable = yes use_localtime = yes xferlog_enable = yes connect_from_port_20 = yese-cchroot_dir =/var/run/vsftpd/leer pam_service = vsftpd rsa_cert_file_name = vsftpd rsa_cert_file/service = vsftpd rsa_cert_file/service/sa- Schlangenöl.PEM RSA_PRIVATE_KEY_FILE =/etc/ssl/privat/ssl-cert-snakeoiloil.Schlüssel ssl_enable = nein write_enable = ja
Starten Sie als nächstes Ihre VSFTPD neu:
# Systemctl Neustart VSFTPD
Einen neuen Test mit durchführen ftp
Befehl zur Bestätigung des Schreibzugriffs:
# FTP Localhost mit Localhost verbunden. 220 (VSFTPD 3.0.3) Name (localhost: root): linuxconfig 331 Bitte geben Sie das Passwort an. Passwort: 230 Login erfolgreich. Remote -Systemtyp ist Unix. Verwenden des Binärmodus, um Dateien zu übertragen. FTP> Datei einlegen.Txt lokal: Datei.Txt remote: Datei.TXT 200 EPRT -Befehl erfolgreich. Erwägen Sie die Verwendung von EPSV. 150 OK, um Daten zu senden. 226 Übertragung vollständig. FTP> LS 200 EPRT -Befehl erfolgreich. Erwägen Sie die Verwendung von EPSV. 150 Hier kommt die Verzeichnisliste. -rw ------- 1 1000 1000 0 Jun 07 12:45 Datei.TXT 226 Verzeichnis Senden Sie OK.
Erlauben Sie nur bestimmten Benutzern
Im Moment ermöglicht unser FTP -Server den Zugriff auf jeden in den definierten Systembenutzer /etc/passwd
Datei. Damit nur bestimmte Benutzer sich anmelden können, können wir die folgenden Zeilen in unsere Konfigurationsdatei einbeziehen:
Benutzerlist_file =/etc/vsftpd.Benutzerliste userlist_enable = ja
Das oben obene ermöglicht eine vordefinierte Benutzerliste, in der ein Benutzer in innerhalb des Benutzers aufgeführt ist /etc/vsftpd.Benutzerliste
(Ein Benutzername pro Zeile) hat Zugriff auf die FTP, die verweigert wird, während alle anderen Systembenutzer sich anmelden können. Lassen Sie uns eine neue erstellen /etc/vsftpd.Benutzerliste
Benutzerliste, die aus einem einzelnen Benutzer besteht Linuxconfig
:
# echo linuxconfig> /etc /vsftpd.Benutzerliste
Starten Sie den VSFTPD -Server neu:
# Systemctl Neustart VSFTPD
Einen neuen Test mit durchführen ftp
Befehl zur Bestätigung des verweigerten Zugriffs auf FTP Server für Linuxconfig
Benutzer:
# FTP Localhost mit Localhost verbunden. 220 (VSFTPD 3.0.3) Name (localhost: root): Linuxconfig 530 Erlaubnis abgelehnt. Fehler bei der Anmeldung. ftp>
Wenn Sie sich jedoch nur mit den in innerhalb definierten Benutzern anmelden können /etc/vsftpd.Benutzerliste
, Fügen Sie die folgende Konfigurationsoption hinzu userlist_deny = nr
In Ihre VSFTPD -Konfigurationsdatei /etc/vsftpd.Conf
. Unten ist unser Strom /etc/vsftpd.Conf
Konfigurationsdatei:
listen = no listen_ipv6 = yes anonymous_enable = no local_enable = yes dirmessage_enable = yes use_localtime = yes xferlog_enable = yes connect_from_port_20 = yese-cchroot_dir =/var/run/vsftpd/leer pam_service = vsftpd rsa_cert_file_name = vsftpd rsa_cert_file/service = vsftpd rsa_cert_file/service/sa- Schlangenöl.PEM RSA_PRIVATE_KEY_FILE =/etc/ssl/privat/ssl-cert-snakeoiloil.Schlüssel ssl_enable = no write_enable = ja Benutzerlist_file =/etc/vsftpd.UserList UserList_Enable = Ja UserList_deny = Nein
Anonymous erlauben
Zu diesem Zeitpunkt ermöglichen wir auch schreibgeschützte Zugriff durch anonyme Benutzer. Lassen Sie uns ein neues Verzeichnis erstellen, das als Stammverzeichnis für anonyme Benutzer -EG verwendet wird. /var/ftp
. Zu Testzwecken können wir auch eine willkürliche Testdatei innerhalb der Datei einlegen /var/ftp
:
# Mkdir/var/ftp/ # Chmod 555/var/ftp/ # Chown FTP.ftp/var/ftp/ # touch/var/ftp/anonymous.TXT
Fügen Sie außerdem die folgenden Linien in die Zeilen ein /etc/vsftpd.Conf
Konfigurationsdatei zum Definieren eines anonymen Home -Verzeichnisses und des anonymen Zugriffs:
anon_root =/var/ftp anonymous_enable = yes
Optional hinzufügen no_anon_password = ja
LINE, um VSFTPD zu unterweisen, dass sich anonymer Benutzer sich automatisch ohne das Kennwort anmelden kann. Da wir jetzt die Benutzerliste definiert haben, müssen wir auch die hinzufügen anonym
Benutzer zur Liste:
# echo anonymous >> /etc /vsftpd.Benutzerliste # cat /etc /vsftpd.Benutzerliste LinuxConfig Anonymous
Starten Sie Ihren FTP -Server normalerweise neu und führen Sie eine Gültigkeit Ihrer aktuellen Konfiguration durch:
# Systemctl Neustart VSFTPD
Testen Sie anonyme Login:
# FTP Localhost mit Localhost verbunden. 220 (VSFTPD 3.0.3) Name (localhost: root): anonymous 230 Login erfolgreich. Remote -Systemtyp ist Unix. Verwenden des Binärmodus, um Dateien zu übertragen. FTP> LS 200 EPRT -Befehl erfolgreich. Erwägen Sie die Verwendung von EPSV. 150 Hier kommt die Verzeichnisliste. -RW-R-R-- 1 0 0 0 Jun 07 13:29 Anonymous.TXT 226 Verzeichnis Senden Sie OK. ftp>
Im Folgenden finden Sie unsere aktuelle VSFTPD -Konfigurationsdatei:
listen = no listen_ipv6 = yes anonymous_enable = no local_enable = yes dirmessage_enable = yes use_localtime = yes xferlog_enable = yes connect_from_port_20 = yese-cchroot_dir =/var/run/vsftpd/leer pam_service = vsftpd rsa_cert_file_name = vsftpd rsa_cert_file/service = vsftpd rsa_cert_file/service/sa- Schlangenöl.PEM RSA_PRIVATE_KEY_FILE =/etc/ssl/privat/ssl-cert-snakeoiloil.Schlüssel SSL_Enable = no write_enable = us userlist_file =/etc/vsftpd.UserList UserList_Enable = Ja UserList_deny = Nein anon_root =/var/ftp anonymous_enable = yes no_anon_password = yes
Aktivieren Sie den anonymen Schreibzugriff
Als nächstes ermöglichen wir den anonymen Benutzer, Dateien hochzuladen und neue Verzeichnisse und mehr zu erstellen. Erstellen Sie dazu ein neues Verzeichnis hochladen
innerhalb der /var/ftp
Verzeichnis:
# Mkdir/var/ftp/hochladen # Chown FTP.ftp/var/ftp/upload/
Fügen Sie anschließend die folgenden Zeilen in Ihre VSFTPD -Konfigurationsdatei hinzu:
anon_upload_enable = yes anon_other_write_enable = yes anon_mkdir_write_enable = yes
Starten Sie Ihren Server neu:
# Systemctl Neustart VSFTPD
Nach dem Neustart kann der anonyme Benutzer Dateien hochladen, und erstellen Sie Verzeichnisse umbenennen Dateien:
# FTP Localhost mit Localhost verbunden. 220 (VSFTPD 3.0.3) Name (localhost: root): anonymous 230 Login erfolgreich. Remote -Systemtyp ist Unix. Verwenden des Binärmodus, um Dateien zu übertragen. FTP> LS 200 EPRT -Befehl erfolgreich. Erwägen Sie die Verwendung von EPSV. 150 Hier kommt die Verzeichnisliste. -RW-R-R-- 1 0 0 0 Jun 07 13:29 Anonymous.TXT DRWXR-XR-X 2 108 112 4096 Jun 07 13:57 Upload 226 Verzeichnis Senden OK. FTP> CD hochladen 250 Verzeichnis erfolgreich verändert. FTP> Datei einlegen.Txt lokal: Datei.Txt remote: Datei.TXT 200 EPRT -Befehl erfolgreich. Erwägen Sie die Verwendung von EPSV. 150 OK, um Daten zu senden. 226 Übertragung vollständig. FTP> LS 200 EPRT -Befehl erfolgreich. Erwägen Sie die Verwendung von EPSV. 150 Hier kommt die Verzeichnisliste. -rw ------- 1 108 112 0 Jun 07 13:57 Datei.TXT 226 Verzeichnis Senden Sie OK. FTP> Datei umbenennen.Txt neu.Txt 350 bereit für rnto. 250 erfolgreich umbenennen. FTP> LS 200 EPRT -Befehl erfolgreich. Erwägen Sie die Verwendung von EPSV. 150 Hier kommt die Verzeichnisliste. -rw ------- 1 108 112 0 Jun 07 13:57 Neu.TXT 226 Verzeichnis Senden Sie OK. ftp>
Im Folgenden finden Sie unsere endgültige VSFTPD -Konfigurationsdatei:
listen = no listen_ipv6 = yes anonymous_enable = no local_enable = yes dirmessage_enable = yes use_localtime = yes xferlog_enable = yes connect_from_port_20 = yese-cchroot_dir =/var/run/vsftpd/leer pam_service = vsftpd rsa_cert_file_name = vsftpd rsa_cert_file/service = vsftpd rsa_cert_file/service/sa- Schlangenöl.PEM RSA_PRIVATE_KEY_FILE =/etc/ssl/privat/ssl-cert-snakeoiloil.Schlüssel SSL_Enable = no write_enable = us userlist_file =/etc/vsftpd.UserList UserList_enable = yes userlist_deny = no anon_root =/var/ftp anonymous_enable = yes no_anon_password = yes anon_upload_enable = yes anon_other_write_enable = yes anon_mkdir_write_enable = yes
Anhang
Fehlermeldung:
# FTP Localhost mit Localhost verbunden. 220 (VSFTPD 3.0.3) Name (Localhost: Root): Anonymous 500 oops: VSFTPD: Verweigert, mit beschreibbarem Root in chroot () Login fehlgeschlagen zu laufen. ftp>
Das obige gibt an, dass Ihre anon_root
Verzeichnis ist beschreibbar. Lösung besteht darin, es schreibgeschützt zu machen. Beispiel:
# Chmod 555 /var /ftp
Versuchen Sie alternativ, die folgende Zeile in Ihre VSFTPD -Konfigurationsdatei hinzuzufügen:
degly_writable_chroot = yes
Verwandte Linux -Tutorials:
- Setup FTP Server unter Linux einrichten
- Dinge zu installieren auf Ubuntu 20.04
- So richten Sie VSFTPD auf Debian ein
- So richten Sie FTP/SFTP -Server und Client auf Almalinux ein
- Dinge zu tun nach der Installation Ubuntu 20.04 fokale Fossa Linux
- Eine Einführung in Linux -Automatisierung, Tools und Techniken
- Linux -Konfigurationsdateien: Top 30 am wichtigsten
- Dinge zu installieren auf Ubuntu 22.04
- Linux -Download
- FTP -Clientliste und -installation auf Ubuntu 22.04 Linux…
- « Raspbian GNU/Linux Upgrade von Jessie zu Raspbian Stretch 9
- Wiederholen Sie ein vergessenes Root -Passwort auf Redhat 7 Linux Selinux -System »