Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| wiki:dienste:vsftpd [2011/03/28 16:02] – [ftpwho für vsftpd] wikiadmin | wiki:dienste:vsftpd [2015/01/13 11:19] (aktuell) – [Bug bei bei chroot] wikiadmin | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ~~BARCODE~class=barcode_right~size=S~~ | ||
| + | |||
| + | ====== Verschlüsseltes FTP ====== | ||
| + | |||
| + | |||
| + | Da FTP ein unsicheres Protokoll ist, um Daten zu übertragen, | ||
| + | |||
| + | |||
| ===== Installation ===== | ===== Installation ===== | ||
| Zeile 29: | Zeile 37: | ||
| < | < | ||
| - | ===== Konfigurationsdateien ===== | + | ===== Konfigurationsdateien ===== |
| / | / | ||
| - | <filebash | + | <file bash vsftpd.conf> |
| # daemon started from an initscript. | # daemon started from an initscript. | ||
| listen=YES | listen=YES | ||
| Zeile 110: | Zeile 118: | ||
| </ | </ | ||
| - | ===== Skript zur erstellung eines FTP-Benutzers | + | ====== Sicherheitseinstellung ====== |
| - | In / | + | Da Filezilla ab Version 3.5.3 die Cipher-Suite verändert hat, muss man die Konfiguration von vsftpd anpassen. Hierzu einfach folgende Zeile an die Konfigurtion anhängen |
| - | <file bash ftpuser_create> | + | |
| - | # Kleines Programm zum erstellen eines ftp-Nutzers mit mount des Verzeichnisses fuer_alle | + | |
| - | + | ||
| - | # Prüfen, ob das Script als root aufgerufen wurde | + | |
| - | if [ `id -u` -ne " | + | |
| - | then | + | |
| - | echo "You must be root" | + | |
| - | exit 1 | + | |
| - | fi | + | |
| - | + | ||
| - | if [ $# = " | + | |
| - | then | + | |
| - | user=$1 | + | |
| - | # PrÃüft, ob der eingegeben User schon existiert | + | |
| - | if ! id $user>/ | + | |
| - | then | + | |
| - | #User wird angelegt | + | |
| - | if sudo useradd -d /home/$user -m -s /bin/false $user | + | |
| - | then | + | |
| - | echo " | + | |
| - | # Passwort generieren | + | |
| - | password=`cat / | + | |
| - | # Abfrage, ob generiertes Passwort verwendet werden soll | + | |
| - | echo -e " | + | |
| - | read fragepasswd | + | |
| - | case $fragepasswd in | + | |
| - | j|J|"" | + | |
| - | printf " | + | |
| - | sudo passwd $user < $passwordfile > /dev/null 2>& | + | |
| - | sudo rm $passwordfile | + | |
| - | ;; | + | |
| - | *) | + | |
| - | sudo passwd $user | + | |
| - | esac | + | |
| - | + | ||
| - | # Abfrage, ob Passwort gespeichert werden soll | + | |
| - | echo -e " | + | |
| - | read fragespeicher | + | |
| - | case $fragespeicher in | + | |
| - | j|J|"" | + | |
| - | printf " | + | |
| - | ;; | + | |
| - | *) | + | |
| - | esac | + | |
| - | # Verzeichnis wird ür den Mountpoint angelegt | + | <file bash vsftpd.conf> |
| - | sudo mkdir / | + | ssl_ciphers=HIGH |
| - | # Anlegen des oeffentl. Verzeichnisses fuer Apache | + | |
| - | sudo mkdir / | + | |
| - | sudo chown $user.$user / | + | |
| - | # Eintrag in die fstab wird geschrieben, | + | |
| - | # damit automatisch gemountet wird | + | |
| - | echo -e "/ | + | |
| - | # Mountpoint einhängen | + | |
| - | /bin/mount -a | + | |
| - | fi | + | |
| - | else | + | |
| - | echo -e " | + | |
| - | fi | + | |
| - | else | + | |
| - | echo -e " | + | |
| - | fi | + | |
| </ | </ | ||
| - | ===== Script zum löschen eines FTP-Benutzers | + | ====== Skripte für FTP ====== |
| - | in / | + | |
| - | <file bash ftpuser_del> | + | Das Leben ist zu kurz zum tippen, deshalb hier ein paar Scripte, um mir ein paar Arbeiten zu erleichtern |
| - | #!/bin/bash | + | |
| - | user=$1 | + | * Skript zur erstellung eines FTP-Benutzers findet man [[wiki: |
| + | * Script zum löschen eines FTP-Benutzers findet man [[wiki: | ||
| + | * ftpwho für vsftpd findet man [[wiki: | ||
| - | #Pruefen, ob das Progamm als root gestartet wurde | + | ====== Bug bei bei chroot ====== |
| - | if [ ! `id -u` = " | + | |
| - | then | + | |
| - | echo "You must be root" | + | |
| - | exit 1 | + | |
| - | fi | + | |
| - | #Pruefen, ob Benutzer existiert | ||
| - | if ! id -u $user>/ | ||
| - | then | ||
| - | echo -e "$user existiert nicht\nProgramm beendet" | ||
| - | exit 1 | ||
| - | fi | ||
| - | #Mountpunkt umounten, damit beim loeschen nicht fuer_alle geloescht | + | In der Version 2.3.5, die bei ubuntu und Debian standardmäßig ausgeliefert |
| - | if ! umount | + | |
| - | then | + | |
| - | echo -e " | + | |
| - | exit 1 | + | |
| - | fi | + | |
| - | # | + | Dieser ist bekannt und wurde in der Version 3 behoben. Leider |
| - | if ! userdel -r $user | + | |
| - | then | + | |
| - | echo -e " | + | |
| - | exit 1 | + | |
| - | fi | + | |
| - | #Eintrag fuer den Nutzer aus der fstab loeschen | + | Zum fixen den Bugs eignet sich folgende Methoden |
| - | cp /etc/fstab / | + | |
| - | if ! grep -v "/ | + | |
| - | then | + | |
| - | echo -e " | + | |
| - | exit 1 | + | |
| - | fi | + | |
| - | mv /etc/fstab.neu /etc/fstab | + | < |
| + | echo "deb http:// | ||
| + | aptitude update | ||
| + | aptitude install -t wheezy-updates debian-cyconet-archive-keyring vsftpd | ||
| + | echo " | ||
| + | / | ||
| </ | </ | ||
| - | ===== ftpwho für vsftpd ===== | + | Und alles läuft wieder wie gewünscht |
| + | |||
| + | Ausführliche Anleitung findet man auf der Seite [[http:// | ||
| - | Skript findet man [[wiki:skripte:ftpwho|hier]] | + | ====== |
| + | * [[http://wiki.ubuntuusers.de/ | ||
| + | * [[http:// | ||
| + | * [[http:// | ||
| + | * [[http:// | ||