Multiserver Setup mit dedizierten Web, E-Mail, DNS & MySQL Datenbank Servern unter Debian Squeeze mit ISPConfig 3

Konfigurieren Sie nun PureFTPd, sodass es FTP und TLS Sitzungen erlaubt. FTP ist ein sehr unsicheres Protokoll, da alle Passwörter und Daten in klarem Text übertragen werden. Durch Benutzung von TLS wird jegliche Kommunikation verschlüsselt, wodurch FTP sehr viel sicherer gemacht wird.

Wollen Sie FTP und TLS Sitzungen erlauben, benutzen Sie:

echo 1 > /etc/pure-ftpd/conf/TLS

Um TLS zu benutzen, müssen Sie ein SSL Zertifikat erstellen. Ich erstelle es in /etc/ssl/private/, deshalb muss ich dieses Verzeichnis erst erstellen:

mkdir -p /etc/ssl/private/

Danach können Sie das SSL Zertifikat generieren:

openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem

Country Name (2 letter code) [AU]: <– Geben Sie Ihr Land an (z.B., „DE“).
State or Province Name (full name) [Some-State]:
<– Geben Sie Ihr Bundesland an (z.B. Niedersachsen).
Locality Name (eg, city) []:
<– Geben Sie Ihre Stadt an (z.B. Lueneburg).
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
<– Geben Sie den Namen Ihrer Firma an.
Organizational Unit Name (eg, section) []:
<– Geben Sie den Namen Ihrer Abteilung an (z.B. „IT Department“).
Common Name (eg, YOUR name) []:
<– Geben Sie den qualifiezierten Domainnamen Ihres Systems an (z.B. „server1.example.com“).
Email Address []:
<– Geben Sie Ihre E-Mail Adresse an.

Ändern Sie die Zugriffsrechte auf das SSL Zertifikat:

chmod 600 /etc/ssl/private/pure-ftpd.pem

Starten Sie dann PureFTPd neu:

/etc/init.d/pure-ftpd-mysql restart

Editieren Sie die /etc/fstab Datei. Meine sieht folgendermaßen aus (ich habe ,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 zur Partition mit dem Mountpunkt / hinzugefügt): :

vi /etc/fstab

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
# / was on /dev/sda1 during installation
UUID=92bceda2-5ae4-4e3a-8748-b14da48fb297 / ext3 errors=remount-ro,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0 1
# swap was on /dev/sda5 during installation
UUID=e24b3e9e-095c-4b49-af27-6363a4b7d094 none swap sw 0 0
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0
/dev/fd0 /media/floppy0 auto rw,user,noauto 0 0

Um Quota zu aktivieren, benutzen Sie folgende Befehle:

mount -o remount /

quotacheck -avugm
quotaon -avug

Installieren Sie vlogger, webalizer und awstats:

apt-get -y install vlogger webalizer awstats

Öffnen Sie danach /etc/cron.d/awstats

vi /etc/cron.d/awstats

… und kommentieren beide Cron Jobs in der Datei aus:

#*/10 * * * * www-data [ -x /usr/share/awstats/tools/update.sh ] && /usr/share/awstats/tools/update.sh

# Generate static reports:
#10 03 * * * www-data [ -x /usr/share/awstats/tools/buildstatic.sh ] && /usr/share/awstats/tools/buildstatic.sh

Installieren Sie Jailkit: Jailkit wird nur gebraucht, wenn Sie SSH Benutzer und Cron Jobs chrooten wollen. Es kann wie folgt installiert werden (Wichtig: Jailkit muss vor ISPConfig installiert werden – dies kann nicht nachträglich geschehen!):

apt-get -y install build-essential autoconf automake1.9 libtool flex bison debhelper

cd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.14.tar.gz
tar xvfz jailkit-2.14.tar.gz
cd jailkit-2.14
./debian/rules binary
cd ..
dpkg -i jailkit_2.14-1_*.deb
rm -rf jailkit-2.14*

Installieren Sie fail2ban: Dies ist zwar optional, wird aber empfohlen, da der ISPConfig Monitor versucht, dessen Log anzuzeigen:

apt-get install fail2ban

Um fail2ban PureFTPd überwachen zu lassen, erstellen Sie die Datei /etc/fail2ban/jail.local:

vi /etc/fail2ban/jail.local

[pureftpd]

enabled = true
port = ftp
filter = pureftpd
logpath = /var/log/syslog
maxretry = 3

Danach erstellen Sie die folgende Filterdatei:

vi /etc/fail2ban/filter.d/pureftpd.conf

[Definition]
failregex = .*pure-ftpd: (.*@<HOST>) [WARNING] Authentication failed for user.*
ignoreregex =

Starten Sie fail2ban danach neu:

/etc/init.d/fail2ban restart

Das könnte dich auch interessieren …