Server Setup · 11 min read · Jan 07, 2026

Der perfekte Server - CentOS 7 x86_64 (nginx, Dovecot, ISPConfig 3) - Seite 3

23 Installieren von RoundcubeMail

Um den Roundcube-Webmail-Client zu installieren, führen Sie aus…

yum -y install roundcubemail

ISPConfig enthält ein Standard-Webmail-Alias für SquirrelMail in seinem Apps-Vhost. Wir werden dieses Alias für das modernere Roundcube verwenden, also erstellen wir einen Symlink mit dem Namen SquirrelMail in /usr/share

ln -s /usr/share/roundcubemail /usr/share/squirrelmail

Nachdem Sie ISPConfig 3 installiert haben, können Sie RoundcubeMail wie folgt aufrufen:

Der ISPConfig-Apps-Vhost auf Port 8081 für nginx kommt mit einer /webmail-Alias-Konfiguration, sodass Sie http://server1.example.com:8081/webmail verwenden können, um auf RoundcubeMail zuzugreifen.

Wenn Sie ein /webmail- oder /roundcubemail-Alias verwenden möchten, das Sie von Ihren Websites aus verwenden können, ist dies etwas komplizierter als für Apache, da nginx keine globalen Aliase hat (d.h. Aliase, die für alle Vhosts definiert werden können). Daher müssen Sie diese Aliase für jeden Vhost definieren, von dem aus Sie auf SquirrelMail zugreifen möchten.

Um dies zu tun, fügen Sie Folgendes in das Feld nginx-Direktiven auf der Registerkarte Optionen der Website in ISPConfig ein:

Um dies zu tun, fügen Sie Folgendes in das nginx-Direktivenfeld auf der Registerkarte Optionen der Website in ISPConfig ein:

        location /roundcubemail {
               root /usr/share/;
               index index.php index.html index.htm;
               location ~ ^/roundcubemail/(.+\.php)$ {
                       try_files $uri =404;
                       root /usr/share/;
                       fastcgi_pass 127.0.0.1:9000;
                       fastcgi_index index.php;
                       fastcgi_param SCRIPT_FILENAME $request_filename;
                       include /etc/nginx/fastcgi_params;
                       fastcgi_param PATH_INFO $fastcgi_script_name;
                       fastcgi_buffer_size 128k;
                       fastcgi_buffers 256 4k;
                       fastcgi_busy_buffers_size 256k;
                       fastcgi_temp_file_write_size 256k;
                       fastcgi_intercept_errors on;
               }
               location ~* ^/roundcubemail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
                       root /usr/share/;
               }
        }
        location /webmail {
               rewrite ^/* /roundcubemail last;
        }

Wenn Sie http s anstelle von http für Ihren Vhost verwenden, sollten Sie die Zeile fastcgi_param HTTPS on; zu Ihrer RoundcubeMail-Konfiguration hinzufügen, wie folgt:

        location /roundcubemail {
               root /usr/share/;
               index index.php index.html index.htm;
               location ~ ^/roundcubemail/(.+\.php)$ {
                       try_files $uri =404;
                       root /usr/share/;
                       fastcgi_pass 127.0.0.1:9000;
                       fastcgi_param HTTPS on; # <-- diese Zeile hinzufügen
                       fastcgi_index index.php;
                       fastcgi_param SCRIPT_FILENAME $request_filename;
                       include /etc/nginx/fastcgi_params;
                       fastcgi_param PATH_INFO $fastcgi_script_name;
                       fastcgi_buffer_size 128k;
                       fastcgi_buffers 256 4k;
                       fastcgi_busy_buffers_size 256k;
                       fastcgi_temp_file_write_size 256k;
                       fastcgi_intercept_errors on;
               }
               location ~* ^/roundcubemail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
                       root /usr/share/;
               }
        }
        location /webmail {
               rewrite ^/* /roundcubemail last;
        }

Wenn Sie sowohl http als auch https für Ihren Vhost verwenden, können Sie die $https-Variable verwenden - gehen Sie erneut zum nginx-Direktivenfeld und fügen Sie anstelle von fastcgi_param HTTPS on; die Zeile fastcgi_param HTTPS $https; hinzu, damit Sie RoundcubeMail sowohl für http- als auch für https-Anfragen verwenden können:

        location /roundcubemail {
               root /usr/share/;
               index index.php index.html index.htm;
               location ~ ^/roundcubemail/(.+\.php)$ {
                       try_files $uri =404;
                       root /usr/share/;
                       fastcgi_pass 127.0.0.1:9000;
                       fastcgi_param HTTPS $https; # <-- diese Zeile hinzufügen
                       fastcgi_index index.php;
                       fastcgi_param SCRIPT_FILENAME $request_filename;
                       include /etc/nginx/fastcgi_params;
                       fastcgi_param PATH_INFO $fastcgi_script_name;
                       fastcgi_buffer_size 128k;
                       fastcgi_buffers 256 4k;
                       fastcgi_busy_buffers_size 256k;
                       fastcgi_temp_file_write_size 256k;
                       fastcgi_intercept_errors on;
               }
               location ~* ^/roundcubemail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
                       root /usr/share/;
               }
        }
        location /webmail {
               rewrite ^/* /squirrelmail last;
        }

Jetzt benötigen wir eine Datenbank für Roundcube Mail, wir werden sie wie folgt initialisieren:

mysql -u root -p

Geben Sie an der MariaDB-Eingabeaufforderung Folgendes ein:

CREATE DATABASE roundcubedb;
CREATE USER roundcubeuser@localhost IDENTIFIED BY ‘roundcubepassword’;
GRANT ALL PRIVILEGES on roundcubedb.* to roundcubeuser@localhost ;
FLUSH PRIVILEGES;
exit

Ich verwende die Details für die Roundcube-Datenbank als Test, bitte ersetzen Sie die Werte aus Sicherheitsgründen nach Ihrem Ermessen. Wir werden die Roundcube-Installation abschließen, nachdem wir ISPConfig installiert haben.

24 Installieren von ISPConfig 3

Bevor Sie mit der Installation von ISPConfig beginnen, stellen Sie sicher, dass Apache gestoppt ist (falls es installiert ist - es ist möglich, dass einige Ihrer installierten Pakete Apache als Abhängigkeit installiert haben, ohne dass Sie es wissen). Wenn Apache2 bereits auf dem System installiert ist, stoppen Sie es jetzt…

systemctl stop httpd.service

… und entfernen Sie die Systemstartlinks von Apache:

systemctl disable httpd.service

Stellen Sie sicher, dass nginx läuft:

systemctl restart nginx.service

(Wenn Sie sowohl Apache als auch nginx installiert haben, fragt der Installer, welchen Sie verwenden möchten: Apache und nginx erkannt. Wählen Sie den Server, der für ISPConfig verwendet werden soll: (apache,nginx) [apache]:

Geben Sie nginx ein. Wenn nur Apache oder nginx installiert ist, wird dies automatisch vom Installer erkannt, und es wird keine Frage gestellt.)

Laden Sie die aktuelle Version von ISPConfig 3 herunter und installieren Sie sie. Der ISPConfig-Installer konfiguriert alle Dienste wie Postfix, Dovecot usw. für Sie. Eine manuelle Einrichtung, wie sie für ISPConfig 2 erforderlich war, ist nicht mehr notwendig.

Sie haben jetzt auch die Möglichkeit, den Installer ein SSL-Vhost für das ISPConfig-Kontrollpanel erstellen zu lassen, sodass ISPConfig über https:// anstelle von http:// aufgerufen werden kann. Um dies zu erreichen, drücken Sie einfach ENTER, wenn Sie diese Frage sehen: Möchten Sie eine sichere (SSL)-Verbindung zur ISPConfig-Weboberfläche (y,n) [y]:.

Um ISPConfig 3 aus der neuesten veröffentlichten Version zu installieren, tun Sie Folgendes:

cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install/

Der nächste Schritt ist, auszuführen:

php -q install.php

Dies startet den ISPConfig 3-Installer:

[root@server1 install]# php -q install.php

——————————————————————————–
_ _ _ _
| / | \ / \ / () / \
| | | | --.| |_/ / | / \/ ___ _ __ | |_ _ __ _ _/ / | | | |–. \ / | | / \| ‘ \| | |/ ` | | |
| |
| |/\
/ / | | _/\ () | | | | | | | (| | __\ \
_/__/| __/\/|| |||||_, | __/ / |
|_
/
——————————————————————————–

>> Initiale Konfiguration

Betriebssystem: Redhat oder kompatibel, unbekannte Version.

Folgendes werden einige Fragen zur primären Konfiguration sein, seien Sie vorsichtig.
Standardwerte sind in [Klammern] und können mit akzeptiert werden.
Tippen Sie “quit” (ohne Anführungszeichen), um den Installer zu stoppen.


Sprache auswählen (en,de) [en]: <– ENTER

Installationsmodus (standard,experte) [standard]: <– ENTER

Vollqualifizierter Hostname (FQDN) des Servers, z.B. server1.domain.tld [server1.example.com]: <– ENTER

MySQL-Server-Hostname [localhost]: <– ENTER

MySQL-Root-Benutzername [root]: <– ENTER

MySQL-Root-Passwort []: <– yourrootsqlpassword

MySQL-Datenbank zu erstellen [dbispconfig]: <– ENTER

MySQL-Zeichensatz [utf8]: <– ENTER

Apache und nginx erkannt. Wählen Sie den Server, der für ISPConfig verwendet werden soll: (apache,nginx) [apache]: <– nginx

Generierung eines 2048-Bit-RSA-Privatschlüssels
…………………………………………………………….+++
………………………………………..+++
Schreiben des neuen privaten Schlüssels in ‘smtpd.key’
—–
Sie werden aufgefordert, Informationen einzugeben, die in Ihre Zertifikatsanforderung aufgenommen werden.
Was Sie eingeben werden, wird als Distinguished Name oder DN bezeichnet.
Es gibt einige Felder, die Sie leer lassen können
Für einige Felder gibt es einen Standardwert,
Wenn Sie ‘.’ eingeben, wird das Feld leer gelassen.
—–
Ländercode (2 Buchstaben) [XX]: <– ENTER
Bundesland oder Provinzname (vollständiger Name) []: <– ENTER
Ortsname (z.B. Stadt) [Standardstadt]: <– ENTER
Organisationsname (z.B. Unternehmen) [Standardfirma GmbH]: <– ENTER
Name der organisatorischen Einheit (z.B. Abteilung) []: <– ENTER
Allgemeiner Name (z.B. Ihr Name oder der Hostname Ihres Servers) []: <– ENTER
E-Mail-Adresse []: <– ENTER
Konfiguration von Jailkit
Konfiguration von Dovecot
Konfiguration von Spamassassin
Konfiguration von Amavisd
Konfiguration von Getmail
Konfiguration von Pureftpd
Konfiguration von BIND
Konfiguration von nginx
Konfiguration von Vlogger
Konfiguration von Apps-Vhost
Konfiguration der Bastille-Firewall
Konfiguration von Fail2ban
Installation von ISPConfig
ISPConfig-Port [8080]: <– ENTER

Möchten Sie eine sichere (SSL)-Verbindung zur ISPConfig-Weboberfläche (y,n) [y]: <– ENTER

Generierung des RSA-Privatschlüssels, 4096 Bit langer Modulus
…………………………………………………..++
…………………………………………………………………++
e ist 65537 (0x10001)
Sie werden aufgefordert, Informationen einzugeben, die in Ihre Zertifikatsanforderung aufgenommen werden.
Was Sie eingeben werden, wird als Distinguished Name oder DN bezeichnet.
Es gibt einige Felder, die Sie leer lassen können
Für einige Felder gibt es einen Standardwert,
Wenn Sie ‘.’ eingeben, wird das Feld leer gelassen.
—–
Ländercode (2 Buchstaben) [XX]: <– ENTER
Bundesland oder Provinzname (vollständiger Name) []: <– ENTER
Ortsname (z.B. Stadt) [Standardstadt]: <– ENTER
Organisationsname (z.B. Unternehmen) [Standardfirma GmbH]: <– ENTER
Name der organisatorischen Einheit (z.B. Abteilung) []: <– ENTER
Allgemeiner Name (z.B. Ihr Name oder der Hostname Ihres Servers) []: <– ENTER
E-Mail-Adresse []: <– ENTER

Bitte geben Sie die folgenden ‘extra’ Attribute ein,
die mit Ihrer Zertifikatsanforderung gesendet werden
Ein Herausforderungs-Passwort []: <– ENTER
Ein optionaler Firmenname []: <– ENTER
Schreiben des RSA-Schlüssels
Konfiguration des DBServers
Installation des ISPConfig-Crontab
kein Crontab für root
kein Crontab für getmail
Neustart der Dienste …
Stoppen von mysqld: [ OK ]
Starten von mysqld: [ OK ]
Herunterfahren von postfix: [ OK ]
Starten von postfix: [ OK ]
Stoppen von saslauthd: [FAILED]
Starten von saslauthd: [ OK ]
Herunterfahren von amavisd: Daemon [1554] durch SIGTERM beendet
[ OK ]
amavisd gestoppt
Starten von amavisd: [ OK ]

Stoppen von clamd.amavisd: [ OK ]
Starten von clamd.amavisd: [ OK ]
Stoppen von Dovecot Imap: [ OK ]
Starten von Dovecot Imap: [ OK ]
Neuladen von php-fpm: [ OK ]
Neuladen von nginx: [ OK ]
Stoppen von pure-ftpd: [ OK ]
Starten von pure-ftpd: [ OK ]
Installation abgeschlossen.
[root@server1 install]# Um die Mailman-Fehler zu beheben, die während der ISPConfig-Installation auftreten können, öffnen Sie /usr/lib/mailman/Mailman/mm_cfg.py… vi /usr/lib/mailman/Mailman/mm_cfg.py … und setzen Sie DEFAULT_SERVER_LANGUAGE = ‘en’: [...] #------------------------------------------------------------- # Die Standardsprache für diesen Server. DEFAULT_SERVER_LANGUAGE = 'en' [...] Starten Sie Mailman neu: systemctl restart mailman.service Jetzt werde ich die RoundcubeMail-Installation abschließen. Öffnen Sie die folgende URL in Ihrem Browser: http://192.168.0.100:8081/roundcubemail/installer Sie werden vom RoundcubeMail-Webinstaller begrüßt, scrollen Sie nach unten und klicken Sie auf Weiter: Geben Sie dann die Datenbankdetails der roundcubedb-Datenbank ein, die wir in Kapitel 23 hier erstellt haben: Setzen Sie den SMTP-Server auf localhost und wählen Sie Ihre bevorzugte Sprache aus und klicken Sie auf “Konfiguration erstellen”, um zur nächsten Seite zu gelangen. Öffnen Sie die Datei /etc/roundcubemail/config.inc.php auf der Shell: nano /etc/roundcubemail/config.inc.php und fügen Sie die Konfiguration, die im Webinstaller angezeigt wird, in diese Datei ein und speichern Sie die Datei. Gehen Sie dann zurück zum Webinstaller und klicken Sie auf die Schaltfläche Fortfahren. Auf dieser Seite klicken Sie auf “Datenbank initialisieren”: Die Seite sollte nach erfolgreicher Initialisierung der Datenbank so aussehen: Um die RoundcubeMail-Konfiguration vor unbefugten Änderungen zu schützen, werde ich den Installer-Ordner entfernen, indem ich diesen Befehl in der Shell ausführe: rm -rf /usr/share/roundcubemail/installer ### 25 Erster ISPConfig-Login Anschließend können Sie auf ISPConfig 3 unter http(s)://server1.example.com:8080/ oder http(s)://192.168.0.100:8080/ zugreifen (http oder https hängt davon ab, was Sie während der Installation gewählt haben). Melden Sie sich mit dem Benutzernamen admin und dem Passwort admin an (Sie sollten das Standardpasswort nach Ihrem ersten Login ändern): Als nächstes müssen wir die BIND-Konfigurationspfade in ISPConfig anpassen. Klicken Sie im oberen Menü auf “System” und dann im rechten Menü auf “Serverkonfiguration”. In der dann erscheinenden Liste klicken Sie auf der linken Seite auf den Servernamen. Gehen Sie zum Tab “DNS” des Formulars: und geben Sie die DNS-Pfade wie folgt ein: BIND-Zonenverzeichnispfad: /var/named
BIND named.conf-Pfad: /etc/named.conf
BIND named.conf.local-Pfad: /etc/named.conf.local Das System ist jetzt bereit zur Verwendung. Wenn Sie IPv6-Adressen mit Ihren nginx-Vhosts verwenden möchten, führen Sie bitte Folgendes aus, bevor Sie IPv6-Vhosts in ISPConfig erstellen: Öffnen Sie /etc/sysctl.conf… vi /etc/sysctl.conf … und fügen Sie die Zeile net.ipv6.bindv6only = 1 hinzu: [...] net.ipv6.bindv6only = 1 Führen Sie… sysctl -p … danach aus, damit die Änderung wirksam wird. #### 25.1 ISPConfig 3 Handbuch Um zu lernen, wie man ISPConfig 3 verwendet, empfehle ich dringend, das ISPConfig 3-Handbuch herunterzuladen. Auf mehr als 300 Seiten behandelt es das Konzept hinter ISPConfig (Admin, Reseller, Kunden), erklärt, wie man ISPConfig 3 installiert und aktualisiert, enthält ein Referenzhandbuch für alle Formulare und Formularfelder in ISPConfig zusammen mit Beispielen für gültige Eingaben und bietet Tutorials für die häufigsten Aufgaben in ISPConfig 3. Es beschreibt auch, wie Sie Ihren Server sicherer machen können und enthält am Ende einen Abschnitt zur Fehlersuche. ### 25 Links - CentOS: http://www.centos.org/ - ISPConfig: http://www.ispconfig.org/

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.