Multiserver Setup mit dedizierten Web, E-Mail, DNS & MySQL Datenbank Servern unter Debian Squeeze mit ISPConfig 3
3 Installation des Mailservers
Editieren Sie die hosts Datei und fügen Sie die IP Adressen und Hostnamen aller Server hinzu. Achten Sie dabei darauf, dass Sie sie mit denen Ihres Setups ersetzen:
vi /etc/hosts
127.0.0.1 localhost 192.168.0.105 web.example.tld 192.168.0.106 mail.example.tld 192.168.0.107 db.example.tld 192.168.0.108 ns1.example.tld 192.168.0.109 ns2.example.tld # The following lines are desirable for IPv6 capable hosts ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts
Geben Sie dem Server seinen Hostnamen:
echo mail.example.tld > /etc/hostname
echo mail.example.tld > /etc/mailname
/etc/init.d/hostname.sh start
Benutzen Sie…
apt-get update
… um die apt Paketdatenbank zu aktualisieren; und danach…
apt-get upgrade
… um die neusten Updates der bereits installierten Pakete einzuspielen (falls welche vorhanden sind).
Es ist außerdem immer gut die Systemzeit mit einem NTP (network time protocol) Server über das Internet zu synchronisieren. Benutzen Sie dazu:
apt-get -y install ntp ntpdate
Installieren Sie postfix, dovecot und MySQL mit einem einzigen Befehl:
apt-get -y install postfix postfix-mysql postfix-doc mysql-client mysql-server openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d
Geben Sie, sobald Sie vom Installer dazu aufgefordert werden, das neue MySQL Passwort ein und beantworten Sie die anderen Fragen folgendermaßen:
General type of configuration? <– Internet site
Mail name? <– mail.mydomain.tld
Um amavisd-new, SpamAssassin und ClamAV zu installieren benutzen Sie:
apt-get -y install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl
Wollen Sie Mailinglisten auf Ihrem Server benutzen, so installieren Sie Mailman. Dieser Schritt ist optional. Mailman ist auf einen Apache Webserver angewiesen, wollen Sie also kein Apache auf Ihrem Mailserver laufen haben, sollten Sie Mailman nicht installieren.
apt-get -y install mailman
Der apt Installer von Mailman wird Sie auffordern, Sprachen für die Mailingliste auszuwählen. Erlauben Sie alle Sprachen, die in Mailman benutzen möchten. Erstellen Sie als nächstes die „mailman“ Mailingliste
newlist mailman
und geben die E-Mail Adresse und das neue Passwort des Mailinglisten Administrators ein. Dies ist der letzte Schritt der Mailman Installation. Der nächste Befehl, welcher PHP installiert, muss auf jedem Server ausgeführt werden, ganz gleich ob Sie Mailman installiert haben oder nicht.
Installieren Sie dann die Kommandozeilenversion von PHP um PHP-basierte Skripts für ISPConfig ausführen zu können:
apt-get -y install php5-cli php5-mysql php5-mcrypt mcrypt
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 und Dovecot überwachen zu lassen, erstellen Sie die Datei /etc/fail2ban/jail.local:
vi /etc/fail2ban/jail.local
[dovecot-pop3imap] enabled = true filter = dovecot-pop3imap action = iptables-multiport[name=dovecot-pop3imap, port="pop3,pop3s,imap,imaps", protocol=tcp] logpath = /var/log/mail.log maxretry = 5 |
Erstellen Sie dann die folgende Filterdatei:
vi /etc/fail2ban/filter.d/dovecot-pop3imap.conf
[Definition] failregex = (?: pop3-login|imap-login): .*(?:Authentication failure|Aborted login (auth failed|Aborted login (tried to use disabled|Disconnected (auth failed|Aborted login (d+ authentication attempts).*rip=(?P<host>S*),.* ignoreregex = |
Starten Sie fail2ban danach neu:
/etc/init.d/fail2ban restart
Installieren Sie nun ISPConfig 3 auf diesem Server. Für den Downloadlink der aktuellen stabilen ISPConfig 3 Version, besuchen Sie bitte die ISPConfig Webseite: http://www.ispconfig.org/ispconfig-3/download/
Laden Sie die aktuelle stabile ISPConfig 3 Version herunter:
cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install/
Starten Sie dann das Installationsskript:
php -q install.php
Select language (en,de) [en]: <– en
Installation mode (standard,expert) [standard]: <– expert
Full qualified hostname (FQDN) of the server, eg server1.domain.tld [mail.example.tld]: <– mail.example.tld
MySQL server hostname [localhost]: <– localhost
MySQL root username [root]: <– root
MySQL root password []: <– Geben Sie hier Ihr MySQL root Passwort an
MySQL database to create [dbispconfig]: <– dbispconfig
MySQL charset [utf8]: <– utf8
Shall this server join an existing ISPConfig multiserver setup (y,n) [n]: <– y
MySQL master server hostname []: <– web.example.tld
MySQL master server root username [root]: <– root
MySQL master server root password []: <– Geben Sie hier das root Passwort des Master Servers an
MySQL master server database name [dbispconfig]: <– dbispconfig
Configure Mail (y,n) [y]: <– y
Country Name (2 letter code) [AU]: <– DE (Geben Sie hier den ISO Ländercode Ihres landes an)
State or Province Name (full name) [Some-State]: <– Niedersachsen (Geben Sie Ihr Bundesland an)
Locality Name (eg, city) []: <– Lueneburg (Geben Sie Ihre Stadt an)
Organization Name (eg, company) [Internet Widgits Pty Ltd]: <- ENTER
Organizational Unit Name (eg, section) []: <- ENTER
Common Name (eg, YOUR name) []: <- ENTER
Email Address []: <– ENTER
Configure Jailkit (y,n) [y]: <– n
Configure FTP Server (y,n) [y]: <– n
Configure DNS Server (y,n) [y]: <– n
Configure Apache Server (y,n) [y]: <– n
Configure Firewall Server (y,n) [y]: <–y
Install ISPConfig Web-Interface (y,n) [y]: <–n
Benutzen Sie…
rm -f /var/www/ispconfig
… um den ISPConfig Oberflächenlink im /var/www Verzeichnis zu entfernen.
Räumen Sie anschließend im Installationsverzeichnis auf:
rm -rf /tmp/ispconfig3_install/install
rm -f /tmp/ISPConfig-3-stable.tar.gz