Server Setup · 6 min read · Dec 31, 2025
Der perfekte Server - Ubuntu 14.04 (Apache2, PHP, MySQL, PureFTPD, BIND, Dovecot, ISPConfig 3) - Seite 4
12. Installieren Sie Postfix, Dovecot, MySQL, phpMyAdmin, rkhunter, binutils
Um Postfix zu installieren, müssen wir sendmail stoppen und entfernen
service sendmail stop; update-rc.d -f sendmail removeJetzt können wir Postfix, Dovecot, MySQL, rkhunter und binutils mit einem einzigen Befehl installieren:
apt-get install postfix postfix-mysql postfix-doc mysql-client mysql-server openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d dovecot-mysql dovecot-sieve sudoSie werden nach den folgenden Fragen gefragt:
Neues Passwort für den MySQL “root”-Benutzer: <– yourrootsqlpassword
Wiederholen Sie das Passwort für den MySQL “root”-Benutzer: <– yourrootsqlpassword
Allgemeiner Typ der Mailkonfiguration: <– Internet Site
System-Mailname: <– server1.example.com
Öffnen Sie als Nächstes die TLS/SSL- und Übertragungsports in Postfix:
vi /etc/postfix/master.cfKommentieren Sie die Abschnitte für Übertragung und smtps wie folgt aus - fügen Sie die Zeile -o smtpd_client_restrictions=permit_sasl_authenticated,reject zu beiden Abschnitten hinzu und lassen Sie alles danach kommentiert:
| [...] submission inet n - - - - smtpd -o syslog_name=postfix/submission -o smtpd_tls_security_level=encrypt -o smtpd_sasl_auth_enable=yes -o smtpd_client_restrictions=permit_sasl_authenticated,reject # -o smtpd_reject_unlisted_recipient=no # -o smtpd_client_restrictions=$mua_client_restrictions # -o smtpd_helo_restrictions=$mua_helo_restrictions # -o smtpd_sender_restrictions=$mua_sender_restrictions # -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject # -o milter_macro_daemon_name=ORIGINATING smtps inet n - - - - smtpd -o syslog_name=postfix/smtps -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes -o smtpd_client_restrictions=permit_sasl_authenticated,reject # -o smtpd_reject_unlisted_recipient=no # -o smtpd_client_restrictions=$mua_client_restrictions # -o smtpd_helo_restrictions=$mua_helo_restrictions # -o smtpd_sender_restrictions=$mua_sender_restrictions # -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject # -o milter_macro_daemon_name=ORIGINATING [...] |
Starten Sie Postfix danach neu:
service postfix restartWir möchten, dass MySQL auf allen Schnittstellen hört, nicht nur auf localhost, daher bearbeiten wir /etc/mysql/my.cnf und kommentieren die Zeile bind-address = 127.0.0.1 aus:
vi /etc/mysql/my.cnf| [...] # Anstelle von skip-networking ist die Standardeinstellung jetzt, nur auf # localhost zu hören, was kompatibler ist und nicht weniger sicher. #bind-address = 127.0.0.1 [...] |
Dann starten wir MySQL neu:
service mysql restartÜberprüfen Sie jetzt, ob das Netzwerk aktiviert ist. Führen Sie aus
netstat -tap | grep mysqlDie Ausgabe sollte wie folgt aussehen:
root@server1:~# netstat -tap | grep mysql
tcp 0 0 *:mysql *:* LISTEN 21298/mysqld
root@server1:~#13. Installieren Sie Amavisd-new, SpamAssassin und Clamav
Um amavisd-new, SpamAssassin und ClamAV zu installieren, führen wir aus
apt-get 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-perlDie ISPConfig 3-Installation verwendet amavisd, das die SpamAssassin-Filterbibliothek intern lädt, sodass wir SpamAssassin stoppen können, um RAM freizugeben:
service spamassassin stop
update-rc.d -f spamassassin remove14. Installieren Sie Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear und mcrypt
Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear und mcrypt können wie folgt installiert werden:
apt-get install apache2 apache2-doc apache2-utils libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libruby libapache2-mod-python php5-curl php5-intl php5-memcache php5-memcached php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl memcached snmpDas PHP5 mcrypt-Modul muss manuell aktiviert werden:
php5enmod mcryptSie werden nach der folgenden Frage gefragt:
Webserver zur automatischen Neukonfiguration: <– apache2
Datenbank für phpmyadmin mit dbconfig-common konfigurieren? <– Nein
Führen Sie dann den folgenden Befehl aus, um die Apache-Module suexec, rewrite, ssl, actions und include (plus dav, dav_fs und auth_digest, wenn Sie WebDAV verwenden möchten) zu aktivieren:
a2enmod suexec rewrite ssl actions include cgia2enmod dav_fs dav auth_digestÖffnen Sie als Nächstes /etc/apache2/mods-available/suphp.conf…
vi /etc/apache2/mods-available/suphp.conf… und kommentieren Sie den Abschnitt
| |
Starten Sie Apache danach neu:
service apache2 restartWenn Sie Ruby-Dateien mit der Erweiterung .rb auf Ihren über ISPConfig erstellten Websites hosten möchten, müssen Sie die Zeile application/x-ruby rb in /etc/mime.types auskommentieren:
vi /etc/mime.types| [...] #application/x-ruby rb [...] |
(Dies ist nur für .rb-Dateien erforderlich; Ruby-Dateien mit der Erweiterung .rbx funktionieren sofort.)
Starten Sie Apache danach neu:
service apache2 restart14.1 Xcache
Xcache ist ein kostenloser und offener PHP-Opcode-Cache zum Cachen und Optimieren von PHP-Zwischencode. Es ist ähnlich wie andere PHP-Opcode-Caches, wie eAccelerator und APC. Es wird dringend empfohlen, eines dieser Module zu installieren, um Ihre PHP-Seite zu beschleunigen.
Xcache kann wie folgt installiert werden:
apt-get install php5-xcacheStarten Sie Apache jetzt neu:
service apache2 restart14.2 PHP-FPM
Seit ISPConfig 3.0.5 gibt es einen zusätzlichen PHP-Modus, den Sie für die Verwendung mit Apache auswählen können: PHP-FPM.
Um PHP-FPM mit Apache zu verwenden, benötigen wir das mod_fastcgi Apache-Modul (bitte verwechseln Sie dies nicht mit mod_fcgid - sie sind sehr ähnlich, aber Sie können PHP-FPM nicht mit mod_fcgid verwenden). Wir können PHP-FPM und mod_fastcgi wie folgt installieren:
apt-get install libapache2-mod-fastcgi php5-fpmStellen Sie sicher, dass Sie das Modul aktivieren und Apache neu starten:
a2enmod actions fastcgi alias
service apache2 restart14.2 Zusätzliche PHP-Versionen
Seit ISPConfig 3.0.5 ist es möglich, mehrere PHP-Versionen auf einem Server zu haben (wählbar über ISPConfig), die über FastCGI und PHP-FPM ausgeführt werden können. Um zu erfahren, wie man zusätzliche PHP-Versionen (PHP-FPM und FastCGI) erstellt und wie man ISPConfig konfiguriert, überprüfen Sie bitte dieses Tutorial: Wie man mehrere PHP-Versionen (PHP-FPM & FastCGI) mit ISPConfig 3 (Ubuntu 12.10) verwendet (funktioniert auch für Ubuntu 14.04).
15. Installieren Sie Mailman
Seit Version 3.0.4 ermöglicht ISPConfig auch die Verwaltung (Erstellen/Ändern/Löschen) von Mailman-Mailinglisten. Wenn Sie diese Funktion nutzen möchten, installieren Sie Mailman wie folgt:
apt-get install mailmanWählen Sie mindestens eine Sprache, z.B.:
Sprachen zur Unterstützung: <– en (Englisch)
Fehlende Site-Liste <– Ok
Bevor wir Mailman starten können, muss eine erste Mailingliste namens mailman erstellt werden:
newlist mailmanroot@server1:~# newlist mailman
Geben Sie die E-Mail-Adresse der Person ein, die die Liste verwaltet: <– admin E-Mail-Adresse, z.B. [email protected]
Anfängliches Mailman-Passwort: <– admin Passwort für die Mailman-Liste
Um das Erstellen Ihrer Mailingliste abzuschließen, müssen Sie Ihre /etc/aliases (oder
entsprechende) Datei bearbeiten, indem Sie die folgenden Zeilen hinzufügen und möglicherweise dasnewaliases-Programm ausführen:
Mailman-Mailingliste
mailman: “|/var/lib/mailman/mail/mailman post mailman”
mailman-admin: “|/var/lib/mailman/mail/mailman admin mailman”
mailman-bounces: “|/var/lib/mailman/mail/mailman bounces mailman”
mailman-confirm: “|/var/lib/mailman/mail/mailman confirm mailman”
mailman-join: “|/var/lib/mailman/mail/mailman join mailman”
mailman-leave: “|/var/lib/mailman/mail/mailman leave mailman”
mailman-owner: “|/var/lib/mailman/mail/mailman owner mailman”
mailman-request: “|/var/lib/mailman/mail/mailman request mailman”
mailman-subscribe: “|/var/lib/mailman/mail/mailman subscribe mailman”
mailman-unsubscribe: “|/var/lib/mailman/mail/mailman unsubscribe mailman”
Drücken Sie die Eingabetaste, um den Mailman-Besitzer zu benachrichtigen… <– ENTER
root@server1:~#
Öffnen Sie danach /etc/aliases…
vi /etc/aliases… und fügen Sie die folgenden Zeilen hinzu:
| [...] ## Mailman-Mailingliste mailman: "|/var/lib/mailman/mail/mailman post mailman" mailman-admin: "|/var/lib/mailman/mail/mailman admin mailman" mailman-bounces: "|/var/lib/mailman/mail/mailman bounces mailman" mailman-confirm: "|/var/lib/mailman/mail/mailman confirm mailman" mailman-join: "|/var/lib/mailman/mail/mailman join mailman" mailman-leave: "|/var/lib/mailman/mail/mailman leave mailman" mailman-owner: "|/var/lib/mailman/mail/mailman owner mailman" mailman-request: "|/var/lib/mailman/mail/mailman request mailman" mailman-subscribe: "|/var/lib/mailman/mail/mailman subscribe mailman" mailman-unsubscribe: "|/var/lib/mailman/mail/mailman unsubscribe mailman" |
Führen Sie danach aus
newaliasesund starten Sie Postfix neu:
service postfix restartSchließlich müssen wir die Mailman-Apache-Konfiguration aktivieren:
ln -s /etc/mailman/apache.conf /etc/apache2/conf-available/mailman.confDies definiert den Alias /cgi-bin/mailman/ für alle Apache vhosts, was bedeutet, dass Sie auf die Mailman-Admin-Oberfläche für eine Liste unter http://
Unter http://
Starten Sie Apache danach neu:
service apache2 restartStarten Sie dann den Mailman-Daemon:
service mailman startErhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.