Server Setup · 26 min read · Nov 04, 2025
Der perfekte Server - Debian 10 (Nginx, BIND, Dovecot, ISPConfig 3.2)

Dieses Tutorial zeigt, wie man einen Debian 10 Server (mit Nginx, BIND, Dovecot) für die Installation von ISPConfig 3.2 vorbereitet und wie man ISPConfig 3.2 installiert. ISPConfig 3 ist ein Webhosting-Control-Panel, das es Ihnen ermöglicht, die folgenden Dienste über einen Webbrowser zu konfigurieren: Apache oder nginx Webserver, Postfix Mailserver, Courier oder Dovecot IMAP/POP3 Server, MySQL, BIND oder MyDNS Nameserver, PureFTPd, SpamAssassin, ClamAV und viele mehr. Dieses Setup umfasst den Nginx Webserver, BIND als DNS-Server und Dovecot als IMAP / POP3 Server.
1 Vorbemerkung
In diesem Tutorial verwende ich den Hostnamen server1.example.com mit der IP-Adresse 192.168.0.100 und dem Gateway 192.168.0.1. Diese Einstellungen können bei Ihnen abweichen, daher müssen Sie sie gegebenenfalls anpassen. Bevor Sie fortfahren, müssen Sie eine minimale Installation von Debian 10 haben. Dies könnte ein minimales Debian-Image von Ihrem Hosting-Anbieter sein oder Sie verwenden das Minimal Debian Server Tutorial, um das Basissystem einzurichten.
Alle untenstehenden Befehle werden als Root-Benutzer ausgeführt. Melden Sie sich entweder direkt als Root-Benutzer an oder melden Sie sich als normaler Benutzer an und verwenden Sie dann den Befehl
su -um Root-Benutzer auf Ihrem Server zu werden, bevor Sie fortfahren. WICHTIG: Sie müssen ‘su -‘ verwenden und nicht nur ‘su’, da sonst Ihre PATH-Variable von Debian falsch gesetzt wird.
2 SSH-Server installieren
Wenn Sie den OpenSSH-Server während der Systeminstallation nicht installiert haben, können Sie dies jetzt tun:
apt-get -y install ssh openssh-serverVon nun an können Sie einen SSH-Client wie PuTTY verwenden und sich von Ihrem Arbeitsplatz mit Ihrem Debian 10 Server verbinden und die verbleibenden Schritte dieses Tutorials befolgen.
3 Installieren Sie einen Shell-Texteditor (Optional)
Ich werde in diesem Tutorial den nano Texteditor verwenden. Einige Benutzer bevorzugen den klassischen vi-Editor, daher werde ich hier beide Editoren installieren. Das Standardprogramm vi hat auf Debian und Ubuntu ein seltsames Verhalten; um dies zu beheben, installieren wir vim-nox:
apt-get -y install nano vim-nox(Sie müssen dies nicht tun, wenn Sie einen anderen Texteditor wie joe verwenden.)
4 Hostnamen konfigurieren
Der Hostname Ihres Servers sollte ein Subdomain wie “server1.example.com” sein. Verwenden Sie keinen Domainnamen ohne Subdomain-Teil wie “example.com” als Hostnamen, da dies später Probleme mit Ihrer Mail-Konfiguration verursachen wird. Zuerst sollten Sie den Hostnamen in /etc/hosts überprüfen und ihn bei Bedarf ändern. Die Zeile sollte sein: “IP-Adresse - Leerzeichen - vollständiger Hostname inkl. Domain - Leerzeichen - Subdomain-Teil”. Bearbeiten Sie /etc/hosts. Lassen Sie es so aussehen:
nano /etc/hosts127.0.0.1 localhost.localdomain localhost
192.168.0.100 server1.example.com server1
# Die folgenden Zeilen sind wünschenswert für IPv6-fähige Hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allroutersBearbeiten Sie dann die Datei /etc/hostname:
nano /etc/hostnameSie sollte nur den Subdomain-Teil enthalten, in unserem Fall:
server1Starten Sie schließlich den Server neu, um die Änderung anzuwenden:
rebootMelden Sie sich erneut an und überprüfen Sie, ob der Hostname jetzt mit diesen Befehlen korrekt ist:
hostname
hostname -fDie Ausgabe sollte so aussehen:
root@server1:/tmp# hostname
server1
root@server1:/tmp# hostname -f
server1.example.com5 Aktualisieren Sie Ihre Debian-Installation
Stellen Sie zuerst sicher, dass Ihre /etc/apt/sources.list das buster/updates-Repository enthält (dies stellt sicher, dass Sie immer die neuesten Updates für den ClamAV-Virenscanner erhalten - dieses Projekt veröffentlicht sehr häufig Releases, und manchmal hören alte Versionen auf zu funktionieren), und dass die contrib- und non-free-Repositories aktiviert sind.
nano /etc/apt/sources.listdeb http://deb.debian.org/debian/ buster main contrib non-free
deb-src http://deb.debian.org/debian/ buster main contrib non-free
deb http://security.debian.org/debian-security buster/updates main contrib non-free
deb-src http://security.debian.org/debian-security buster/updates main contrib non-freeFühren Sie
apt-get updateaus, um die apt-Paketdatenbank zu aktualisieren und
apt-get upgradeum die neuesten Updates zu installieren (wenn es welche gibt).
6 Ändern Sie die Standard-Shell
/bin/sh ist ein Symlink zu /bin/dash, wir benötigen jedoch /bin/bash, nicht /bin/dash. Daher tun wir dies:
dpkg-reconfigure dashVerwenden Sie dash als Standard-System-Shell (/bin/sh)? <– Nein
Wenn Sie dies nicht tun, schlägt die Installation von ISPConfig fehl.
7 Synchronisieren Sie die Systemuhr
Es ist eine gute Idee, die Systemuhr mit einem NTP ( n etwork t ime p rotokoll) Server über das Internet zu synchronisieren. Führen Sie einfach aus:
apt-get install ntpund Ihre Systemzeit wird immer synchronisiert sein.
8 Installieren Sie Postfix, Dovecot, MySQL, rkhunter und binutils
Wir können Postfix, Dovecot, MySQL, rkhunter und Binutils mit einem einzigen Befehl installieren:
apt-get install postfix postfix-mysql postfix-doc mariadb-client mariadb-server openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d dovecot-mysql dovecot-sieve dovecot-lmtpd sudo curlSie werden nach folgenden Fragen gefragt:
Allgemeiner Typ der Mailkonfiguration: <– Internet-Site
System-Mail-Name: <– server1.example.com
Um die MariaDB / MySQL-Installation zu sichern und die Testdatenbank zu deaktivieren, führen Sie diesen Befehl aus:
mysql_secure_installationWir müssen das MariaDB-Root-Passwort nicht ändern, da wir gerade eines während der Installation festgelegt haben. Beantworten Sie die Fragen wie folgt:
Ändern Sie das Root-Passwort? [Y/n] <-- y
Neues Passwort: <-- Geben Sie ein neues Datenbank-Root-Passwort ein
Neues Passwort erneut eingeben: <-- Wiederholen Sie das Datenbank-Root-Passwort
Anonyme Benutzer entfernen? [Y/n] <-- y
Root-Login aus der Ferne verbieten? [Y/n] <-- y
Testdatenbank und Zugriff darauf entfernen? [Y/n] <-- y
Privilegientabellen jetzt neu laden? [Y/n] <-- yÖffnen Sie als Nächstes die TLS/SSL- und Übermittlungsports in Postfix:
nano /etc/postfix/master.cfKommentieren Sie die Abschnitte submission und smtps wie folgt aus und fügen Sie Zeilen hinzu, wo nötig, sodass dieser Abschnitt der master.cf-Datei genau wie der unten aussieht. WICHTIG: Entfernen Sie das # vor den Zeilen, die mit smtps und submission beginnen, und nicht nur von den -o-Zeilen nach diesen Zeilen!
[...]
submission inet n - y - - 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=
# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING
smtps inet n - y - - 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=
# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING
[...] Starten Sie Postfix danach neu:
service postfix restartWir möchten, dass MariaDB auf allen Schnittstellen hört, nicht nur auf localhost, daher bearbeiten wir /etc/mysql/mariadb.conf.d/50-server.cnf und kommentieren die Zeile bind-address = 127.0.0.1 aus:
nano /etc/mysql/mariadb.conf.d/50-server.cnf[...]
# Statt 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
[...] Speichern Sie die Datei. Setzen Sie dann die Passwort-Authentifizierungsmethode in MariaDB auf native, damit wir später PHPMyAdmin verwenden können, um uns als Root-Benutzer zu verbinden:
echo "update mysql.user set plugin = 'mysql_native_password' where user='root';" | mysql -u rootBearbeiten Sie die Datei /etc/mysql/debian.cnf und setzen Sie dort das MYSQL / MariaDB-Root-Passwort zweimal in den Zeilen, die mit dem Wort password beginnen.
nano /etc/mysql/debian.cnfDas MySQL-Root-Passwort, das hinzugefügt werden muss, wird rot angezeigt. In diesem Beispiel lautet das Passwort “howtoforge”.
# Automatisch für Debian-Skripte generiert. NICHT ANFASSEN!
[client]
host = localhost
user = root
password = howtoforge
socket = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
host = localhost
user = root
password = howtoforge
socket = /var/run/mysqld/mysqld.sock
basedir = /usrUm den Fehler ‘ Error in accept: Zu viele offene Dateien ‘ zu verhindern, setzen wir jetzt höhere offene Dateigrenzen für MariaDB.
Öffnen Sie die Datei /etc/security/limits.conf mit einem Editor:
nano /etc/security/limits.confund fügen Sie diese Zeilen am Ende der Datei hinzu.
mysql soft nofile 65535
mysql hard nofile 65535Erstellen Sie als Nächstes ein neues Verzeichnis /etc/systemd/system/mysql.service.d/ mit dem mkdir-Befehl.
mkdir -p /etc/systemd/system/mysql.service.d/und fügen Sie eine neue Datei darin hinzu:
nano /etc/systemd/system/mysql.service.d/limits.confFügen Sie die folgenden Zeilen in diese Datei ein:
[Service]
LimitNOFILE=infinitySpeichern Sie die Datei und schließen Sie den Nano-Editor.
Dann laden wir systemd neu und starten MariaDB neu:
systemctl daemon-reload
systemctl restart mariadbIgnorieren Sie die Warnung: “ Warnung: Die Einheitendatei, die Quellkonfigurationsdatei oder die Drop-ins von mariadb.service haben sich auf der Festplatte geändert. Führen Sie ‘systemctl daemon-reload’ aus, um Einheiten neu zu laden. “.
Installieren Sie das dbconfig-common-System:
apt-get install dbconfig-common dbconfig-mysqlDerzeit gibt es ein Problem mit dem Debian dbconfig-common-System, das die Installation von RoundCube später verhindert, beheben Sie es, indem Sie diesen Befehl ausführen:
sed -i -r 's/_dbc_nodb="yes" dbc_mysql_exec/_dbc_nodb="yes"; dbc_mysql_exec/g' /usr/share/dbconfig-common/internal/mysqlÜberprüfen Sie jetzt, ob das Networking aktiviert ist. Führen Sie aus:
netstat -tap | grep mysqlDie Ausgabe sollte so aussehen:
root@server1:~# netstat -tap | grep mysql
tcp6 0 0 [::]:mysql [::]:* LISTEN 4027/mysqld
root@server1:~#9 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 unzip bzip2 arj nomarch lzop cabextract p7zip p7zip-full unrar lrzip 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 libdbd-mysql-perl postgreyDie ISPConfig 3-Installation verwendet amavisd, das die SpamAssassin-Filterbibliothek intern lädt, sodass wir SpamAssassin stoppen können, um etwas RAM freizugeben:
systemctl stop spamassassin
systemctl disable spamassassin10 Installieren Sie Nginx, PHP (PHP-FPM) und Fcgiwrap
Nginx ist als Paket für Debian verfügbar, das wir wie folgt installieren können:
apt-get install nginxWenn Apache2 bereits auf dem System installiert ist, stoppen Sie es jetzt…
systemctl stop apache2Die Meldung “ Fehler beim Stoppen des apache2.service: Einheit apache2.service nicht geladen. “ ist in Ordnung und zeigt keinen Fehler an.
… und entfernen Sie die Systemstartlinks von Apache:
systemctl disable apache2Starten Sie danach nginx:
systemctl start nginx(Wenn sowohl Apache2 als auch nginx installiert sind, fragt der ISPConfig 3-Installer, welchen Sie verwenden möchten - antworten Sie in diesem Fall mit nginx. Wenn nur einer dieser beiden installiert ist, übernimmt ISPConfig die notwendige Konfiguration automatisch.)
Wir können PHP 7.3 in nginx über PHP-FPM zum Laufen bringen (PHP-FPM (FastCGI Process Manager) ist eine alternative PHP-FastCGI-Implementierung mit einigen zusätzlichen Funktionen, die für Websites jeder Größe nützlich sind, insbesondere für beschäftigte Websites), die wir wie folgt installieren:
apt-get install php7.3-fpmPHP-FPM ist ein Daemon-Prozess, der einen FastCGI-Server auf dem Socket /var/run/php/php7.3-fpm.sock ausführt.
Um MySQL-Unterstützung in PHP zu erhalten, können wir das php7.3-mysql-Paket installieren. Es ist eine gute Idee, auch einige andere PHP-Module zu installieren, da Sie diese möglicherweise für Ihre Anwendungen benötigen. Sie können nach verfügbaren PHP-Modulen wie folgt suchen:
apt-cache search php7Wählen Sie die benötigten aus und installieren Sie sie wie folgt:
apt-get install php7.3 php7.3-common php7.3-gd php7.3-mysql php7.3-imap php7.3-cli php7.3-cgi php-pear mcrypt imagemagick libruby php7.3-curl php7.3-intl php7.3-pspell php7.3-recode php7.3-sqlite3 php7.3-tidy php7.3-xmlrpc php7.3-xsl memcached php-memcache php-imagick php-gettext php7.3-zip php7.3-mbstring memcached php7.3-soap php7.3-fpm php7.3-opcache php-apcuÖffnen Sie als Nächstes /etc/php/7.3/fpm/php.ini…
nano /etc/php/7.3/fpm/php.ini… und setzen Sie cgi.fix_pathinfo=0 und Ihre Zeitzone:
[...]
cgi.fix_pathinfo=0
[...]
date.timezone="Europe/Berlin"
[...] (Sie finden alle verfügbaren Zeitzonen in den Verzeichnissen /usr/share/zoneinfo und seinen Unterverzeichnissen.)
Laden Sie jetzt PHP-FPM neu:
systemctl restart php7.3-fpmUm CGI-Unterstützung in nginx zu erhalten, installieren wir Fcgiwrap.
Fcgiwrap ist ein CGI-Wrapper, der auch für komplexe CGI-Skripte funktionieren sollte und in Shared-Hosting-Umgebungen verwendet werden kann, da er es jedem vhost ermöglicht, sein eigenes cgi-bin-Verzeichnis zu verwenden.
Installieren Sie das fcgiwrap-Paket:
apt-get install fcgiwrapNach der Installation sollte der fcgiwrap-Daemon bereits gestartet sein; sein Socket ist /var/run/fcgiwrap.socket. Wenn er nicht läuft, können Sie das fservice fcgiwrap-Skript verwenden, um ihn zu starten.
Das war’s! Jetzt, wenn Sie einen nginx vhost erstellen, kümmert sich ISPConfig um die korrekte vhost-Konfiguration.
10.1 Installieren Sie phpMyAdmin
Seit Debian 10 ist PHPMyAdmin nicht mehr als .deb-Paket verfügbar. Daher werden wir es aus dem Quellcode installieren.
Erstellen Sie Ordner für PHPMyadmin:
mkdir /usr/share/phpmyadmin
mkdir /etc/phpmyadmin
mkdir -p /var/lib/phpmyadmin/tmp
chown -R www-data:www-data /var/lib/phpmyadmin
touch /etc/phpmyadmin/htpasswd.setupGehen Sie in das /tmp-Verzeichnis und laden Sie die PHPMyAdmin-Quellen herunter:
cd /tmp
wget https://files.phpmyadmin.net/phpMyAdmin/4.9.0.1/phpMyAdmin-4.9.0.1-all-languages.tar.gzEntpacken Sie die heruntergeladene Archivdatei und verschieben Sie die Dateien in den /usr/share/phpmyadmin-Ordner und bereinigen Sie das /tmp-Verzeichnis.
tar xfz phpMyAdmin-4.9.0.1-all-languages.tar.gz
mv phpMyAdmin-4.9.0.1-all-languages/* /usr/share/phpmyadmin/
rm phpMyAdmin-4.9.0.1-all-languages.tar.gz
rm -rf phpMyAdmin-4.9.0.1-all-languagesErstellen Sie eine neue Konfigurationsdatei für PHPMyaAdmin basierend auf der bereitgestellten Beispieldatei:
cp /usr/share/phpmyadmin/config.sample.inc.php /usr/share/phpmyadmin/config.inc.phpÖffnen Sie die Konfigurationsdatei mit dem Nano-Editor:
nano /usr/share/phpmyadmin/config.inc.phpSetzen Sie ein sicheres Passwort (Blowfish-Geheimnis), das 32 Zeichen lang sein muss:
$cfg['blowfish_secret'] = 'bD3e6wva9fnd93jVsb7SDgeiBCd452Dh'; /* DIES MUSS FÜR COOKIE-AUTHENTIFIZIERUNG AUSGEFÜLLT WERDEN! */Verwenden Sie nicht mein Beispiel-Blowfish-Geheimnis, setzen Sie Ihr eigenes!
Fügen Sie dann eine Zeile hinzu, um das Verzeichnis festzulegen, das PHPMyAdmin verwenden soll, um temporäre Dateien zu speichern:
$cfg['TempDir'] = '/var/lib/phpmyadmin/tmp';Im nächsten Schritt werden wir den PHPMyAdmin-Konfigurationsspeicher (Datenbank) konfigurieren.
Melden Sie sich bei MariaDB als Root-Benutzer an:
mysql -u root -pErstellen Sie in der MariaDB-Shell eine neue Datenbank für PHPMyAdmin:
MariaDB [(none)]> CREATE DATABASE phpmyadmin;Erstellen Sie dann einen neuen Benutzer:
MariaDB [(none)]> CREATE USER 'pma'@'localhost' IDENTIFIED BY 'mypassword';Ersetzen Sie das Wort mypassword durch ein sicheres Passwort Ihrer Wahl in den obigen und folgenden Befehlen, verwenden Sie dasselbe Passwort beide Male. Gewähren Sie dann dem Benutzer Zugriff auf diese Datenbank und laden Sie die Datenbankberechtigungen neu.
MariaDB [(none)]> GRANT ALL PRIVILEGES ON phpmyadmin.* TO 'pma'@'localhost' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXITLaden Sie schließlich die SQL-Tabellen in die Datenbank:
mysql -u root -p phpmyadmin < /usr/share/phpmyadmin/sql/create_tables.sqlGeben Sie das MariaDB-Root-Passwort auf Anfrage ein.
Alles, was wir jetzt noch tun müssen, ist, die phpmyadmin-Benutzerdaten im Konfigurationsdatei festzulegen. Öffnen Sie die Datei erneut im Nano-Editor:
nano /usr/share/phpmyadmin/config.inc.phpScrollen Sie nach unten, bis Sie die folgenden Zeilen sehen, und bearbeiten Sie sie:
/* Benutzer, der mit dem Speicher arbeitet */
$cfg['Servers'][$i]['controlhost'] = 'localhost';
$cfg['Servers'][$i]['controlport'] = '';
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = 'mypassword';
/* Speicher-Datenbank und Tabellen */
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
$cfg['Servers'][$i]['relation'] = 'pma__relation';
$cfg['Servers'][$i]['table_info'] = 'pma__table_info';
$cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
$cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
$cfg['Servers'][$i]['column_info'] = 'pma__column_info';
$cfg['Servers'][$i]['history'] = 'pma__history';
$cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
$cfg['Servers'][$i]['tracking'] = 'pma__tracking';
$cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
$cfg['Servers'][$i]['recent'] = 'pma__recent';
$cfg['Servers'][$i]['favorite'] = 'pma__favorite';
$cfg['Servers'][$i]['users'] = 'pma__users';
$cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
$cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
$cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';
$cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
$cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
$cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';Ich habe die Zeilen rot markiert, die ich bearbeitet habe. Ersetzen Sie mypassword durch das Passwort, das Sie für den phpmyadmin-Benutzer gewählt haben. Beachten Sie, dass die // vor den Zeilen ebenfalls entfernt wurden!
Nachdem Sie ISPConfig 3.2 installiert haben, können Sie auf phpMyAdmin wie folgt zugreifen:
Der ISPConfig-Apps-vhost auf Port 8081 für nginx kommt mit einer phpMyAdmin-Konfiguration, sodass Sie http://server1.example.com:8081/phpmyadmin oder http://server1.example.com:8081/phpMyAdmin verwenden können, um auf phpMyAdmin zuzugreifen.
Wenn Sie ein /phpmyadmin oder /phpMyAdmin-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 phpMyAdmin zugreifen möchten.
Um dies zu tun, fügen Sie das Folgende in das nginx-Direktivenfeld auf der Registerkarte Optionen der Website in ISPConfig später ein:
location /phpmyadmin {
root /usr/share/;
index index.php index.html index.htm;
location ~ ^/phpmyadmin/(.+\.php)$ {
try_files $uri =404;
root /usr/share/;
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
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 ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
}
}
location /phpMyAdmin {
rewrite ^/* /phpmyadmin last;
}Wenn Sie http s anstelle von http für Ihren vhost verwenden, sollten Sie die Zeile fastcgi_param HTTPS on; zu Ihrer phpMyAdmin-Konfiguration wie folgt hinzufügen:
location /phpmyadmin {
root /usr/share/;
index index.php index.html index.htm;
location ~ ^/phpmyadmin/(.+\.php)$ {
try_files $uri =404;
root /usr/share/;
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
fastcgi_param HTTPS on; # <-- fügen Sie diese Zeile hinzu
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 ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
}
}
location /phpMyAdmin {
rewrite ^/* /phpmyadmin 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 phpMyAdmin sowohl für http- als auch für https-Anfragen verwenden können:
location /phpmyadmin {
root /usr/share/;
index index.php index.html index.htm;
location ~ ^/phpmyadmin/(.+\.php)$ {
try_files $uri =404;
root /usr/share/;
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
fastcgi_param HTTPS $https; # <-- fügen Sie diese Zeile hinzu
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 ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
}
}
location /phpMyAdmin {
rewrite ^/* /phpmyadmin last;
}11 Installieren Sie Let’s Encrypt
ISPConfig verwendet jetzt acme.sh als Let’s Encrypt-Client. Installieren Sie acme.sh mit folgendem Befehl:
curl https://get.acme.sh | sh -s12 Installieren Sie Mailman
ISPConfig ermöglicht es Ihnen, Mailman-Mailinglisten zu verwalten (zu erstellen/zu ändern/zu löschen). 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: <– E-Mail-Adresse des Administrators, z.B. [email protected]
Anfängliches Mailman-Passwort: <– Administrationspasswort für die Mailman-Liste
Um die Erstellung Ihrer Mailingliste abzuschließen, müssen Sie Ihre /etc/aliases (oder äquivalente) Datei bearbeiten, indem Sie die folgenden Zeilen hinzufügen und möglicherweise das Programm newaliases 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… <– EINGABETASTE
root@server1:~#
Öffnen Sie anschließend /etc/aliases…
nano /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 anschließend aus:
newaliasesund starten Sie Postfix neu:
systemctl restart postfixStarten Sie dann den Mailman-Daemon:
systemctl restart mailmanNachdem Sie ISPConfig 3 installiert haben, können Sie auf Mailman wie folgt zugreifen:
Der ISPConfig-Apps-vhost auf Port 8081 für nginx kommt mit einer Mailman-Konfiguration, sodass Sie http://server1.example.com:8081/cgi-bin/mailman/admin/
Wenn Sie Mailman von Ihren Websites aus verwenden möchten, 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 Mailman zugreifen möchten.
Um dies zu tun, fügen Sie das Folgende in das nginx-Direktivenfeld auf der Registerkarte Optionen der Website in ISPConfig:
location /cgi-bin/mailman {
root /usr/lib/;
fastcgi_split_path_info (^/cgi-bin/mailman/[^/]*)(.*)$;
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
fastcgi_intercept_errors on;
fastcgi_pass unix:/var/run/fcgiwrap.socket;
}
location /images/mailman {
alias /usr/share/images/mailman;
}
location /pipermail {
alias /var/lib/mailman/archives/public;
autoindex on;
}Dies definiert den Alias /cgi-bin/mailman/ für Ihren vhost, was bedeutet, dass Sie auf die Mailman-Administrationsoberfläche für eine Liste unter http://
Unter http://
13 Installieren Sie PureFTPd und Quota
PureFTPd und Quota können mit folgendem Befehl installiert werden:
apt-get install pure-ftpd-common pure-ftpd-mysql quota quotatoolBearbeiten Sie die Datei /etc/default/pure-ftpd-common…
nano /etc/default/pure-ftpd-common… und stellen Sie sicher, dass der Startmodus auf standalone gesetzt ist und VIRTUALCHROOT=true gesetzt ist:
[...]
STANDALONE_OR_INETD=standalone
[...]
VIRTUALCHROOT=true
[...] Jetzt konfigurieren wir PureFTPd, um FTP- und TLS-Sitzungen zuzulassen. FTP ist ein sehr unsicheres Protokoll, da alle Passwörter und alle Daten im Klartext übertragen werden. Durch die Verwendung von TLS kann die gesamte Kommunikation verschlüsselt werden, wodurch FTP viel sicherer wird.
Wenn Sie FTP- und TLS-Sitzungen zulassen möchten, führen Sie aus:
echo 1 > /etc/pure-ftpd/conf/TLSUm TLS zu verwenden, müssen wir ein SSL-Zertifikat erstellen. Ich erstelle es in /etc/ssl/private/, daher erstelle ich zuerst dieses Verzeichnis:
mkdir -p /etc/ssl/private/Anschließend können wir das SSL-Zertifikat wie folgt generieren:
openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pemLändercode (2 Buchstaben) [AU]: <– Geben Sie Ihren Ländercode ein (z.B. “DE”).
Bundesland oder Provinzname (vollständiger Name) [Some-State]: <– Geben Sie den Namen Ihres Bundeslandes oder Ihrer Provinz ein.
Ortsname (z.B. Stadt) []: <– Geben Sie Ihre Stadt ein.
Organisationsname (z.B. Firma) [Internet Widgits Pty Ltd]: <– Geben Sie den Namen Ihrer Organisation ein (z.B. den Namen Ihres Unternehmens).
Abteilung (z.B. Abschnitt) []: <– Geben Sie den Namen Ihrer Abteilung ein (z.B. “IT-Abteilung”).
Allgemeiner Name (z.B. FQDN oder IHR Name) []: <– Geben Sie den vollständig qualifizierten Domainnamen des Systems ein (z.B. “server1.example.com”).
E-Mail-Adresse []: <– Geben Sie Ihre E-Mail-Adresse ein.
Ändern Sie die Berechtigungen des SSL-Zertifikats:
chmod 600 /etc/ssl/private/pure-ftpd.pemStarten Sie dann PureFTPd neu:
systemctl restart pure-ftpd-mysqlBearbeiten Sie /etc/fstab. Meine sieht so aus (ich habe ,usrjquota=quota.user,grpjquota=quota.group,jqfmt=vfsv0 zu der Partition mit dem Einhängepunkt / hinzugefügt):
nano /etc/fstab# /etc/fstab: Statische Dateisysteminformationen.
#
# Verwenden Sie 'blkid', um die universell eindeutige Kennung für ein
# Gerät zu drucken; dies kann mit UUID= als eine robustere Möglichkeit verwendet werden, Geräte
# zu benennen, die auch funktionieren, wenn Festplatten hinzugefügt und entfernt werden. Siehe fstab(5).
#
#
# / war auf /dev/sda1 während der Installation
UUID=45576b38-39e8-4994-b8c1-ea4870e2e614 / ext4 errors=remount-ro,usrjquota=quota.user,grpjquota=quota.group,jqfmt=vfsv0 0 1
# Swap war auf /dev/sda5 während der Installation
UUID=8bea0d1e-ec37-4b20-9976-4b7daaa3eb69 none swap sw 0 0
/dev/sr0 /media/cdrom0 udf,iso9660 user,noauto 0 0 Um Quota zu aktivieren, führen Sie diese Befehle aus:
mount -o remount /quotacheck -avugm
quotaon -avug14 Installieren Sie den BIND DNS-Server
BIND kann wie folgt installiert werden:
apt-get install bind9 dnsutilsWenn Ihr Server eine virtuelle Maschine ist, wird dringend empfohlen, den haveged-Daemon zu installieren, um eine höhere Entropie für die DNSSEC-Signierung zu erhalten. Sie können haveged auch auf nicht-virtuellen Servern installieren, es sollte nicht schaden.
apt-get -y install haveged
systemctl enable haveged
systemctl start havegedEine Erklärung zu diesem Thema finden Sie hier.
15 Installieren Sie Webalizer, AWStats und GoAccess
Webalizer und AWStats können wie folgt installiert werden:
apt-get install webalizer awstats geoip-database libtimedate-perl libclass-dbi-mysql-perlÖffnen Sie anschließend /etc/cron.d/awstats…
nano /etc/cron.d/awstats… und kommentieren Sie alles in dieser Datei aus:
#MAILTO=root
#*/10 * * * * www-data [ -x /usr/share/awstats/tools/update.sh ] && /usr/share/awstats/tools/update.sh
# Generieren Sie statische Berichte:
#10 03 * * * www-data [ -x /usr/share/awstats/tools/buildstatic.sh ] && /usr/share/awstats/tools/buildstatic.shInstallieren Sie die neueste GoAccess-Version direkt aus dem GoAccess-Repository:
echo "deb https://deb.goaccess.io/ $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/goaccess.list
wget -O - https://deb.goaccess.io/gnugpg.key | sudo apt-key --keyring /etc/apt/trusted.gpg.d/goaccess.gpg add -
apt-get update
apt-get install goaccess16 Installieren Sie Jailkit
Jailkit wird nur benötigt, wenn Sie SSH-Benutzer chrooten möchten. Es kann wie folgt installiert werden (wichtig: Jailkit muss vor ISPConfig installiert werden - es kann danach nicht installiert werden!):
apt-get install build-essential autoconf automake libtool flex bison debhelper binutilscd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.20.tar.gz
tar xvfz jailkit-2.20.tar.gz
cd jailkit-2.20
echo 5 > debian/compat
./debian/rules binarySie können jetzt das Jailkit.deb-Paket wie folgt installieren:
cd ..
dpkg -i jailkit_2.20-1_*.deb
rm -rf jailkit-2.20*17 Installieren Sie Fail2ban und die UFW-Firewall
Dies ist optional, wird jedoch empfohlen, da der ISPConfig-Monitor versucht, das Protokoll anzuzeigen:
apt-get install fail2banUm fail2ban zu ermöglichen, PureFTPd und Dovecot zu überwachen, erstellen Sie die Datei /etc/fail2ban/jail.local:
nano /etc/fail2ban/jail.local[pure-ftpd]
enabled = true
port = ftp
filter = pure-ftpd
logpath = /var/log/syslog
maxretry = 3
[dovecot]
enabled = true
filter = dovecot
logpath = /var/log/mail.log
maxretry = 5
[postfix-sasl]
enabled = true
port = smtp
filter = postfix[mode=auth]
logpath = /var/log/mail.log
maxretry = 3Starten Sie fail2ban danach neu:
systemctl restart fail2banUm die UFW-Firewall zu installieren, führen Sie diesen apt-Befehl aus:
apt-get install ufw18 Installieren Sie RoundCube
Installieren Sie RoundCube mit diesem Befehl:
apt-get install roundcube roundcube-core roundcube-mysql roundcube-pluginsDer Installer wird nach folgenden Fragen fragen:
Datenbank für RoundCube mit dbconfig.common konfigurieren? <-- ja
MySQL-Anwendungspasswort für RoundCube: <-- drücken Sie die Eingabetaste
Passwort des administrativen Benutzers der Datenbanken: <-- geben Sie hier das MySQL-Root-Passwort ein.Bearbeiten Sie dann die RoundCube /etc/roundcube/config.inc.php-Datei und passen Sie einige Einstellungen an:
nano /etc/roundcube/config.inc.phpSetzen Sie den default_host auf localhost und den smtp_server.
$config['default_host'] = 'localhost';
$config['smtp_server'] = 'localhost';
$config['smtp_port'] = 25;ISPConfig hat einige Konfigurationen im nginx-Apps-vhost für squirrelmail, die auch für roundcube funktionieren. Wir aktivieren es mit:
ln -s /usr/share/roundcube /usr/share/squirrelmailhttp://192.168.0.100:8081/webmail
http://server1.example.com:8081/webmail (nach der Installation von ISPConfig, siehe das nächste Kapitel)

19 Installieren Sie ISPConfig 3
Bevor Sie mit der Installation von ISPConfig beginnen, stellen Sie sicher, dass Apache gestoppt ist (falls er 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 apache2… und entfernen Sie die Systemstartlinks von Apache:
update-rc.d -f apache2 removeStellen Sie sicher, dass nginx läuft:
systemctl start nginx(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 aus, den Sie für ISPConfig verwenden möchten: (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.)
Um ISPConfig 3.2 aus der neuesten veröffentlichten Version zu installieren, tun Sie dies:
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 besteht darin, auszuführen:
php -q install.phpDies startet den ISPConfig 3-Installer. Der Installer konfiguriert alle Dienste wie Postfix, Nginx, Dovecot usw. für Sie.
# php -q install.php
--------------------------------------------------------------------------------
_____ ___________ _____ __ _ ____
|_ _/ ___| ___ \ / __ \ / _(_) /__ \
| | \ `--.| |_/ / | / \/ ___ _ __ | |_ _ __ _ _/ /
| | `--. \ __/ | | / _ \| '_ \| _| |/ _` | |_ |
_| |_\/__/ / | | \__/\ (_) | | | | | | | (_| | ___\ \
\___/\____/\_| \____/\___/|_| |_|_| |_\__, | \____/
__/ |
|___/
--------------------------------------------------------------------------------
>> Erste KonfigurationBetriebssystem: Debian 10.0 (Buster) oder kompatibelFolgendes sind einige Fragen zur primären Konfiguration, seien Sie vorsichtig.
Standardwerte stehen 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]: <-- Eingabetaste drückenInstallationsmodus (standard,experte) [standard]: <-- Eingabetaste drückenVollqualifizierter Hostname (FQDN) des Servers, z.B. server1.domain.tld [server1.canomi.com]: <-- Eingabetaste drückenMySQL-Server-Hostname [localhost]: <-- Eingabetaste drückenMySQL-Server-Port [3306]: <-- Eingabetaste drückenMySQL-Root-Benutzername [root]: <-- Eingabetaste drückenMySQL-Root-Passwort []: <-- Geben Sie Ihr MySQL-Root-Passwort einMySQL-Datenbank zu erstellen [dbispconfig]: <-- Eingabetaste drückenMySQL-Zeichensatz [utf8]: <-- Eingabetaste drückenApache und nginx erkannt. Wählen Sie den Server aus, den Sie für ISPConfig verwenden möchten: (apache,nginx) [apache]: <-- nginx
Konfigurieren von Postgrey
Konfigurieren von Postfix
Generieren eines 4096-Bit-RSA-Privatschlüssels
.......................................................................++
........................................................................................................................................++
Schreiben eines neuen privaten Schlüssels in 'smtpd.key'
-----
Sie werden gefragt, Informationen einzugeben, die in Ihre Zertifikatsanforderung aufgenommen werden.
Was Sie eingeben werden, wird als Distinguished Name oder DN bezeichnet.
Es gibt viele Felder, aber Sie können einige leer lassen.
Für einige Felder gibt es einen Standardwert,
Wenn Sie '.' eingeben, wird das Feld leer gelassen.
-----
Ländercode (2 Buchstaben) [AU]: <-- Geben Sie den 2-Buchstaben-Ländercode ein
Bundesland oder Provinzname (vollständiger Name) [Some-State]: <-- Geben Sie den Namen des Bundeslandes ein
Ortsname (z.B. Stadt) []: <-- Geben Sie Ihre Stadt ein
Organisationsname (z.B. Firma) [Internet Widgits Pty Ltd]: <-- Geben Sie den Namen des Unternehmens ein oder drücken Sie die Eingabetaste
Abteilung (z.B. Abschnitt) []: <-- Eingabetaste drücken
Allgemeiner Name (z.B. FQDN oder IHR Name) []: <-- Geben Sie den Hostnamen des Servers ein, in meinem Fall: server1.example.com
E-Mail-Adresse []: <-- Eingabetaste drücken
Konfigurieren von Mailman
Konfigurieren von Dovecot
Konfigurieren von Spamassassin
Konfigurieren von Amavisd
Konfigurieren von Getmail
Konfigurieren von BIND
Konfigurieren von Jailkit
Konfigurieren von Pureftpd
Konfigurieren von Nginx
Konfigurieren von vlogger
[INFO] Dienst Metronome XMPP-Server nicht erkanntKonfigurieren der UFW-Firewall
Konfigurieren von Fail2ban
[INFO] Dienst OpenVZ nicht erkannt
Konfigurieren von Apps vhost
ISPConfig installieren
ISPConfig-Port [8080]:Admin-Passwort [admin]: <-- Geben Sie hier das gewünschte Passwort des ISPConfig-Administrators einMöchten Sie eine sichere (SSL) Verbindung zur ISPConfig-Weboberfläche (y,n) [y]: <-- Eingabetaste drückenGenerierung eines RSA-Privatschlüssels, 4096 Bit langer Modulus
.......................++
................................................................................................................................++
Sie werden gefragt, Informationen einzugeben, die in Ihre Zertifikatsanforderung aufgenommen werden.
Was Sie eingeben werden, wird als Distinguished Name oder DN bezeichnet.
Es gibt viele Felder, aber Sie können einige leer lassen.
Für einige Felder gibt es einen Standardwert,
Wenn Sie '.' eingeben, wird das Feld leer gelassen.
-----
Ländercode (2 Buchstaben) [AU]: <-- Geben Sie den 2-Buchstaben-Ländercode ein
Bundesland oder Provinzname (vollständiger Name) [Some-State]: <-- Geben Sie den Namen des Bundeslandes ein
Ortsname (z.B. Stadt) []: <-- Geben Sie Ihre Stadt ein
Organisationsname (z.B. Firma) [Internet Widgits Pty Ltd]: <-- Geben Sie den Namen des Unternehmens ein oder drücken Sie die Eingabetaste
Abteilung (z.B. Abschnitt) []: <-- Eingabetaste drücken
Allgemeiner Name (z.B. FQDN oder IHR Name) []: <-- Geben Sie den Hostnamen des Servers ein, in meinem Fall: server1.example.com
E-Mail-Adresse []: <-- Eingabetaste drückenBitte geben Sie die folgenden 'zusätzlichen' Attribute ein,
die mit Ihrer Zertifikatsanforderung gesendet werden
Ein Herausforderungs-Passwort []: <-- Eingabetaste drücken
Ein optionaler Firmenname []: <-- Eingabetaste drücken
Schreiben des RSA-Schlüssels
Konfigurieren des DBServers
Installieren des ISPConfig-Crontabs
kein Crontab für root
kein Crontab für getmail
IP-Adressen erkennen
Dienste neu starten ...
Installation abgeschlossen.Der Installer konfiguriert automatisch alle zugrunde liegenden Dienste, sodass keine manuelle Konfiguration erforderlich ist.
Danach können Sie auf ISPConfig 3 unter http(s)://server1.example.com:8080/ oder http(s)://192.168.1.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):


Schließlich beheben wir einige Berechtigungen der RoundCube-Installation.
chown root:ispapps /etc/roundcube/debian-db.php
chmod 640 /etc/roundcube/debian-db.php
chown root:ispapps /etc/roundcube/config.inc.php
chmod 640 /etc/roundcube/config.inc.php
chown -R ispapps:adm /var/log/roundcube
chmod -R 750 /var/log/roundcube
chown -R ispapps:ispapps /var/lib/roundcube/temp
chmod -R 750 /var/lib/roundcube/tempDas System ist jetzt bereit zur Verwendung.
Es gibt einige Plugins, um RoundCube Webmail mit ISPConfig zu integrieren, schauen Sie hier nach den Installationsanweisungen für das ISPConfig RoundCube-Plugin.
20.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 Referenzdokument 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.
21 Download des virtuellen Maschinenimages dieses Tutorials
Dieses Tutorial ist als sofort einsatzbereites virtuelles Maschinenimage im ovf/ova-Format verfügbar, das mit VMWare und Virtualbox kompatibel ist. Das virtuelle Maschinenimage verwendet die folgenden Anmeldedaten:
SSH / Shell-Anmeldung
Benutzername: administrator
Passwort: howtoforge
Benutzername: root
Passwort: howtoforge
ISPConfig-Anmeldung
Benutzername: admin
Passwort: howtoforge
MySQL-Anmeldung
Benutzername: root
Passwort: howtoforge
Die IP der VM ist 192.168.0.100, sie kann in der Datei /etc/network/interfaces geändert werden. Bitte ändern Sie alle oben genannten Passwörter, um die virtuelle Maschine zu sichern.
22 Links
- Debian: http://www.debian.org/
- ISPConfig: http://www.ispconfig.org/
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.