Server Setup · 12 min read · Oct 27, 2025

Der perfekte Server – CentOS 7 (Apache2, Dovecot, ISPConfig 3) - Seite 2

10 Dovecot installieren

Dovecot kann wie folgt installiert werden:

yum -y install dovecot dovecot-mysql dovecot-pigeonhole

Erstellen Sie eine leere dovecot-sql.conf-Datei und einen Symlink:

touch /etc/dovecot/dovecot-sql.conf  
ln -s /etc/dovecot/dovecot-sql.conf /etc/dovecot-sql.conf

Jetzt erstellen Sie die Systemstartlinks und starten Dovecot:

systemctl enable dovecot  
systemctl start dovecot

11 Postfix installieren

Postfix kann wie folgt installiert werden:

yum -y install postfix

Dann schalten Sie Sendmail aus und starten Postfix und Mariadb (MySQL):

systemctl enable mariadb.service  
systemctl start mariadb.service
systemctl stop sendmail.service  
systemctl disable sendmail.service  
systemctl enable postfix.service  
systemctl restart postfix.service

Wir deaktivieren Sendmail, um sicherzustellen, dass es nicht gestartet wird, falls es auf Ihrem Server installiert ist. Daher kann die Fehlermeldung “Failed to issue method call: Unit sendmail.service not loaded.” ignoriert werden.

12 Getmail installieren

Getmail kann wie folgt installiert werden:

yum -y install getmail

13 MySQL-Passwörter festlegen und phpMyAdmin konfigurieren

Setzen Sie Passwörter für das MySQL-Root-Konto:

mysql_secure_installation
[root@server1 tmp]# mysql_secure_installation  
  
  
HINWEIS: DAS AUSFÜHREN ALLER TEILE DIESES SCRIPTS WIRD FÜR ALLE MariaDB  
SERVER IM PRODUKTIVEINSATZ EMPFOHLEN! BITTE JEDEN SCHRITT SORGFÄLTIG LESEN!
Um sich bei MariaDB anzumelden, um es abzusichern, benötigen wir das aktuelle  
Passwort für den Root-Benutzer. Wenn Sie gerade MariaDB installiert haben und  
Sie das Root-Passwort noch nicht festgelegt haben, wird das Passwort leer sein,  
also sollten Sie hier einfach die Eingabetaste drücken.
Geben Sie das aktuelle Passwort für root ein (Eingabetaste für keines):  
OK, Passwort erfolgreich verwendet, weiter...
Das Festlegen des Root-Passworts stellt sicher, dass niemand sich ohne die richtige  
Autorisierung beim MariaDB-Root-Benutzer anmelden kann.  
  
Root-Passwort festlegen? [Y/n] <-- EINGABETASTE  
Neues Passwort: <-- IhrRootSQLPasswort  
Neues Passwort erneut eingeben: <-- IhrRootSQLPasswort  
Passwort erfolgreich aktualisiert!  
Privilegientabellen werden neu geladen..  
 ... Erfolg!  
  
  
Standardmäßig hat eine MariaDB-Installation einen anonymen Benutzer, der es jedem  
ermöglicht, sich bei MariaDB anzumelden, ohne dass ein Benutzerkonto für  
ihn erstellt werden muss. Dies ist nur für Testzwecke gedacht und soll die  
Installation etwas reibungsloser gestalten. Sie sollten sie entfernen, bevor Sie  
in eine Produktionsumgebung wechseln.  
  
Anonyme Benutzer entfernen? [Y/n] <-- EINGABETASTE  
 ... Erfolg!  
  
Normalerweise sollte root nur von 'localhost' aus eine Verbindung herstellen  
dürfen. Dies stellt sicher, dass jemand das Root-Passwort nicht über das  
Netzwerk erraten kann.  
  
Root-Login aus der Ferne verbieten? [Y/n] <-- EINGABETASTE  
 ... Erfolg!  
  
Standardmäßig kommt MariaDB mit einer Datenbank namens 'test', auf die jeder  
zugreifen kann. Dies ist ebenfalls nur für Testzwecke gedacht und sollte  
vor dem Wechsel in eine Produktionsumgebung entfernt werden.  
  
Testdatenbank und Zugriff darauf entfernen? [Y/n] <-- EINGABETASTE  
 - Testdatenbank wird gelöscht...  
 ... Erfolg!  
 - Berechtigungen für die Testdatenbank werden entfernt...  
 ... Erfolg!  
  
Das Neuladen der Berechtigungstabellen stellt sicher, dass alle bisher  
getätigten Änderungen sofort wirksam werden.  
  
Berechtigungstabellen jetzt neu laden? [Y/n] <-- EINGABETASTE  
 ... Erfolg!  
  
Aufräumen...  
  
  
Alles erledigt! Wenn Sie alle oben genannten Schritte abgeschlossen haben, sollte  
Ihre MariaDB-Installation jetzt sicher sein.  
  
Danke, dass Sie MariaDB verwenden!  
  
[root@server1 tmp]#

Jetzt konfigurieren wir phpMyAdmin. Wir ändern die Apache-Konfiguration, damit phpMyAdmin Verbindungen nicht nur von localhost zulässt (indem wir die beiden “Require ip”-Zeilen auskommentieren und die neue Zeile “Require all granted” im -Block hinzufügen):

nano /etc/httpd/conf.d/phpMyAdmin.conf
# phpMyAdmin - Webbasierter MySQL-Browser, der in PHP geschrieben ist
#
# Erlaubt standardmäßig nur localhost
#
# Aber phpMyAdmin für jeden anderen als localhost zuzulassen, sollte als
# gefährlich angesehen werden, es sei denn, es ist ordnungsgemäß durch SSL gesichert

Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin


   
     # Apache 2.4
     
     #  Require ip 127.0.0.1
     #  Require ip ::1  
        Require all granted
     
   
   
     # Apache 2.2
     Order Deny,Allow
     Deny from All
     Allow from 127.0.0.1
     Allow from ::1
   

            

Als nächstes ändern wir die Authentifizierung in phpMyAdmin von Cookie auf HTTP:

nano /etc/phpMyAdmin/config.inc.php
[...]
/* Authentifizierungstyp */
$cfg['Servers'][$i]['auth_type'] = 'http';
[...]

Dann erstellen wir die Systemstartlinks für Apache und starten ihn:

systemctl enable  httpd.service  
systemctl restart  httpd.service

Jetzt können Sie Ihren Browser auf http://server1.example.com/phpmyadmin/ oder http://192.168.0.100/phpmyadmin/ lenken und sich mit dem Benutzernamen root und Ihrem neuen Root-MySQL-Passwort anmelden.

14 Amavisd-new, SpamAssassin und ClamAV installieren

Um amavisd-new, spamassassin und clamav zu installieren, führen Sie den folgenden Befehl aus:

yum -y install amavisd-new spamassassin clamav clamd clamav-update unzip bzip2 unrar perl-DBD-mysql

Bearbeiten Sie die freshclam-Konfigurationsdatei /etc/freshclam.conf

nano /etc/freshclam.conf

und kommentieren Sie die Zeile “Example” aus:

[....]  
# Example  
[....]

Dann starten wir freshclam, amavisd und clamd.amavisd:

sa-update  
freshclam   
systemctl enable amavisd.service

15 Apache2 mit mod_php, mod_fcgi/PHP5, PHP-FPM und suPHP installieren

ISPConfig 3 ermöglicht es Ihnen, mod_php, mod_fcgi/PHP5, cgi/PHP5 und suPHP pro Website zu verwenden.

Wir können Apache2 mit mod_php5, mod_fcgid und PHP5 wie folgt installieren:

yum -y install php php-devel php-gd php-imap php-ldap php-mysql php-odbc php-pear php-xml php-xmlrpc php-pecl-apc php-mbstring php-mcrypt php-mssql php-snmp php-soap php-tidy curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-devel mod_fcgid php-cli httpd-devel php-fpm

Als nächstes öffnen wir /etc/php.ini…

nano /etc/php.ini

… und ändern die Fehlerberichterstattung (damit keine Hinweise mehr angezeigt werden), setzen die Zeitzone und kommentieren cgi.fix_pathinfo=1 aus:

[...]
;error_reporting = E_ALL & ~E_DEPRECATED
error_reporting = E_ALL & ~E_NOTICE & ~E_DEPRECATED
[...]
; cgi.fix_pathinfo bietet *echte* PATH_INFO/PATH_TRANSLATED-Unterstützung für CGI. PHP's
; vorheriges Verhalten war, PATH_TRANSLATED auf SCRIPT_FILENAME zu setzen und nicht zu verstehen,
; was PATH_INFO ist. Für weitere Informationen zu PATH_INFO siehe die CGI-Spezifikationen. Das Setzen
; dieses Wertes auf 1 bewirkt, dass PHP CGI seine Pfade an die Spezifikation anpasst. Ein Wert
; von null bewirkt, dass PHP sich wie zuvor verhält. Standard ist 1. Sie sollten Ihre Skripte
; so ändern, dass sie SCRIPT_FILENAME anstelle von PATH_TRANSLATED verwenden.
; http://www.php.net/manual/en/ini.core.php#ini.cgi.fix-pathinfo
cgi.fix_pathinfo=1  
[...]  
date.timezone = 'Europe/Berlin'
[...]

Als nächstes installieren wir suPHP (es gibt ein mod_suphp-Paket in den Repositories, aber leider ist es nicht mit ISPConfig kompatibel, daher müssen wir suPHP selbst erstellen):

cd /usr/local/src  
wget http://suphp.org/download/suphp-0.7.2.tar.gz  
tar zxvf suphp-0.7.2.tar.gz

CentOS 7 verwendet apache-2.4, daher benötigen wir einen Patch für suPHP, bevor wir es gegen Apache kompilieren können. Der Patch wird wie folgt angewendet:

wget -O suphp.patch https://lists.marsching.com/pipermail/suphp/attachments/20130520/74f3ac02/attachment.patch  
patch -Np1 -d suphp-0.7.2 < suphp.patch  
cd suphp-0.7.2  
autoreconf -if

[root@server1 suphp-0.7.2]# autoreconf -if

libtoolize: legt Hilfsdateien in AC_CONFIG_AUX_DIR, config.

libtoolize: kopiert die Datei config/ltmain.sh

libtoolize: Ziehen Sie in Betracht, AC_CONFIG_MACRO_DIR([m4]) zu configure.ac hinzuzufügen und

libtoolize: libtoolize erneut auszuführen, um die richtigen libtool-Makros im Baum zu halten.

libtoolize: Ziehen Sie in Betracht, -I m4 zu ACLOCAL_AMFLAGS in Makefile.am hinzuzufügen.

configure.ac:9: Warnung: AM_INIT_AUTOMAKE: zwei- und drei-Argumente-Formen sind veraltet. Für weitere Informationen siehe:

configure.ac:9: http://www.gnu.org/software/automake/manual/automake.html#Modernize-AM_005fINIT_005fAUTOMAKE-invocation

configure.ac:24: installiert ‘config/config.guess’

configure.ac:24: installiert ‘config/config.sub’

configure.ac:9: installiert ‘config/install-sh’

configure.ac:9: installiert ‘config/missing’

src/Makefile.am: installiert ‘config/depcomp’

[root@server1 suphp-0.7.2]#

Es wird der Patch angewendet, jetzt können wir den neuen Quellcode wie folgt kompilieren:

./configure --prefix=/usr/ --sysconfdir=/etc/ --with-apr=/usr/bin/apr-1-config --with-apache-user=apache --with-setid-mode=owner --with-logfile=/var/log/httpd/suphp_log  
make  
make install

Dann fügen wir das suPHP-Modul zu unserer Apache-Konfiguration hinzu…

nano /etc/httpd/conf.d/suphp.conf
LoadModule suphp_module modules/mod_suphp.so

… und erstellen die Datei /etc/suphp.conf wie folgt:

nano /etc/suphp.conf
[global]
;Pfad zur Protokolldatei
logfile=/var/log/httpd/suphp.log
;Protokollebene
loglevel=info
;Benutzer, unter dem Apache läuft
webserver_user=apache
;Pfad, in dem sich alle Skripte befinden müssen
docroot=/
;Pfad zu chroot() vor der Ausführung des Skripts
;chroot=/mychroot
; Sicherheitsoptionen
allow_file_group_writeable=true
allow_file_others_writeable=false
allow_directory_group_writeable=true
allow_directory_others_writeable=false
;Überprüfen, ob das Skript innerhalb von DOCUMENT_ROOT ist
check_vhost_docroot=true
;Sendet kleinere Fehlermeldungen an den Browser
errors_to_browser=false
;PATH-Umgebungsvariable
env_path=/bin:/usr/bin
;Umask festlegen, in oktaler Notation angeben
umask=0077
; Mindest-UID
min_uid=100
; Mindest-GID
min_gid=100

[handlers]
;Handler für PHP-Skripte
x-httpd-suphp="php:/usr/bin/php-cgi"
;Handler für CGI-Skripte
x-suphp-cgi="execute:!self"

Bearbeiten Sie die Datei /etc/httpd/conf.d/php.conf, um die PHP-Verarbeitung nur für phpMyAdmin, Roundcube und andere Systempakete in /usr/share zu aktivieren, jedoch nicht für Websites in /var/www, da ISPConfig PHP für jede Website einzeln aktivieren wird.

nano /etc/httpd/conf.d/php.conf

Ändern Sie die Zeilen:

  
SetHandler application/x-httpd-php  

in:

  
  
SetHandler application/x-httpd-php  
  

So wird der PHP-Handler von der Directory-Direktive umschlossen.

Aktivieren Sie httpd und PHP-FPM, damit sie beim Booten gestartet werden, und starten Sie den PHP-FPM-Dienst.

systemctl start php-fpm.service  
systemctl enable php-fpm.service  
systemctl enable httpd.service

Schließlich starten wir Apache neu:

systemctl restart httpd.service

15.1 Installation von mod_python

Das Apache-Modul mod_python ist nicht als RPM-Paket verfügbar, daher werden wir es aus dem Quellcode kompilieren. Der erste Schritt besteht darin, die Python-Entwicklungsdateien zu installieren und die aktuelle mod_python-Version als tar.gz-Datei herunterzuladen.

yum -y install python-devel
cd /usr/local/src/  
wget http://dist.modpython.org/dist/mod_python-3.5.0.tgz  
tar xfz mod_python-3.5.0.tgz  
cd mod_python-3.5.0

und dann das Modul konfigurieren und kompilieren:

./configure  
make  
make install

und das Modul in Apache aktivieren:

echo 'LoadModule python_module modules/mod_python.so' > /etc/httpd/conf.modules.d/10-python.conf  
systemctl restart httpd.service 

16 PureFTPd installieren

PureFTPd kann mit folgendem Befehl installiert werden:

yum -y install pure-ftpd

Dann erstellen Sie die Systemstartlinks und starten PureFTPd:

systemctl enable pure-ftpd.service  
systemctl start pure-ftpd.service

Jetzt konfigurieren wir PureFTPd, um FTP- und TLS-Sitzungen zuzulassen. FTP ist ein sehr unsicheres Protokoll, da alle Passwörter und Daten im Klartext übertragen werden. Durch die Verwendung von TLS kann die gesamte Kommunikation verschlüsselt werden, wodurch FTP viel sicherer wird.

OpenSSL wird von TLS benötigt; um OpenSSL zu installieren, führen wir einfach aus:

yum install openssl

Öffnen Sie /etc/pure-ftpd/pure-ftpd.conf…

vi /etc/pure-ftpd/pure-ftpd.conf

Wenn Sie FTP- und TLS-Sitzungen zulassen möchten, setzen Sie TLS auf 1:

[...]
# Diese Option kann drei Werte annehmen:
# 0 : deaktiviert die SSL/TLS-Verschlüsselungsschicht (Standard).
# 1 : akzeptiert sowohl traditionelle als auch verschlüsselte Sitzungen.
# 2 : verweigert Verbindungen, die keine SSL/TLS-Sicherheitsmechanismen verwenden,
#     einschließlich anonymer Sitzungen.
# Kommentieren Sie dies nicht blind aus. Stellen Sie sicher, dass:
# 1) Ihr Server mit SSL/TLS-Unterstützung kompiliert wurde (--with-tls),
# 2) Ein gültiges Zertifikat vorhanden ist,
# 3) Nur kompatible Clients sich anmelden können.

TLS                      1
[...]

Um 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.pem

Ländercode (2 Buchstaben) [XX]: <– Geben Sie Ihren Ländercode ein (z.B. “DE”).
Bundesland oder Provinzname (vollständiger Name) []: <– Geben Sie den Namen Ihres Bundeslandes oder Ihrer Provinz ein.
Ortsname (z.B. Stadt) [Default City]: <– Geben Sie Ihre Stadt ein.
Name der Organisation (z.B. Firma) [Default Company Ltd]: <– Geben Sie den Namen Ihrer Organisation ein (z.B. den Namen Ihres Unternehmens).
Name der organisatorischen Einheit (z.B. Abteilung) []: <– Geben Sie den Namen Ihrer organisatorischen Einheit ein (z.B. “IT-Abteilung”).
Allgemeiner Name (z.B. Ihr Name oder der Hostname Ihres Servers) []: <– 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.pem

Schließlich starten Sie PureFTPd neu:

systemctl restart pure-ftpd.service

Das war’s. Sie können jetzt versuchen, sich mit Ihrem FTP-Client zu verbinden; jedoch sollten Sie Ihren FTP-Client so konfigurieren, dass er TLS verwendet.

17 BIND installieren

Wir können BIND wie folgt installieren:

yum -y install bind bind-utils

Machen Sie eine Sicherung der vorhandenen /etc/named.conf-Datei und erstellen Sie eine neue wie folgt:

cp /etc/named.conf /etc/named.conf_bak  
cat /dev/null > /etc/named.conf  
nano /etc/named.conf
// named.conf\
//\
// Bereitgestellt vom Red Hat bind-Paket zur Konfiguration des ISC BIND named(8) DNS\
// Servers als nur Caching-Nameserver (nur als localhost-DNS-Resolver).\
//\
// Siehe /usr/share/doc/bind*/sample/ für Beispiel-named-Konfigurationsdateien.\
options {\
        listen-on port 53 { any; };\
        listen-on-v6 port 53 { any; };\
        directory       "/var/named";\
        dump-file       "/var/named/data/cache_dump.db";\
        statistics-file "/var/named/data/named_stats.txt";\
        memstatistics-file "/var/named/data/named_mem_stats.txt";\
        allow-query     { any; };\
                allow-recursion {"none";};\
        recursion no;\
};\
logging {\
        channel default_debug {\
                file "data/named.run";\
                severity dynamic;\
        };\
};\
zone "." IN {\
        type hint;\
        file "named.ca";\
};\
include "/etc/named.conf.local";

Erstellen Sie die Datei /etc/named.conf.local, die am Ende von /etc/named.conf enthalten ist ( /etc/named.conf.local wird später von ISPConfig gefüllt, wenn Sie DNS-Zonen in ISPConfig erstellen):

touch /etc/named.conf.local

Dann erstellen wir die Startlinks und starten BIND:

systemctl enable named.service  
systemctl start named.service

18 Webalizer und AWStats installieren

Webalizer und AWStats können wie folgt installiert werden:

yum -y install webalizer awstats perl-DateTime-Format-HTTP perl-DateTime-Format-Builder

19 Jailkit installieren

Jailkit wird verwendet, um SSH-Benutzer und Cronjobs zu chrooten. Es kann wie folgt installiert werden (wichtig: Jailkit muss vor ISPConfig installiert werden - es kann danach nicht mehr installiert werden!):

cd /tmp  
wget http://olivier.sessink.nl/jailkit/jailkit-2.17.tar.gz  
tar xvfz jailkit-2.17.tar.gz  
cd jailkit-2.17  
./configure  
make  
make install  
cd ..  
rm -rf jailkit-2.17*

20 fail2ban installieren

Dies ist optional, aber empfohlen, da der ISPConfig-Monitor versucht, das Protokoll anzuzeigen:

yum -y install fail2ban

Dann erstellen Sie die Systemstartlinks für fail2ban und starten Sie es:

systemctl enable fail2ban.service  
systemctl start fail2ban.service

21 rkhunter installieren

rkhunter kann wie folgt installiert werden:

yum -y install rkhunter

22 Mailman installieren

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:

yum -y install mailman

Bevor wir Mailman starten können, muss eine erste Mailingliste namens mailman erstellt werden:

touch /var/lib/mailman/data/aliases  
/usr/lib/mailman/bin/newlist mailman

[root@server1 tmp]# /usr/lib/mailman/bin/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 Mailingliste
Um die Erstellung Ihrer Mailingliste abzuschließen, müssen Sie Ihre /etc/aliases (oder entsprechende) Datei bearbeiten, indem Sie die folgenden Zeilen hinzufügen und möglicherweise das Programm newaliases ausführen:

Mailman-Mailingliste

mailman: “|/usr/lib/mailman/mail/mailman post mailman”
mailman-admin: “|/usr/lib/mailman/mail/mailman admin mailman”
mailman-bounces: “|/usr/lib/mailman/mail/mailman bounces mailman”
mailman-confirm: “|/usr/lib/mailman/mail/mailman confirm mailman”
mailman-join: “|/usr/lib/mailman/mail/mailman join mailman”
mailman-leave: “|/usr/lib/mailman/mail/mailman leave mailman”
mailman-owner: “|/usr/lib/mailman/mail/mailman owner mailman”
mailman-request: “|/usr/lib/mailman/mail/mailman request mailman”
mailman-subscribe: “|/usr/lib/mailman/mail/mailman subscribe mailman”
mailman-unsubscribe: “|/usr/lib/mailman/mail/mailman unsubscribe mailman”

Drücken Sie die Eingabetaste, um den Mailman-Besitzer zu benachrichtigen… <– EINGABETASTE

[root@server1 tmp]#

Öffnen Sie danach /etc/aliases…

vi /etc/aliases

… und fügen Sie die folgenden Zeilen hinzu:

[...]
mailman:              "|/usr/lib/mailman/mail/mailman post mailman"
mailman-admin:        "|/usr/lib/mailman/mail/mailman admin mailman"
mailman-bounces:      "|/usr/lib/mailman/mail/mailman bounces mailman"
mailman-confirm:      "|/usr/lib/mailman/mail/mailman confirm mailman"
mailman-join:         "|/usr/lib/mailman/mail/mailman join mailman"
mailman-leave:        "|/usr/lib/mailman/mail/mailman leave mailman"
mailman-owner:        "|/usr/lib/mailman/mail/mailman owner mailman"
mailman-request:      "|/usr/lib/mailman/mail/mailman request mailman"
mailman-subscribe:    "|/usr/lib/mailman/mail/mailman subscribe mailman"
mailman-unsubscribe:  "|/usr/lib/mailman/mail/mailman unsubscribe mailman"

Führen Sie danach aus:

ewaliases

und starten Sie Postfix neu:

systemctl restart postfix.service

Jetzt öffnen Sie die Mailman-Apache-Konfigurationsdatei /etc/httpd/conf.d/mailman.conf…

nano /etc/httpd/conf.d/mailman.conf

… und fügen Sie die Zeile ScriptAlias /cgi-bin/mailman/ /usr/lib/mailman/cgi-bin/ hinzu. Kommentieren Sie Alias /pipermail/ /var/lib/mailman/archives/public/ aus und fügen Sie die Zeile Alias /pipermail /var/lib/mailman/archives/public/ hinzu:

#  
#  httpd-Konfigurationseinstellungen zur Verwendung mit Mailman.  
#  
ScriptAlias /mailman/ /usr/lib/mailman/cgi-bin/
ScriptAlias /cgi-bin/mailman/ /usr/lib/mailman/cgi-bin/

    AllowOverride None
    Options ExecCGI
    Order allow,deny
    Allow from all



#Alias /pipermail/ /var/lib/mailman/archives/public/
Alias /pipermail /var/lib/mailman/archives/public/

    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
    AddDefaultCharset Off


# Kommentieren Sie die folgende Zeile aus, um Abfragen an /mailman zur
# Listinfo-Seite umzuleiten (empfohlen).

# RedirectMatch ^/mailman[/]*$ /mailman/listinfo

Starten Sie Apache neu:

systemctl restart httpd.service

Erstellen Sie die Systemstartlinks für Mailman und starten Sie es:

systemctl enable mailman.service  
systemctl start mailman.service

Nachdem Sie ISPConfig 3 installiert haben, können Sie auf Mailman wie folgt zugreifen:

Sie können das Alias /cgi-bin/mailman für alle Apache-VHosts verwenden (bitte beachten Sie, dass suExec und CGI für alle VHosts, von denen Sie auf Mailman zugreifen möchten, deaktiviert sein müssen!), was bedeutet, dass Sie auf die Mailman-Administrationsoberfläche für eine Liste unter http:///cgi-bin/mailman/admin/ zugreifen können, und die Webseite für Benutzer einer Mailingliste finden Sie unter http:///cgi-bin/mailman/listinfo/.

Unter http:///pipermail/ finden Sie die Archive der Mailingliste.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.