ISPConfig Perfect Multiserver Einrichtung unter Ubuntu 20.04 und Debian 10

8 Installieren des Webmail-Servers

Dies ist ein optionaler Schritt. Wenn Sie keinen separaten Webmail-Server wünschen, fahren Sie mit dem nächsten Schritt fort.

Melden Sie sich als root an oder führen Sie

su -

aus, um root-Benutzer auf Ihrem Server zu werden, bevor Sie fortfahren. WICHTIG: Sie müssen ’su -‚ und nicht nur ’su‘ verwenden, sonst wird Ihre PATH-Variable von Debian falsch gesetzt.

8.1 Konfigurieren Sie den Hostnamen

Der Hostname Ihres Servers sollte eine Subdomain wie „panel.example.com“ sein. Verwenden Sie keinen Domain-Namen ohne Subdomain-Teil wie „example.com“ als Hostname, da dies später zu Problemen bei der Mail-Einrichtung führen wird. Zunächst sollten Sie den Hostnamen in /etc/hosts überprüfen und gegebenenfalls ändern. Die Zeile sollte lauten: „IP-Adresse – Leerzeichen – vollständiger Hostname inkl. Domain – Leerzeichen – Subdomainteil“. Für unseren Hostnamen webmail.example.com soll die Datei wie folgt aussehen:

nano /etc/hosts
127.0.0.1 localhost.localdomain   localhost
# This line should be changed on every node to the correct servername:
127.0.1.1 webmail.example.com webmail
# These lines are the same on every node:
10.0.64.12 panel.example.com panel
10.0.64.13 web01.example.com web01
10.0.64.14 mx1.example.com mx1
10.0.64.15 mx2.example.com mx2
10.0.64.16 ns1.example.com ns1
10.0.64.17 ns2.example.com ns2
10.0.64.18 webmail.example.com webmail

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

Wie Sie sehen können, haben wir auch die Hostnamen unserer anderen Server hinzugefügt, damit diese später über das interne Netzwerk kommunizieren können.

Bearbeiten Sie anschließend die Datei /etc/hostname:

nano /etc/hostname

Sie soll in unserem Fall nur den Teil mit der Subdomain enthalten:

webmail

Starten Sie schließlich den Server neu, um die Änderung zu übernehmen:

systemctl reboot

Melden Sie sich erneut an und überprüfen Sie mit diesen Befehlen, ob der Hostname nun korrekt ist:

hostname
hostname -f

Die Ausgabe sollte wie folgt aussehen:

[email protected]:~$ hostname
webmail
[email protected]:~$ hostname -f
webmail.example.com

8.2 ISPConfig installieren

Jetzt können wir den Auto-Installer für alle Pakete und ISPConfig ausführen:

wget -O - https://get.ispconfig.org | sh -s -- --no-mail --no-dns --roundcube --use-php=system --interactive

Nach einiger Zeit werden Sie sehen:

WARNING! This script will reconfigure your complete server!
It should be run on a freshly installed server and all current configuration that you have done will most likely be lost!
Type 'yes' if you really want to continue:

Antworten Sie mit „Ja“ und drücken Sie Enter. Der Installer wird nun gestartet.

Wenn die Installation und Konfiguration der Pakete abgeschlossen ist, wird das Root-Passwort für MySQL auf webmail angezeigt. Notieren Sie sich dieses (zusammen mit dem Servernamen, um spätere Verwechslungen zu vermeiden).

Jetzt müssen wir einige Fragen beantworten, da wir den interaktiven Modus verwenden. Dies ist notwendig, da dieser Server zu Ihrem Multiserver-Setup hinzugefügt wird.

[INFO] Installing ISPConfig3.
[INFO] Your MySQL root password is: kl3994aMsfkkeE

——————————————————————————–
_____ ___________   _____              __ _         ____
|_   _/  ___| ___ \ /  __ \            / _(_)       /__  \
| | \ `–.| |_/ / | /  \/ ___  _ __ | |_ _  __ _    _/ /
| |  `–. \  __/  | |    / _ \| ‚_ \|  _| |/ _` |  |_ |
_| |_/\__/ / |     | \__/\ (_) | | | | | | | (_| | ___\ \
\___/\____/\_|      \____/\___/|_| |_|_| |_|\__, | \____/
__/ |
|___/
——————————————————————————–

>> Initial configuration

Operating System: Debian 10.0 (Buster) or compatible

Following will be a few questions for primary configuration so be careful.
Default values are in [brackets] and can be accepted with <ENTER>.
Tap in „quit“ (without the quotes) to stop the installer.

Select language (en,de) [en]: <– Hit enter

Installation mode (standard,expert) [standard]: <– expert

Full qualified hostname (FQDN) of the server, eg server1.domain.tld  [webmail.example.com]: <– Hit Enter

MySQL server hostname [localhost]: <– Hit Enter

MySQL server port [3306]: <– Hit Enter

MySQL root username [root]: <– Hit Enter

MySQL root password []: <– Enter the MySQL password the script just gave you

MySQL database to create [dbispconfig]: <– Hit Enter

MySQL charset [utf8]: <– Hit Enter

The next two questions are about the internal ISPConfig database user and password.
It is recommended to accept the defaults which are ‚ispconfig‘ as username and a random password.
If you use a different password, use only numbers and chars for the password.

ISPConfig mysql database username [ispconfig]: <– Hit Enter

ISPConfig mysql database password [aakl203920459853sak20284204]: <– Hit Enter

Shall this server join an existing ISPConfig multiserver setup (y,n) [n]: <– y

MySQL master server hostname []: <– panel.example.com

MySQL master server port []: <– Hit Enter

MySQL master server root username [root]: <– Hit Enter

MySQL master server root password []: <– the password you gave the external root user on the master server.

MySQL master server database name [dbispconfig]: <– Hit Enter

Adding ISPConfig server record to database.

Configure Mail (y,n) [y]: <– n

Configuring Jailkit
Configuring Pureftpd
Configure DNS Server (y,n) [y]: <– n

The Web Server option has to be enabled when you want run a web server or when this node shall host the ISPConfig interface.
Configure Web Server (y,n) [y]: <– Hit enter

Configuring Apache
Configuring vlogger
[WARN] autodetect for OpenVZ failed
Force configure OpenVZ (y,n) [n]: <– Hit enter

Skipping OpenVZ

Configure Firewall Server (y,n) [y]: <– Hit enter

Configuring Ubuntu Firewall
[WARN] autodetect for Metronome XMPP Server failed
Force configure Metronome XMPP Server (y,n) [n]: <– Hit enter

Skipping Metronome XMPP Server

Configuring Fail2ban
Install ISPConfig Web Interface (y,n) [n]: <– Hit enter

Do you want to create SSL certs for your server? (y,n) [y]: <– n

Configuring Apps vhost
Configuring DBServer
Installing ISPConfig crontab
Detect IP addresses
Restarting services …
Installation completed.
[INFO] Adding php versions to ISPConfig.
[INFO] Checking all services are running.
[INFO] mysql: OK
[INFO] clamav-daemon: OK
[INFO] postfix: OK
[INFO] bind9: OK
[INFO] pureftpd: OK
[INFO] apache2: OK
[INFO] Installation ready.
[INFO] Your MySQL root password is: kl3994aMsfkkeE
[INFO] Warning: Please delete the log files in /tmp/ispconfig-ai/var/log/setup-* once you don’t need them anymore because they contain your passwords!

8.3 Einrichten der Webmail-Seite

Wir werden nun die Webmail-Website einrichten. Zuerst aktivieren wir die Standard-Apache-Konfiguration, da sie sonst die Webmail-Site stört:

a2dissite 000-default 
systemctl reload apache2

Loggen Sie sich nun in ISPConfig ein und gehen Sie auf Sites -> Add new website.

Geben Sie „webmail.example.com“ als Domain ein. Deaktivieren Sie Auto-Subdomain und aktivieren Sie Let’s Encrypt. Aktivieren Sie außerdem PHP.

Eine sichere Verbindung ist wichtig, also gehen Sie zum Reiter Redirect und aktivieren Sie „Rewrite HTTP to HTTPS“.

Gehen Sie nun auf die Registerkarte „Optionen“ und fügen Sie den folgenden Apache-Direktive-Snippet hinzu:

DocumentRoot "/var/lib/roundcube/public_html"
Alias "/stats" "{DOCROOT}/stats"

Klicken Sie auf „Speichern“, um diese Einstellungen zu speichern.

8.4 Konfigurieren von Roundcube

Wir werden die Konfiguration so anpassen, dass MX2 als IMAP-Server und MX1 als SMTP-Server verwendet wird. Sie können dies an Ihre eigenen Bedürfnisse/Ideen anpassen.

nano /etc/roundcube/config.inc.php

Die folgenden Einstellungen müssen Sie wie folgt anpassen:

$config['default_host'] = 'ssl://mx2.example.com';
$config['smtp_server'] = 'tls://mx1.example.com';
$config['smtp_port'] = 587;

8.5 Einrichten der Firewall

Als letztes müssen wir unsere Firewall einrichten.

Melden Sie sich in der ISPConfig-Benutzeroberfläche an und gehen Sie zu System -> Firewall. Klicken Sie dann auf „Add new firewall record“.

Stellen Sie sicher, dass Sie den richtigen Server auswählen. Für unseren Webmail-Server müssen wir die folgenden Ports öffnen:

TCP:

22,80,443

Es müssen keine UDP-Ports über die Benutzeroberfläche geöffnet werden.

Wir werden auch den Port 3306 öffnen, der für MySQL verwendet wird, aber aus Sicherheitsgründen nur von unserem lokalen Netzwerk aus. Führen Sie dazu den folgenden Befehl von der CLI aus, nachdem die Änderung aus dem ISPConfig-Panel propagiert wurde (wenn der rote Punkt weg ist):

ufw allow from 10.0.64.0/24 to any port 3306 proto tcp

Ihr Webmail-Server ist nun einsatzbereit. Wenn Sie Roundcube in die Mailuser-Funktion von ISPConfig integrieren wollen, wo jeder Mailaccount sein eigenes Passwort, seine Spamfilter-Einstellungen, seinen Autoresponder und mehr ändern kann, werfen Sie einen Blick auf diese Anleitung.

Das könnte dich auch interessieren …