Hört sich immer so einfach an, mal eben von einem virtuellen Server auf einen Root Server umziehen. Als erstes stellt sich die Frage, macht man alles selber, oder möchte man eine Server Administration Software verwenden. Alles selber machen, heisst aber auch sich viel mit dem System beschäftigen, ständig auf Zuruf Mailadressen einrichten und Webs pflegen. Auf den neuen Rootserver sind nur ein paar Freunde, aber dennoch kommt da einiges zusammen. Ausprobiert habe ich Syscp und ISPConfig. Beides sind Expertensysteme, von der Oberfläche sind sie ähnlich, beide haben Sachen in der Konfiguration, die sich nur durch ausprobieren und Nachfragen erschliessen. Das mächtigere von beiden ist ISPConfig, mir persönlich gefällt die Integration von Mail mit Antispam und Virenscanner ganz gut. ISPConfig kann über eine Update Schnittstelle mit Zusatzpaketen erweitert werden, diese Schnittstelle ist leicht zu beherrschen und lädt zum bauen eigener Erweiterungen ein. Obwohl ich eigentlich nur einen kleinen Server zu betreuen habe, habe ich mich für ISPConfig entschieden, weil es vom Start weg zum Beispiel konsequent auf SSL abgestellt ist. Mein Hauptärgernis des alten Rootservers war nämlich, das ich den Webmail Client nicht mit https erreichen konnte. Mal davon abgesehen war der Vserver in die Jahre gekommen (suse 9.3 mit Plesk 7.54) und ich hätte gerne Debian mit einem Opensource Server Administration tool. Im Anschluß an diese Einführung folgt meine Installation und die Punkte, die es zu beachten gab. Vielleicht interessierts ja jemanden.
[Update 05.01.2007] (Original 13.12.2007)
Die Installation in Stichpunkten
Bei Hetzner einen DS3000 bestellt und einen Monat nach Lieferung auf den neuen Dual Core DS3000 upgedatet. (Jetzt war zwar wieder eine Setup Gebühr fällig, aber da müssen wir durch.) Der ist nun seit Anfang Dezember online. Ich habe ihn via Hetzner Script mit Softraid installiert und einen frischen Kernel 2.6.23.9 gebacken. Lilo habe ich gelassen, was solls.
Nun stehen 2 Gig Ram und ein Dual Core Prozessor zur Verfügung, um euch zu dienen 
Da es in den Messages Meckermeldungen mit Clocksource tsc unstable gab, die wohl auch zu einem verzögerten boot führten, habe ich kurzerhand im Config des Kernel die ganze CPU Freguenzregelung abgeschaltet. Das war aus Energieersparnisgründen sicher nicht sehr klug, aber effizient. So sollen später ein bis zwei Gameserver dort laufen, dann ist da eh immer Dampf.
TODO:Btw: warum finde ich keine Temperatur Informationen im ACPI ? und Sensoren scheint es trotz i²C Module auch nicht zu geben?
Nachdem die Kiste also mit Raid1 soweit lief und ich vorher mit Syscp Erfahrung gesammelt hatte, wollte ich nun gleich mal ISPConfig ausprobieren. Im wesentlichen ging ich nach dem Kochbuch ab Seite 3 vor. Selbstverständlich ist mittlerweile root Login per ssh verboten, durch setzen der Option PermitRootLogin = no in der sshd.conf, aber muß ich das erwähnen? Die Root Partition ist 10 Gig gross, sie beinhaltet auch die /var /tmp Files. Vielleicht hätte ich eine Volumegroup anlegen sollen... Das Verzeichnis /var/www ist eine eigene Partition mit haufenweise Platz, dort sollte so schnell nichts voll laufen.
Eine Haupt-Ip, die demnächst nicht für irgendwelche Webdienste benutzt werden soll, sondern nur 443 für den Admin Zugang zu ISPConfig. Zusätzlich ist ein Subnetz beantragt und eingerichtet worden, nun sind noch 5 weitere IP verfügbar.
Eine dieser IPs werden die meisten Normal User benutzen, eine habe ich für Zockertown reserviert. Meine email Domain kommt mit auf die Haupt IP
Zusätzliche installierte Pakete.
- fail2ban Debian Paket, überwacht z.B. Anzahl der der nicht erfolgreichen Loginversuche
und sperrt dann per IPtables die IP für gewisse Zeit. Aktivierte Jails: ssh, proftp,apache, postfixsmtp, couriersmtp, sasl. Meine verwendete /etc/fail2ban/jail.conf
# Default action to take: ban & send an e-mail with whois report
# and relevant log lines to the destemail.
action = iptables[name=%(__name__)s, port=%(port)s]
mail-whois-lines[name=%(__name__)s, dest=%(destemail)s, logpath=%(logpath)s]
[ssh]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
#
# HTTP servers
#
[apache]
enabled = true
port = http
filter = apache-auth
#logpath = /var/log/apache*/*access.log
logpath = /var/log/httpd/ispconfig_access_log
maxretry = 4
[proftpd]
enabled = true
port = ftp
filter = proftpd
logpath = /var/log/proftpd/proftpd.log
maxretry = 3
#
# Mail servers
#
[postfix]
enabled = true
port = smtp
filter = postfix
logpath = /var/log/mail.log
[couriersmtp]
enabled = true
port = smtp
filter = couriersmtp
logpath = /var/log/mail.log
[sasl]
enabled = true
port = smtp
filter = sasl
logpath = /var/log/mail.log
- rkhunter Debian Paket, überprüft auf bekannte Sicherheitslöcher und rootkits. mailt Ergebnis
- Apache2 Debian Paket, Produktionswebserver, per Kochbuch sämtliche PHP Funktionalität disabled. Wird pro Web einzeln eingeschaltet.
- Quota Debian Paket, konfiguriert nach Kochbuch.
bei quotacheck -avugm fehlt -f - proftp Debian Paket, konfiguriert nach Kochbuch.
- postfix Debian Paket, konfiguriert nach Kochbuch.
- Procmail Debian Paket, konfiguriert nach Kochbuch.
- Courier Debian Paket, konfiguriert nach Kochbuch.
- bind Debian Paket, konfiguriert nach Kochbuch.
- postgrey Debian Paket, erweitert Postfix um Greylisting, erfordert einfache Anpassung in der mail.cf muss ich noch dokumentieren.
- MySQL Debian Paket, konfiguriert nach Kochbuch ausser dem Remote Zugang, weil der momentan eh unnötig ist. Das Script tuning-primer.sh ist auch bereits installiert, liefert aber natürlich noch blödsin, weil mit den wenigen Datenbanken bisher ist's eh egal.
- OpenSSL Debian Paket, konfiguriert nach Kochbuch. Kleines shellscript gemacht, um neue Zertifikate zu erzeugen, muss noch dokumentiert werden.
- ISPConfig 2.2.18 Die Server Administrations Software. Beinhaltet einige weitere Pakete.
Installation nach dieser Anleitung Mit ISPConfig installierte Pakete sind: SpamAssissin(ohne Perl-Modul, wird gesondert im Kochbuch behandelt), clamav und noch kleine Tools wie zip und co.
Eindeutiger Vorteil, nach erfolgreicher Installation ist man sicher, das SpamAssissin und clamav auch auf seinem System laufen. Ich hatte da auf dem alten vserver so meine Probleme damit, mal abgesehen von den belegten Resourcen. - ISPConfig Modifikation:
Da der default crypt Algorithmus in linux nur die ersten 8 chars eines Passwortes benutzt, habe ich die Zeile $go_info["server"]["password_hash"] = 'crypt'; in:
$go_info["server"]["password_hash"] = 'md5'; im File /home/admispconfig/ispconfig/lib/config.inc.php geändert. - awstats ISPConfig Package, erweiterte Webuser Statistiken auf eine sicherere Art als die default awstats Methode. Die Statistiken werden pro Web einzeln erzeugt.
Erweitert mit GeoIp Plugin, muss noch dokumentiert werden. - Roundcube ISPConfig Package, ziemlich modernes Webmail Paket, wird viel Wirbel drum gemacht. Auf unserem Rootie als Alternative zum ebenfalls installierten Paket
- Telaen ISPConfig Package, simples, aber funktionales Webmail Paket, das das Standard Paket UebiMiau ersetzt. Mein Favourit
- SquirrelMail ein weiteres Webmailtool, Prinzipiel auch nich schlecht, leider hat es bei meinem Mailaccount Probleme, noch nicht näher untersucht6, zwei funktierende reichen ja vorerst aus.
- serverstats installiert. Nützliche, leicht handlebare Serverstatistik, basieren auf den berühmen RRD Tools und php5. Interessierte können Login erhalten. Ermöglicht frühzeitiges erkennen von Engpässen und möglichen Infiltrierungen, weil durch die Langzeitgraphen Änderungen leicht ins Auge fallen. Macht auch optisch einiges her

- mailgraph Debian Paket installiert, läuft bei mir mit suexec. Nachdem ich mir das suexec.log angesehen habe, habe ich auch gefubdeb, warum es geklemmt hat. Interessierte können Login erhalten. Ermöglicht frühzeitiges erkennen
von Engpässen und möglichen Infiltrierungen, weil durch die
Langzeitgraphen Änderungen leicht ins Auge fallen. Macht auch optisch
einiges her

Sehr interessant zu sehen, wie hoch der Anteil der nicht zugestellten Mails ist. - duplicity Debian Paket als Backuplösung. Basierend auf ein kleines Script aus dem Hetzner
Wiki habe ich das individuelle Script ockerbackup gestrickt. Muss noch dokumentiert werden. Ist auch noch verbesserungsbedürftig. Und nicht vergessen gpg Schlüssel sicher aufbewahren, nicht nur auf dem Server, sondern auch mindestens noch lokal.
- teamspeak2 installiert. Stellt einen VOIP Server für Clans zur Verfügung. Ich habe das default Startscript unverändert gelassen und starte es als root mit einem init.d Script.
Wird ständig aktualisiert
Beginn der Doku: 16.12.2007
Erweiterung Zug um Zug, größere Themen werden eigenen Beitrag erhalten, aber als Äbersicht, was ich installiert habe, soll dieser Artikel dienen
Ps: Dieser Artikel erschien noch im alten Web, mittlerweile ist Zockertown umgezogen
Um den Beitrag etwas mit Bildchen aufzulockern, habe ich hier die aktuelle Auslastung während meiner Experimente mit dem Backupscript.
So bunt ist es sonst nämlich nie 
Hast Du vielleicht eine Ahnung, wie man bei ISPConfig abstellen kann, dass der datenbankname schon vorgegeben ist?
Ich habe es glaube ich während der Installation gesehen. Find es jetzt aber auch nicht mehr
Aber man kann jede beliebige DB einbinden, wenn man das will, ist dann aber nicht mehr über ISPConfig administrierbar.
Der Beitrag ist jetzt zwar schon uralt, aber da die Kommentarfunktion noch funktioniert: stunnel lautet die Lösung, um SSL auch für störrische Konfigurationen zum Laufen zu bringen: SSL am Apachen deaktivieren und über stunnel von Port 443 auf 80 am lokalen Host tunneln lassen. Und schon läuft Webmail mit SSL...