Vsftp Installation: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 44: Zeile 44:
 
  pasv_min_port=40000
 
  pasv_min_port=40000
 
  pasv_max_port=50000
 
  pasv_max_port=50000
 
+
=Schreibender Zugrifferlauben=
 
 
*um schreibenden Zugriff zu erlauben, Kommentarzeichen vor folgender Zeile entfernen
 
 
  #write_enable=YES
 
  #write_enable=YES
 
*Lokalen Benutzern Zugriff erlauben
 
local_enable=YES
 
*lokalen Benutzern anhand einer Benutzerliste Zugriff erlauben - nur diesen Benutzern ist Zugriff erlaubt:
 
userlist_enable=YES
 
userlist_file=/etc/vsftpd.userlist
 
userlist_deny=NO
 
 
*lokalen Benutzern anhand einer Benutzerliste Zugriff verbieten - anonymer Zugriff funktioniert weiterhin:
 
userlist_enable=YES
 
userlist_file=/etc/vsftpd.userlist
 
userlist_deny=YES
 
  
 
=Restart & enable=
 
=Restart & enable=

Version vom 16. Februar 2023, 20:36 Uhr


installation

sudo apt-get update
sudo apt-get install vsftpd

vsftpd test configuration

  • mkdir -p /var/ftp/pub
  • chown nobody:nogroup /var/ftp/pub
  • echo "vsftpd test file" | sudo tee /var/ftp/pub/test.txt
add / change in vi /etc/vsftp.conf

Anonyme Logins zulassen

  • vsftpd ist von Haus aus so konfiguriert, dass anonyme Benutzer sich nicht einloggen dürfen. Durch Editieren der Datei /etc/vsftpd.conf kann der anonyme Zugriff aber leicht aktiviert werden.
anonymous_enable=YES

Lokale Benutzer zulassen

Die Standardeinstellung von vsftp ist, dass sich lokale Benutzer per ftp einloggen dürfen. Möchte man dies deaktivieren, so muss man diese Option setzen.

local_enable=YES" 

Zugriff auf Benutzer beschränken

Bestimmte Nutzer erlauben

Um nur bestimmten Benutzern den Login via FTP zu erlauben, müssen folgende Optionen gesetzt werden

userlist_deny=NO
userlist_enable=YES
userlist_file=/etc/vsftpd.user_list

Bestimmte Nutzer verbieten

Um bestimmten Benutzern den Login via FTP zu verbieten, müssen folgende Optionen gesetzt werden (In diesem Fall wird den restlichen Benutzern der Login gewährt):

userlist_deny=YES
userlist_enable=YES
userlist_file=/etc/vsftpd.user_list

Die Nutzer werden in beiden Fällen folgendermaßen in die Datei /etc/vsftpd.user_list eingetragen:

#
# Point users at the directory we created earlier.
anon_root=/var/ftp/
#
# Stop prompting for a password on the command line.
no_anon_password=YES
#
# Show the user and group as ftp:ftp, regardless of the owner.
hide_ids=YES
#

Passives FTP

Passives FTP aktivieren

pasv_enable=YES

Portbereich für passives FTP

pasv_min_port=40000
pasv_max_port=50000

Schreibender Zugrifferlauben

#write_enable=YES

Restart & enable

systemctl restart vsftpd.service
systemctl enable vsftpd.service

Testen des Zugriffs

  • ftp localhost
Connected to localhost.
220 (vsFTPd 3.0.3)
Name (localhost:dummy.user): anonymous
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
  • Passiven Modus anschalten
  • ftp> passive
Passive mode on.
  • Verzeichnis wechseln und Testdatei herunterladen bzw. Testdatei hochladen
  • ftp> cd pub
  • ftp> get test.txt
  • ftp> put test2.txt

vsftpd mit SSL/TLS - Erstellen des Zertifikates

  • openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem

vsftpd mit SSL/TLS - Anpassen der vsftpd Konfiguration /etc/vsftpd.conf

anonymous_enable=NO
write_enable=YES

local_enable=YES
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO

chroot_local_user=YES
allow_writeable_chroot=YES # Alternatively: please consider using sFTP (FTP over SSH) or FTPs (FTP via TLS) with a modified, non-writeable, chroot.

rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
ssl_enable=YES
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
ssl_ciphers=HIGH
  • Restarten vsftpd
  • systemctl restart vsftpd.service

vsftpd mit SSL/TLS - Kontrolle

  • Zugriff über einen ftp Client, z.Bsp. Filezilla
  • Als Encryption 'Require explicit FTP over TLS' auswählen

Vsftpd-filezilla-1.png

  • Nach Anklicken des Buttons 'Connect' wird das Zertifikat angezeigt