pd-admin – Installation

Die Installation von pd-admin ist simple, kann aber durchaus die Eine oder andere Tücke bieten. Daher zeige ich hier die Installation von pd-admin auf einer VirtualBox Maschine analog zu meinem Server von cajus.name auf.

Update 2016-08-08

kleinere Änderungen, Hinweis für Pakete von 32-bit und 64-bit Systemen, Hinweis auf pdadmin-forum.de

Inhalt

Verwendete Software

– Server mit CentOS 7 x86_64 minimal
+ Root Rechte
– pd-admin v4.27
+ SE 4-0.272

Pre-Installation

Partitionierung

pd-admin bietet eine eigene Serverumgebung (kurz SE) mit an. Auch wenn diese Optional ist, so empfehle ich die SE mit zu installieren. Die SE wird regelmäßig mit Updates versorgt und ist somit immer aktuell.

Die SE wird unter /usr/local/pd-admin2 installiert. Es sollte also darauf geachtet werden, dass die Partition ausreichen Platz bietet. Auf cajus.name ist der Ordner aktuell rund 1.7 GB groß.

pd-admin wird unter /opt/pd-admin installiert. Hier beträgt die Ordnergröße rund 275 MB.

Die Nutzerdaten, Mailboxen, sowie die Daten von MySQL werden unter /home gespeichert. Auch hier sollte die Partition entsprechend groß dimensioniert werden.

Netzwerkkonfiguration

Der Hostname ist vorher zu konfigurieren und auf muss die IP des Servers auflösen. Der Hostnamen sollte ein FQHN (Fully-Qualified Host Name) sein und kann mit folgendem Befehl gesetzt werden

[root@server01 ~]# hostnamectl set-hostname server01.example.net

Als Hostname sollte kein Domainname verwendet werden, welcher später noch für Webseiten verwendet werden soll. Nimmt man z.B. www.example.net, so würde man immer zu pd-admin gelangen und nicht zur angelegten Webseite. Dies hat damit zu tun, dass in der httpd.conf die Konfiguration für pd-admin immer VOR den vHosts kommt.

Das System

Tipp:
Auf frischen CentOS Installationen sollte man ruhig das EPEL Repository hinzufügen

[root@server01 ~]# yum install epel-release Dies ist für pd-admin aber nicht zwingend notwendig ;-)

Als Erstes sollte man die Aktualisierung des Systems vornehmen

[root@server01 ~]# yum update

Da hierbei oft auch der Kernel ein Update bekommt, führe ich im Anschluss ein Reboot durch damit der aktuelle Kernel geladen wird. Als nächstes werden dann die Pakete installiert, welche für die Installation von pd-admin benötigt werden

[root@server01 ~]# yum -y install wget patch groff make gcc gcc-c++ glibc-devel psmisc libstdc++-devel zlib-devel zlib.i686 libgcc.i686 ncurses-libs.i686 glibc.i686 ImageMagick rrdtool net-tools iptables-services

Hinweis: 
Bei 64-bit Systemen werden die 32-bit Libraries libgcc.i686 und zlib.i686 für die Installation benötigt. Bei 32-bit Systemen sollten diese automatisch als Abhängigkeiten der übrigen Pakete mitinstalliert werden.

Die Pakete werden auch im pdadmin-forum.de empfohlen.

Zu guter Letzt muss noch die /etc/my.cnf verschoben werden.

[root@server01 ~]# mv /etc/my.cnf /etc/my.cnf.bk

Dies ist notwendig, da sonst der Installer mit folgendem Fehler abbricht

ERROR: Please rename /etc/my.cnf!
exiting ...

INSTALLATION

Legen wir nun mit der Installation los! Zunächst laden wir uns pd-admin herunter, entpacken die Datei und wechseln in das Verzeichnis. Unter dem angegeben Link erhält man immer die aktuellste Version von pd-admin

[root@server01 ~]# wget http://www.pd-admin.de/download/pdadmin_v4.tar.gz

[root@server01 ~]# tar xzf pdadmin_v4.tar.gz

[root@server01 ~]# cd pdadmin

Nun können wir den Installer starten

[root@server01 pdadmin]# ./install-all.sh

Der Vollständigkeit halber sei hier erwähnt, dass man verschiedene Reihen auswählen kann mit

install-all.sh [ -s Reihe ]

Folgende Reihen werden angeboten
1 - für i686,   mit MySQL 4.1
2 - für i686,   mit MySQL 5.0
3 - für i686,   mit MySQL 5.1
4 - für x86_64, mit MySQL 5.5

Gibt man nichts an wird Reihe 4 per default gewählt.

Nach Ausführung von install-all.sh werden zwei Dinge abgefragt. Ob wir die Lizenzbedingungen von providerdienste.de akzeptieren und ob wir die SE installieren möchten.

Da wir schließlich pd-admin installieren und nutzen möchten, akzeptieren wir die Lizenzbedingungen mit einem „j“. Die Installation der SE kann mit „Enter“ bestätigt werden.

#######################################################
# #
# Willkommen bei der Installation von pd-Admin 4.27 #
# #
#######################################################

Build: 2460
Installer: $Revision: 1.25 $
Erkennen Sie die Providerdienste.de Lizenzbedingungen
fuer den Betrieb der Software pd-Admin an (j/n) [N]? j

Möchten Sie die Server-Umgebung (SE) installieren? (j/n) [j]? Enter

Nun wird die Serverumgebung Reihe 4 herunter geladen. Ist dies geschafft beginnt die Konfiguration mit Abfrage einiger Konfigurationsparameter

100%[====================================================================>] 535,623,512 4.40MB/s in 3m 18s

2016-07-18 20:59:39 (2.58 MB/s) - 'se-4-0.272.tar.gz' saved [535623512/535623512]

Entpacke Server-Umgebung. Bitte haben Sie etwas Geduld.
USERADD=useradd -M
** Eigentümer ändern auf root **
** user mysql einrichten **
** Eigentümer ändern auf mysql für var/mysql **
** PostgreSQL vorbereiten **
** user dovecot und dovenull einrichten **
** DocumentRoot einrichten **
** phpMyAdmin vorbereiten **
** phpPgAdmin vorbereiten **
** Gruppe/Benutzer squirrel anlegen**
** Eigentümer/Berechtigungen von squirrelmail anpassen**
** Gruppe/Benutzer rndcbml anlegen**
** Eigentümer/Berechtigungen von roundcubemail anpassen**
** Gruppe/Benutzer rcm11 (Roundcube 1.1.x) anlegen **
** Eigentümer/Berechtigungen von roundcubemail anpassen **
** Berechtigung für share/clamav ändern **
** user/group simscan/simscan einrichten **
** Eigentümer ändern auf clamav für share/clamav **
** suidperl wird erzeugt **
** cgiwrap setuid **
** Berechtigungen für Apache-Logfile-Verzeichnis **
** Berechtigungen für Apache-Conf-Verzeichnis **
** Berechtigungen für UPDATE.INF-Verzeichnis **
** Berechtigungen für awstats-Verzeichnis **
** Verzeichnisse für mod-pagespeed **
** Ausführungsberechtigung zurückgesetzt **
** User/Gruppen für qmail **
** Berechtigungen für /var/qmail/owners/... **

MySQL wird angefahren ...

Konfiguration des Webservers
----------------------------

Hostname [server01.example.net]: Enter

verwende server01.example.net

IP-Adresse [192.168.2.190]: Enter

Bitte geben Sie eine E-mail-Adresse an, an die alle Nachrichten
für den Postmaster und den Superuser (root) zugestellt werden
sollen.

Eingabe : info@example.net
Wiederholung: info@example.net

Wurde anfangs alles richtig konfiguriert, muss hier nur noch mit Enter bestätigt werden. Man kann aber auch einen anderen Hostnamen angeben. Hat der Server mehrere IPs, kann hier auch eine bestimmte IP angegeben werden. Nachdem man die Mailadresse eingegeben und bestätigt hat, fängt das Skript an die Serverumgebung auf dem System zu kompilieren. Hier muss man nicht alles mitlesen, es sollte nur auf mögliche Fehlermeldungen geachtet werden. Aber an und für sich sollte alles problemlos durch laufen.

Interessant wird es dann wieder nach dem Kompilieren. Denn nun kommen einige Zeilen mit generierten Passwörtern, welche man sich notieren sollte. Das MySQL Root Passwort kann unter /opt/pdadmin/etc/mysql_rootpw.conf nachgeschaut werden. Es muss dazu ein wenig in der Konsole gescrollt werden

[...]

Teste Verbindung zur MySQL-Datenbank...Erfolgreich.

Setze root-Passwort fuer MySQL-Datenbankserver auf 'abcdefgh'.

Speichere MySQL root-Passwort in /opt/pdadmin/etc/mysql_rootpw.conf
Setze Passwort fuer Datenbank-Benutzer vadmin: 'abcdefgh'

[...]

phpMyAdmin wird eingerichtet ...
Kanonischer ServerName server01.example.net für phpMyAdmin
Richte MySQL-Benutzer 'abcdefgh' als Control-User ein.
Fertig.

[...]

RoundCube Webmail wird eingerichtet ...
Richte MySQL-Benutzer 'abcdefgh' als DB-User fuer roundcubemail ein.

[...]

Am Ende muss man noch zwei Befehle auszuführen

Bitte führen Sie nun einmalig das script /opt/pdadmin/bin/create_reseller.pl
und anschließend das script //opt/pdadmin/bin/httpd_vhosts.pl aus.

[root@rt pdadmin]# /opt/pdadmin/bin/create_reseller.pl "Ein Reseller"

LoginID: reselebe, Password: abcdefgh

[root@rt pdadmin]# /opt/pdadmin/bin/httpd_vhosts.pl
Writing /usr/local/pd-admin2/conf/httpd.conf

Geschafft! Jetzt besitzt man eine lauffähige pd-admin Instanz und kann sich mit dem Reseller Account anmelden

http://server01.example.net/administrator


Fragen, Anregungen oder Kritik gerne in die Kommentare.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.