Server Installation · 7 min read · Feb 12, 2026

Der perfekte Server - Fedora 15 x86_64 [ISPConfig 3] - Seite 4

11 Installieren Sie Courier-IMAP, Courier-Authlib und Maildrop

Leider gibt es keine rpm-Pakete für Courier-IMAP, Courier-Authlib und Maildrop, daher müssen wir sie selbst erstellen.

Zuerst entfernen Sie Dovecot (Fedora 15 wird mit Dovecot 2.x geliefert; leider unterstützt ISPConfig 3 Dovecot 1.2.x, aber nicht 2.x):

yum remove dovecot dovecot-mysql 

Dann installieren Sie die Voraussetzungen, die wir benötigen, um Courier rpm-Pakete zu erstellen:

yum install rpm-build gcc mysql-devel openssl-devel cyrus-sasl-devel pkgconfig zlib-devel pcre-devel openldap-devel postgresql-devel expect libtool-ltdl-devel openldap-servers libtool gdbm-devel pam-devel gamin-devel libidn-devel 

RPM-Pakete sollten nicht als Root-Benutzer erstellt werden; courier-imap wird sogar die Kompilierung verweigern, wenn es erkennt, dass die Kompilierung als Root-Benutzer ausgeführt wird. Daher erstellen wir jetzt ein normales Benutzerkonto (falko in diesem Beispiel) und geben ihm ein Passwort:

useradd -m -s /bin/bash falko
passwd falko

Wir benötigen später den sudo-Befehl, damit der Benutzer falko die rpm-Pakete kompilieren und installieren kann. Aber zuerst müssen wir falko erlauben, alle Befehle mit sudo auszuführen:

Führen Sie aus

visudo

In der Datei, die sich öffnet, gibt es eine Zeile root ALL=(ALL) ALL. Fügen Sie eine ähnliche Zeile für falko direkt unter dieser Zeile hinzu:

| [...] ## Erlauben Sie root, beliebige Befehle überall auszuführen root ALL=(ALL) ALL falko ALL=(ALL) ALL [...] |

Jetzt sind wir bereit, unser rpm-Paket zu erstellen. Zuerst werden Sie der Benutzer falko:

su falko

Als nächstes erstellen wir unsere Build-Umgebung:

mkdir $HOME/rpm
mkdir $HOME/rpm/SOURCES
mkdir $HOME/rpm/SPECS
mkdir $HOME/rpm/BUILD
mkdir $HOME/rpm/BUILDROOT
mkdir $HOME/rpm/SRPMS
mkdir $HOME/rpm/RPMS
mkdir $HOME/rpm/RPMS/i386
mkdir $HOME/rpm/RPMS/x86_64

echo "%_topdir $HOME/rpm" >> $HOME/.rpmmacros

Jetzt erstellen wir ein Download-Verzeichnis und laden die Quelldateien von http://www.courier-mta.org/download.php herunter:

mkdir $HOME/downloads
cd $HOME/downloads

wget https://sourceforge.net/projects/courier/files/authlib/0.63.0/courier-authlib-0.63.0.tar.bz2/download
wget https://sourceforge.net/projects/courier/files/imap/4.8.1/courier-imap-4.8.1.tar.bz2/download
wget https://sourceforge.net/projects/courier/files/maildrop/2.5.4/maildrop-2.5.4.tar.bz2/download

(Sie fragen sich vielleicht, warum ich nicht die neueste Version von courier-imap - 4.9.3 zum Zeitpunkt des Schreibens - herunterlade, sondern eine ältere - 4.8.1. Das liegt daran, dass 4.9.3 auf meinem System nicht kompiliert werden konnte, während 4.8.1 einwandfrei funktioniert.)

Jetzt (immer noch in $HOME/downloads) können wir courier-authlib bauen:

sudo rpmbuild -ta courier-authlib-0.63.0.tar.bz2

Nach dem Build-Prozess finden Sie die rpm-Pakete in /root/rpmbuild/RPMS/x86_64 (/root/rpmbuild/RPMS/i686, wenn Sie sich auf einem i686-System befinden). Der Befehl

sudo ls -l /root/rpmbuild/RPMS/x86_64

zeigt Ihnen die verfügbaren rpm-Pakete:

[falko@server1 downloads]$ sudo ls -l /root/rpmbuild/RPMS/x86_64
total 520
-rw-r–r– 1 root root 123448 May 25 18:06 courier-authlib-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 265144 May 25 18:06 courier-authlib-debuginfo-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 34876 May 25 18:06 courier-authlib-devel-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 17448 May 25 18:06 courier-authlib-ldap-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 13808 May 25 18:06 courier-authlib-mysql-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 13020 May 25 18:06 courier-authlib-pgsql-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 8276 May 25 18:06 courier-authlib-pipe-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 34108 May 25 18:06 courier-authlib-userdb-0.63.0-1.fc15.x86_64.rpm
[falko@server1 downloads]$

Wählen Sie die Pakete aus, die Sie installieren möchten, und installieren Sie sie wie folgt:

sudo rpm -ivh /root/rpmbuild/RPMS/x86_64/courier-authlib-0.63.0-1.fc15.x86_64.rpm /root/rpmbuild/RPMS/x86_64/courier-authlib-mysql-0.63.0-1.fc15.x86_64.rpm /root/rpmbuild/RPMS/x86_64/courier-authlib-devel-0.63.0-1.fc15.x86_64.rpm

Jetzt gehen wir zurück zu unserem Download-Verzeichnis:

cd $HOME/downloads

Führen Sie die folgenden Befehle aus, um erforderliche Verzeichnisse zu erstellen/Verzeichnisberechtigungen zu ändern (da sonst der Build-Prozess für Courier-Imap fehlschlägt):

sudo mkdir /var/cache/ccache/tmp
sudo chmod o+rwx /var/cache/ccache/
sudo chmod 777 /var/cache/ccache/tmp

Jetzt führen Sie rpmbuild erneut aus, diesmal ohne sudo, da die Kompilierung fehlschlägt, wenn sie als Root ausgeführt wird:

rpmbuild -ta courier-imap-4.8.1.tar.bz2

Nach dem Build-Prozess finden Sie die rpm-Pakete in $HOME/rpm/RPMS/x86_64 ($HOME/rpm/RPMS/i686, wenn Sie sich auf einem i686-System befinden):

cd $HOME/rpm/RPMS/x86_64

Der Befehl

ls -l

zeigt Ihnen die verfügbaren rpm-Pakete:

[falko@server1 x86_64]$ ls -l
total 1708
-rw-rw-r– 1 falko falko 596432 May 25 18:33 courier-imap-4.8.1-2.15.x86_64.rpm
-rw-rw-r– 1 falko falko 1149328 May 25 18:33 courier-imap-debuginfo-4.8.1-2.15.x86_64.rpm
[falko@server1 x86_64]$

Sie können courier-imap wie folgt installieren:

sudo rpm -ivh courier-imap-4.8.1-2.15.x86_64.rpm

Jetzt gehen wir zurück zu unserem Download-Verzeichnis:

cd $HOME/downloads

und führen rpmbuild erneut aus, diesmal um ein Maildrop-Paket zu erstellen:

sudo rpmbuild -ta maildrop-2.5.4.tar.bz2

Nach dem Build-Prozess finden Sie die rpm-Pakete in /root/rpmbuild/RPMS/x86_64 (/root/rpmbuild/RPMS/i686, wenn Sie sich auf einem i686-System befinden). Der Befehl

sudo ls -l /root/rpmbuild/RPMS/x86_64

zeigt Ihnen die verfügbaren rpm-Pakete:

[falko@server1 downloads]$ sudo ls -l /root/rpmbuild/RPMS/x86_64
total 1628
-rw-r–r– 1 root root 123448 May 25 18:06 courier-authlib-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 265144 May 25 18:06 courier-authlib-debuginfo-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 34876 May 25 18:06 courier-authlib-devel-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 17448 May 25 18:06 courier-authlib-ldap-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 13808 May 25 18:06 courier-authlib-mysql-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 13020 May 25 18:06 courier-authlib-pgsql-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 8276 May 25 18:06 courier-authlib-pipe-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 34108 May 25 18:06 courier-authlib-userdb-0.63.0-1.fc15.x86_64.rpm
-rw-r–r– 1 root root 278520 May 25 18:50 maildrop-2.5.4-1.15.x86_64.rpm
-rw-r–r– 1 root root 685672 May 25 18:50 maildrop-debuginfo-2.5.4-1.15.x86_64.rpm
-rw-r–r– 1 root root 99924 May 25 18:50 maildrop-devel-2.5.4-1.15.x86_64.rpm
-rw-r–r– 1 root root 63968 May 25 18:50 maildrop-man-2.5.4-1.15.x86_64.rpm
[falko@server1 downloads]$

Sie können maildrop jetzt wie folgt installieren:

sudo rpm -ivh /root/rpmbuild/RPMS/x86_64/maildrop-2.5.4-1.15.x86_64.rpm

Nachdem Sie alle benötigten Pakete kompiliert und installiert haben, können Sie wieder Root werden, indem Sie eingeben

exit

12 Installieren Sie Postfix

Postfix kann wie folgt installiert werden:

yum install postfix

Dann schalten Sie Sendmail aus und starten Postfix und MySQL:

chkconfig –levels 235 mysqld on
/etc/init.d/mysqld start

chkconfig sendmail off
chkconfig –levels 235 postfix on
/etc/init.d/sendmail stop
/etc/init.d/postfix start

13 Installieren Sie Getmail

Getmail kann wie folgt installiert werden:

yum install getmail

14 Setzen Sie MySQL-Passwörter und konfigurieren Sie phpMyAdmin

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

 mysql_secure_installation 

[root@server1 ~]# mysql_secure_installation

NOTE: ALLE TEILE DIESES SKRIPTS AUSZUFÜHREN, WIRD FÜR ALLE MySQL
SERVER IN PRODUKTION EMPFOHLEN! BITTE JEDEN SCHRITT SORGFÄLTIG LESEN!

Um sich in MySQL anzumelden, um es zu sichern, benötigen wir das
aktuelle Passwort für den Root-Benutzer. Wenn Sie MySQL gerade
installiert haben und das Root-Passwort noch nicht festgelegt haben,
ist das Passwort leer, sodass Sie hier einfach die Eingabetaste
drücken sollten.

Geben Sie das aktuelle Passwort für root ein (drücken Sie die Eingabetaste, wenn keines vorhanden ist): <– EINGABETASTE
OK, Passwort erfolgreich verwendet, weiter…

Das Setzen des Root-Passworts stellt sicher, dass niemand
in den MySQL-Root-Benutzer ohne die entsprechende
Autorisierung einloggen kann.

Root-Passwort setzen? [Y/n] <– EINGABETASTE
Neues Passwort: <– IhrRootSQLPasswort
Neues Passwort erneut eingeben: <– IhrRootSQLPasswort
Passwort erfolgreich aktualisiert!
Privilegientabellen werden neu geladen..
… Erfolg!

Standardmäßig hat eine MySQL-Installation einen anonymen Benutzer,
der es jedem ermöglicht, sich in MySQL einzuloggen, ohne
ein Benutzerkonto erstellt zu haben. 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
verbunden werden dürfen. Dies stellt sicher, dass
niemand das Root-Passwort über das Netzwerk erraten kann.

Root-Login aus der Ferne verbieten? [Y/n] <– EINGABETASTE
… Erfolg!

Standardmäßig kommt MySQL mit einer Datenbank namens
‘test’, auf die jeder zugreifen kann. Dies ist ebenfalls
nur für Testzwecke gedacht und sollte entfernt werden,
bevor Sie in eine Produktionsumgebung wechseln.

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 vorgenommenen Ä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 MySQL-Installation
jetzt sicher sein.

Danke, dass Sie MySQL verwenden!

[root@server1 ~]#

Jetzt konfigurieren wir phpMyAdmin. Wir ändern die Apache-Konfiguration,
so dass phpMyAdmin Verbindungen nicht nur von localhost
erlaubt (indem wir den -Abschnitt auskommentieren):

vi /etc/httpd/conf.d/phpMyAdmin.conf

| # phpMyAdmin - Webbasierter MySQL-Browser, geschrieben in php # # Erlaubt standardmäßig nur localhost # # Aber phpMyAdmin für jeden anderen als localhost zu erlauben, 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 # # Order Deny,Allow # Deny from All # Allow from 127.0.0.1 # Allow from ::1 # Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1 # Diese Verzeichnisse benötigen keinen Zugriff über HTTP - entnommen aus dem ursprünglichen # phpMyAdmin-Upstream-Tarball # Order Deny,Allow Deny from All Allow from None Order Deny,Allow Deny from All Allow from None # Diese Konfiguration verhindert, dass mod_security in phpMyAdmin-Verzeichnissen # SQL usw. filtert. Dies kann Ihre mod_security-Implementierung # beeinträchtigen. # # # # SecRuleInheritance Off # # |

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

chkconfig –levels 235 httpd on
/etc/init.d/httpd start

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

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.