Debian 6.0 vServer mit ISPConfig installieren
In diesem Tutorial möchte ich euch zeigen, wie man einen vServer unter Debian 6 Squeeze mit ISPConfig und ohne Virenscanner und Anti-Spammtools installiert. Die Tools werden absichtlich nicht in diesem Tutorial berücksichtigt, da sich dieses Tutorial auch an vServer richtet, die im Allgemeinen wenig RAM zur Verfügung haben.
Bevor wir loslegen, sollte noch erwähnt werden, dass gewisse Kenntnisse in der Linux sowie Server Administration vorausgesetzt werden müssen. Denn es bringt nichts, nur zu kopieren und nachher nicht zu wissen, wie man denn den vServer jetzt noch aufsetzt.
Ihr wollt Debian 5 Lenny installieren? Im Zuge der Veröffentlichung von Debian 6 Squeeze habe ich dieses Tutorial für Debian 6 umgeschrieben, verbessert und erneuert. Ich empfehle euch ebenfalls Debian 6, anstatt 5 zu installieren.
Was brauchen wir?!
- Grundkenntnisse in der Linux bzw. Server Administration
- SSH Root Zugang sowie den SSH Client Putty
- Frisch Installierter unkonfigurierter vServer
- Zeit, geduld und Kaffee
Los geht’s:
Als Erstes, fügen wir die Updatequellen hinzu und Updaten unser System.
echo "# squeeze packages." >> /etc/apt/sources.list echo "deb ftp://ftp2.de.debian.org/debian/ squeeze main contrib non-free" >> /etc/apt/sources.list echo "deb http://security.debian.org/ squeeze/updates main contrib non-free" >> /etc/apt/sources.list echo "# source packages." >> /etc/apt/sources.list echo "deb-src ftp://ftp2.de.debian.org/debian/ squeeze main contrib non-free" >> /etc/apt/sources.list echo "deb-src http://security.debian.org/ squeeze/updates main contrib non-free" >> /etc/apt/sources.list apt-get update && apt-get dist-upgrade
Jetzt richten die Hostdatei passend ein. Hier fügen wir unter der Ersten, noch eine zweite Zeile, mit eurer IP und dem Hostnamen ein. „Server“ kann hierbei jeweils frei ersetzt werden. Example.com bitte durch eure Domain ersetzen.
Sollten bei euch in der letzten Zeile noch einmal eure IP und ein Hostname stehen, dann löscht diese Bitte, da wir Sie nicht brauchen. Die Hostdatei sollte nun wie folgt aussehen:
nano /etc/hosts/ # IP-Address Full-Qualified-Hostname Short-Hostname 127.0.0.1 localhost.localdomain localhost 12.345.678.90 server.example.com server # special IPv6 addresses ::1 localhost ipv6-localhost ipv6-loopback fe00::0 ipv6-localnet ff00::0 ipv6-mcastprefix ff02::1 ipv6-allnodes ff02::2 ipv6-allrouters ff02::3 ipv6-allhosts
Als Nächstes, setzen wir noch unseren Hostnamen und Updaten dann kurz unser System. Nachfolgend Installieren wir dann “Postfix, Courier, Saslauthd, MySQL, phpMyAdmin und binutils”:
echo server.example.com > /etc/hostname /etc/init.d/hostname.sh start apt-get update && apt-get upgrade apt-get install postfix postfix-mysql postfix-doc mysql-client mysql-server courier-authdaemon courier-authlib-mysql courier-pop courier-pop-ssl courier-imap courier-imap-ssl libsasl2-2 libsasl2-modules libsasl2-modules-sql sasl2-bin libpam-mysql openssl courier-maildrop getmail4 binutils
Es werden dabei die folgenden Fragen gestellt:
New password for the MySQL “root” user: MySQL Root Passwort eingeben, Tab und Enter.
Repeat password for the MySQL “root” user: Passwort erneut eingeben, Tab und Enter.
Create directories for web-based administration?: No, Tab und Enter.
General type of mail configuration: Internet Site, Tab und Enter.
System mail name: www.example.com
SSL certificate required: Ok
Wir müssen Postfix jetzt mitteilen, dass wir den Spamfilter amavis nicht installieren werden. Sonst ist der Empfang von E-Mails später nicht möglich. Wir ändern dazu in der main.cf einfach einige Zeilen ab, in dem wir einfach vor den Zeilen eine Raute setzen. Anschließend starten wir Postfix noch kurz neu.
nano /etc/postfix/main.cf #content_filter = amavis:[127.0.0.1]:10024 #receive_override_options = no_address_mappings /etc/init.d/postfix restart
Als Nächstes lassen wir unsere MySQL Konfiguration einmal durch den durchaus nützlichen MySQL Tuner überprüfen. Einfach MySQL Login Daten eingeben, und schauen was MySQL Tuner zur Verbessrung vorschlägt. Dies dann ggf. in der my.cnf übernehmen.
wget http://mysqltuner.com/mysqltuner.pl chmod +x mysqltuner.pl ./mysqltuner.pl
nano /etc/mysql/my.cnf
Alles erledigt? Dann starten wir jetzt erst mal MySQL neu. Vielleicht hat es euch ja etwas gebracht.
/etc/init.d/mysql restart
Als Nächstes müssen wir die SSL-Zertifikate von IMAP-SSL und POP3-SSL auf unseren Hostnamen anpassen. Dazu löschen wir erst mal die alten Zertifikate und ändern die Zwei Dateien: “imapd.cnf” und pop3d.cnf”. Die Zertifikate erstellen wir im Anschluss neu und starten Courier-IMAP-SSL und Courier-POP3-SSL neu.
cd /etc/courier rm -f /etc/courier/imapd.pem rm -f /etc/courier/pop3d.pem nano /etc/courier/imapd.cnf CN=server.example.com nano /etc/courier/pop3d.cnf CN=server.example.com mkimapdcert mkpop3dcert /etc/init.d/courier-imap-ssl restart /etc/init.d/courier-pop-ssl restart
Jetzt installieren wir noch kurz einige Grundlegende dinge und anschließend daran dann: Apache2, PHP, FCGI, suExec, Pear, und mcrypt gleich hinterher.
Die Abfrage „Web server to reconfigure automatically“ bitte mit: apache2 beantworten.
apt-get install spamassassin zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl
apt-get install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp
a2enmod suexec rewrite ssl actions include deflate
Wir installieren nun die MySQL Verwaltungssoftware PHPMyAdmin:
cd /var/www/ wget <a href="http://mesh.dl.sourceforge.net/project/phpmyadmin/phpMyAdmin/3.3.5/phpMyAdmin-3.3.5-all-languages.tar.bz2">http://mesh.dl.sourceforge.net/project/phpmyadmin/phpMyAdmin/3.3.5/phpMyAdmin-3.3.5-all-languages.tar.bz2</a> tar jfx phpMyAdmin-3.*-all-languages.tar.bz2 mkdir phpMyAdmin cp -R phpMyAdmin-3.*/* phpMyAdmin/ rm -R phpMyAdmin-3.*
Wir ändern als Nächstes die php.ini-Datei ab und setzen dort einige Einstellungen wie z.B die Zeitzone. Bitte beachtet, dass bei “memory_limit” immer der Wert eures Arbeitsspeichers eingetragen werden sollte. Im Anschluss daran starten wir den Apache noch kurz neu.
nano /etc/php5/apache2/php.ini
date.timezone = "Europe/Berlin" post_max_size = 450M memory_limit = 200M upload_max_filesize = 450M
/etc/init.d/apache2 restart
Jetzt installieren wir PureFTPd und Quota. Dabei werden auch wieder einige Fragen gestellt.
apt-get install pure-ftpd-common pure-ftpd-mysql quota quotatool
Standalone or Inetd = Standalone wählen Virtuelle Verzeichnisse (Virtual CH Root) = Yes wählen
Nun bearbeiten wir noch die inet.d-Konfiguration und fügen dort unter „#:STANDARD: These are standard services.
„folgende Zeile ein:
nano /etc/inetd.conf
#ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/pure-ftpd-wrapper
Die Konfiguraton wieder mit Strg-O speichern.
Da PureFTPd standardmäßig .htaccess Dateien nicht anzeigt müssen wir noch folgende Option aktivieren. Dann werden auch die .htaccess Dateien richtig angezeigt. Danach starten wir den inetd Service sowie auch PureFTPd kurz neu.
echo "yes" > /etc/pure-ftpd/conf/DisplayDotFiles /etc/init.d/pure-ftpd-mysql restart /etc/init.d/openbsd-inetd restart /etc/init.d/pure-ftpd-mysql start</pre> Wir bearbeiten jetzt als Nächstes die Datei /etc/fstab. 1nano /etc/fstab
Und fügen hier einfach Folgendes ein:
# /etc/fstab: static file system information. # # proc /proc proc defaults 0 0 /dev/sda1 / ext3 errors=remount-ro,usrquota,grpquota 0 1 /dev/sda5 none swap sw 0 0 /dev/hda /media/cdrom0 udf,iso9660 user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0
..Und speichern wieder mit Strg + O.
Als Nächstes werden wir kurz einen Kleinen reboot durchführen. Nach ca. 5 Minuten ist der vServer neu gestartet, dann könnt ihr einfach mit einem Rechtsklick auf das Fenster von “Putty” eine neue Session starten.
reboot
Bevor wir nun ISPConfig installieren, schmeißen wir noch schnell die Tools “Vlogger, webalizer und fail2ban” auf unsere Kiste. Es werden wieder einige Abfragen gestellt, die aber im Allgemeinen nicht sehr relevant sind. Diese können dann einfach mit Ok bestätigt werden.
apt-get install vlogger webalizer fail2ban
Jetzt machen wir uns an die installation von ISPConfig. Wichtig ist hier, dass ihr bei „Select Language“ DE eingibt. Während der installation werdet ihr außerdem nach eurem MySQL Root Passwort gefragt, und ihr müsst einige Daten wie z.B. euren Wohnort, Land, Domain und E-Mail-Adresse eingeben. Ich gehe aber mal davon ihr wisst, was dort einzugeben ist.
Den Rest kann man ruhig immer mit Enter bestätigen.
cd /tmp wget <a href="http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz">http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz</a> tar xvzf ISPConfig-3-stable.tar.gz cd ispconfig3_install/install php -q install.php
So, geschafft! ISPConfig ist installiert. Jetzt löschen wir noch eben die temporären Installationsdateien.
cd /tmp rm ISPConfig-3-stable.tar.gz rm -rf ispconfig3_install/
Zum Schluss synchronisieren wir noch die Zeit auf unserem vServer, setzen einen ersten Cronjob und Installieren das nützliche Tool htop welches die vServer Auslastung anzeigen kann bzw. als Taskmanager dient und eventuell leidige Prozesse zu beenden.
apt-get install ntp update htop
Die Zeit sollte jetzt aktualisiert sein und htop ist nun mit dem Befehl “htop” verfügbar. Jetzt setzen wir wie oben schon erwähnt unseren ersten Cronjob. Der folgende Befehl sagt, dass nun die Crontab Datei zum Editieren geöffnet werden soll.
crontab -e
Wir wollen nun, dass unser vServer am 1.1 jedes neuen Jahres, die Zeit automatisch aktualisiert. Dazu fügen wir folgende Zeile in die Datei ein:
0 1 1 1 * /usr/sbin/ntpdate zeit.fu-berlin.de
Die 01 steht dabei für 1:00 Uhr und die 11 steht für 1.1. nachfolgend einfach nur der Befehl, der ausgeführt werden soll. In unserem falle also die Aktualisierung der Zeit. Ihr seht, eigentlich sehr einfach oder?
So, das war’s! Wir sind schon am ende der Installation angelangt. Ihr könnt euch jetzt in eurem ISPConfig mit dem Benutzernamen: admin und dem Passwort: admin einloggen. Bitte denkt aber daran, das Passwort so schnell wie möglich zu, ändern.
Da wir mydns nicht installiert haben, ISPConfig dies aber als Standard Service ansieht, wird euch der Monitor ein rotes Bild ausspucken. Diesen Hinweis kann man aber vergessen. Dieser hat keine besondere Bedeutung. Wenn es einem dennoch stört, der kann den Service wie folgt abstellen: System —> Server Services, dort auf euren Servernamen klicken und dann dort das Häckchen bei “DNS-Server” entfernen.
Wenn ihr Lob, Kritik oder Anregungen habt, würde ich mich freuen, wenn Ihr mir das mitteilt!

suexec muss auch noch gestartet werden, sonst gibts Fehlermeldungen
ansonsten gutes Tut
und zwar nachdem apache2 und deren mods installiert wurden folgendes ausführen:
a2enmod suexec rewrite ssl actions include
damit werden alle nötigen apache-mods gestartet
Danke für den Hinweis! War so weit aber eigentlich schon drin. Habe den Befehl aber trotzdem noch mach extra in eine Zeile geschrieben.
Habe alles hier ordentlich durchgearbeitet aber eine Fehlermeldung bringt mir ISPconfig
und zwar der DNS Server ist offline.
Ist das korrekt so oder muss der auch online sein
Danke für die Hilfe
Hi Fritschie,
Nein die Meldung ist korrekt so. Ich habe im Tutorial vergessen zu erwähnen, das der DNS-Server nicht mitinstalliert wird.
Also Danke erst einmal für das Tut.

Da fühlt man sich direkt in die Steinzeit versetzt.
Ich habe mich sogar dabei erwischt wie ich die Datasette starten wollte.
Was hier nicht steht ist wie man ispconfig Installiert.
Das wird im installaton´s Ordner mit: php -q install.php gestartet.
Der installation´s Ordner ist das Verzeichniss wo man die zigfach komprimierte Datei entpackt hat.
mfg.
Manni
Hallo Manni,
danke für dein Feedback. Das Tutorial ist ja zwischenzeitlich auch schon was älter.
Ich werde es demnächst aber Updaten bzw. ein neues Tutorial veröffentlichen. Dieses Mal auf Basis von Lighttpd.
[...] Diese Anleitung gehört zum Content von weltiso.de [...]
DANKE!
Ohne diessen Beitrag hätte ich es Niemals geschafft, Das Panel zu installieren..