pure-ftp
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| pure-ftp [2017-06-20 10:15:23] – [weiter Möglichkeiten zum besseren absichern] manfred | pure-ftp [2017-06-20 11:17:02] (aktuell) – manfred | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== Pure-FTPd ====== | ||
| + | |||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | |||
| + | ===== Ubuntu 14.04 LTS ===== | ||
| + | |||
| + | * [[http:// | ||
| + | * **[[https:// | ||
| + | |||
| + | Installation: | ||
| + | <file text> | ||
| + | > aptitude install pure-ftpd | ||
| + | Die folgenden NEUEN Pakete werden zusätzlich installiert: | ||
| + | libfile-copy-recursive-perl{a} openbsd-inetd{a} pure-ftpd pure-ftpd-common{a} update-inetd{a} | ||
| + | </ | ||
| + | |||
| + | Mit Grafischer Gtk-Oberfläche für PureFTPd: | ||
| + | <file text> | ||
| + | > aptitude install pure-ftpd pureadmin | ||
| + | Die folgenden NEUEN Pakete werden zusätzlich installiert: | ||
| + | fontconfig{a} fontconfig-config{a} gamin{a} hicolor-icon-theme{a} libatk1.0-0{a} libatk1.0-data{a} libavahi-client3{a} | ||
| + | libavahi-common-data{a} libavahi-common3{a} libcairo2{a} libcups2{a} libdatrie1{a} libfile-copy-recursive-perl{a} | ||
| + | libfontconfig1{a} libgamin0{a} libgdk-pixbuf2.0-0{a} libgdk-pixbuf2.0-common{a} libglade2-0{a} libgraphite2-3{a} | ||
| + | libgtk2.0-0{a} libgtk2.0-bin{a} libgtk2.0-common{a} libharfbuzz0b{a} libjasper1{a} libjbig0{a} libjpeg-turbo8{a} | ||
| + | libjpeg8{a} libpango-1.0-0{a} libpango1.0-0{a} libpangocairo-1.0-0{a} libpangoft2-1.0-0{a} libpangox-1.0-0{a} | ||
| + | libpangoxft-1.0-0{a} libpixman-1-0{a} libthai-data{a} libthai0{a} libtiff5{a} libxcb-render0{a} libxcb-shm0{a} | ||
| + | libxcomposite1{a} libxcursor1{a} libxdamage1{a} libxfixes3{a} libxft2{a} libxi6{a} libxinerama1{a} libxrandr2{a} | ||
| + | libxrender1{a} openbsd-inetd{a} pure-ftpd pure-ftpd-common{a} pureadmin update-inetd{a} | ||
| + | </ | ||
| + | |||
| + | einen FTP-User und das gemeinsame FTP-Verzeichnis anlegen: | ||
| + | > groupadd ftpgroup | ||
| + | > useradd -g ftpgroup -d /dev/null -s /etc ftpuser | ||
| + | > chown -R ftpuser: | ||
| + | |||
| + | " | ||
| + | > echo " | ||
| + | |||
| + | Konfiguration: | ||
| + | > echo " | ||
| + | > echo " | ||
| + | > echo " | ||
| + | > echo " | ||
| + | |||
| + | der Benutzer " | ||
| + | > pure-pw useradd fritz -u ftpuser -d / | ||
| + | Password: | ||
| + | Enter it again: | ||
| + | |||
| + | Sollte man weitere virtuelle FTP-Benutzer benötigen, dann muss am Ender der Kommandozeile mit '' | ||
| + | |||
| + | nachdem sich etwas an der Passwortdatei geändert hat, muss aus der Passwortdatei ''/ | ||
| + | > pure-pw mkdb | ||
| + | > service pure-ftpd restart | ||
| + | |||
| + | alle virtuellen Benutzer anzeigen: | ||
| + | > pure-pw list | ||
| + | fritz / | ||
| + | |||
| + | alle Daten zu einem virtuellen Benutzer anzeigen: | ||
| + | > pure-pw show fritz | ||
| + | Login : fritz | ||
| + | Password | ||
| + | UID : 1001 (fritz) | ||
| + | GID : 1001 (fritz) | ||
| + | Directory | ||
| + | Full name : | ||
| + | Download bandwidth : 0 Kb (unlimited) | ||
| + | Upload | ||
| + | Max files : 0 (unlimited) | ||
| + | Max size : 0 Mb (unlimited) | ||
| + | Ratio : 0:0 (unlimited: | ||
| + | Allowed local IPs : | ||
| + | Denied | ||
| + | Allowed client IPs : | ||
| + | Denied | ||
| + | Time restrictions | ||
| + | Max sim sessions | ||
| + | |||
| + | Passwort eines virtuellen Benutzers ändern: | ||
| + | > pure-pw passwd fritz -m | ||
| + | |||
| + | einen virtuellen Benutzer löschen: | ||
| + | > pure-pw userdel fritz -m | ||
| + | |||
| + | Start/ | ||
| + | > service pure-ftpd status | ||
| + | > service pure-ftpd start | ||
| + | > service pure-ftpd stop | ||
| + | |||
| + | Server-Aktivitäten anzeigen: | ||
| + | > pure-ftpwho | ||
| + | +------+---------+-------+------+-------------------------------------------+ | ||
| + | | PID | Login |For/Spd| What | | ||
| + | +------+---------+-------+------+-------------------------------------------+ | ||
| + | |||
| + | |||
| + | ==== weiter Möglichkeiten zum besseren absichern ==== | ||
| + | |||
| + | |||
| + | === mit SSL Zertifikat für TLS === | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | FTP is by nature a rather unsecure protocol. Add TLS support to prevent your sessions from being vulnerable to man-in-the-middle-attacks | ||
| + | > aptitude install openssl | ||
| + | |||
| + | Enable TLS only mode in Pure-FTPd | ||
| + | > echo 2 > / | ||
| + | |||
| + | or for a less secure version that also accepts insecure FTP connections | ||
| + | > echo 1 > / | ||
| + | |||
| + | Make a private SSL key | ||
| + | > mkdir -p / | ||
| + | |||
| + | Create your key (z.B. für 7300 Tage) | ||
| + | > openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout / | ||
| + | |||
| + | SSL certificates are inherently insecure if other users can read them. You must secure the certificate before it can be used by changing file permissions. | ||
| + | > chmod 600 / | ||
| + | |||
| + | And now you need to restart Pure-FTPd | ||
| + | > / | ||
| + | |||
| + | |||
| + | === fail2ban === | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | <file bash / | ||
| + | # | ||
| + | # FTP servers | ||
| + | # | ||
| + | |||
| + | [pure-ftpd] | ||
| + | |||
| + | enabled | ||
| + | port = ftp, | ||
| + | filter | ||
| + | action | ||
| + | | ||
| + | logpath | ||
| + | maxretry = 3 | ||
| + | </ | ||
| + | |||
| + | <file bash / | ||
| + | # Version vom 08. Februar 2010 | ||
| + | failregex = pure-ftpd(?: | ||
| + | </ | ||
