Der Perfekt Server - Debian Squeeze (Debian 6.0) mit BIND und Courier [ISPConfig 3]

Original Autor: Author: Falko Timme [Englischer Post]

Übersetzung + Modifiziert: Xcantion (Deutsch)

Dieses Tutorial zeigt, wie man einen Debian Squeeze (Debian 6.0) Server aufsetzt, für ISPConfig 3 vorbereitet und wie man ISPConfig 3 installiert.

ISPConfig 3 ist ein Webhosting-Bedienungspanel, das Dir erlaubt, folgende Services über einen Webbrowser zu steuern:Apache Webserver, Postfix Mailserver, MySQL, MyDNS Nameserver, PureFTPd, SpamAssassin, ClamAV, und viele mehr.

Dieses Tutorial verwendet Courier IMAP bzw. Courier-pop3.

Seit der ISPConfig Version 3.0.2.1 ist es möglich Dovecot alternativ zu verwenden.

Dieses Setup funktioniert nicht für ISPConfig 2! Es ist ausschließlich für ISPConfig 3 !

Ich gebe keine Garantie, das es bei Dir genauso funktioniert!

1 Anforderungen

Um dieses System zu installieren, wirst Du folgendes benötigen:

2 Vorbemerkung

In dieser Anleitung benutze ich den Host-Namen server1.example.com mit der IP Adresse 192.168.0.100 und der Gateway 192.168.0.1. Diese Angaben können bei Dir anders sein, bitte achte darauf dass sie gegebenenfalls angepasst werden.

3 Das Basissystem

Lege die Debian Squeeze Netzwerk Instalaltions-CD ein und boote von der CD. Wähle Install

(das startet den textbasierten Installer – wenn Du eine graphische Oberfläche bevorzugst, wähle Graphical install):

bild
Wähle Deine Sprache aus:

bild
Wähle Deinen Standort aus:

bild
bild
bild
Wähle ein Tastatur-Layout:

bild
Der Installer überprüft die Installations-CD, Deine Hardware, und konfiguriert anschließend das Netzwerk per DHCP, wenn es einen DHCP- Server im Netzwerk gibt:

bild
bild
Gib den Hostnamen ein. In diesem Beispiel heisst mein System server1.example.com, also gebe ich server1 ein:

bild
Gib den Domain-Namen an. In diesem Beispiel ist es example.com:

bild
Anschließend geben wir ein Passwort für den User Root ein:


Zum bestätigen des Passworts geben wir das gleiche Passwort noch einmal ein:


Jetzt erstellen wir einen "normalen" Benutzer "Administrator" mit dem namen "administrator". Benutzt nicht den namen admin den dieser ist Reserviert in Debian Squeeze.





Nun musst Du Deine Festplatte partitionieren. Der Einfachheit halber werde ich eine grosse Partition erstellen (mit dem Mount-Punkt /) und eine kleine

Tauschpartition, daher wähle ich Guided – use entire disk aus. Selbstverständlich kannst Du die Partition beliebig erstellen und auch LVM benutzen.

bild
Wähle die Festplatte aus, die partitioniert werden soll:

bild
Dann wähle das Partitionsschema aus. Wie bereits gesagt, wähle ich die einfache Variante All files in one partition (recommended for new users)- Du kannst jedoch auch etwas anderes auswählen:

bild
Hiernach wähle Finish partitioning and write changes to disk:

bild
Wähle Yes aus, wenn Du gefragt wirst Write changes to disks?:

bild
Hiernach werden Deine Partitionen erstellt und formatiert:

bild
Nun ist das Basissystem installiert:

bild
Als Nächstes musst Du apt konfigurieren. Da wir die Debian Squeeze Netzwerk Installations-CD nutzen, die nur eine kleine Anzahl von Paketen bereit hält, müssen wir einen Netzwerk-Mirror benutzen.

Wähle das Mirror aus, das Du benutzen möchtest, üblicherweise das wo Dein Debian Squeeze System herkommt:

bild
Dann wähle ein Mirror aus (z.B. ftp2.de.debian.org):

bild
Wenn Du keinen HTTP Proxy benutzt, lass das folgende Feld leer und klick auf Continue:

bild
Apt aktualisiert nun die Paket-Datenbank:

bild
Du kannst die Umfrage zur Paket-Nutzung übergehen, indem Du auf No klickst:

bild
Wir brauchen zwar einen Webserver, DNS-Sserver, Mailserver, und eine MySQL Datenbank, nichtsdestotrotz wähle ich nichts davon aus, da ich volle Kontrolle über das System haben möchte. Wir werden die Pakete natürlich später manuell installieren. Daher wähle Standard system und klick Continue:

bild
Die benötigten Pakete wurden heruntergeladen und auf Dein System installiert:

bild
bild
Wenn Du gefragt wirst Install the GRUB boot loader to the master boot record, wähle bitte Yes aus:

bild
Die Basissysteminstallation ist nun beendet. Nimm die Debian Squeeze Netzwerk Installations-CD raus und klick auf Continue um das System neu zu starten:

bild
Weiter zu den nächsten Schritten …

4 SSH-Server installieren

Debian Squeeze installiert nicht standardmässig OpenSSH, daher müssen wir es selbst machen. Gib ein:

apt-get install ssh openssh-server
Ab sofort kannst Du einen SSH-Client wie PuTTY benutzen und Dich für die restlichen Anleitungsschritte von Deinem Rechner aus auf Deinem Debian Squeeze Server einloggen.

5 vim-nox installieren (optional)

Ich werde vi als Texteditor in dieser Anleitung benutzen. Das standardmässige vi Programm hat einige Macken auf Debian und Ubuntu und um diese zu beheben installieren wir vim-nox:

apt-get install vim-nox
oder alternativ

apt-get install nano
(Das brauchst Du natürlich nicht, wenn Du einen anderen Texteditor wie joe oder nao benutzt.)

6 Netzwerk konfigurieren

Da der Debian Lenny Installer das System so konfiguriert hat, dass es die Netzwerkeinstellungen per DHCP bekommt, müssen wir das ändern, da ein Server eine statische IP-Adresse benötigt. Editiere /etc/network/interfaces und passe es nach Deinen Bedürfnissen an (in diesem Beispiel nutze ich die IP-Adresse 192.168.0.100). Bitte beachte dass ich allow-hotplug eth0 mit auto eth0 ersetze; ansonsten kann man das Netztwerk nicht neu starten und müsste das gesamte System neu starten):

vi /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface #allow-hotplug eth0 #iface eth0 inet dhcp auto eth0 iface eth0 inet static address 192.168.0.100 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1
Dann starte das Netzwerk neu:

/etc/init.d/networking restart
Bitte editiere /etc/hosts. Es sollte folgendermassen aussehen:

vi /etc/hosts
127.0.0.1       localhost.localdomain   localhost
192.168.0.100 server1.example.com server1 # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters
Gib ein

echo server1.example.com > /etc/hostname /etc/init.d/hostname.sh start
Danach gib ein

hostname hostname -f
Beide sollten server1.example.com anzeigen.

7 Debian Installation aktualisieren

Nun Überprüfen wie unsere Sources.list um zu sehen ob auch wirklich alle Repositories vorhanden sind.

Dafür editieren wir die /etc/apt/sources.list

vi /etc/apt/sources.list
deb http://ftp.de.debian.org/debian/ squeeze main
deb-src http://ftp.de.debian.org/debian/ squeeze main deb http://security.debian.org/ squeeze/updates main deb-src http://security.debian.org/ squeeze/updates main deb http://ftp.de.debian.org/debian/ squeeze-updates main deb-src http://ftp.de.debian.org/debian/ squeeze-updates main deb http://packages.dotdeb.org stable all deb-src http://packages.dotdeb.org stable all
Gib ein

apt-get update
um die apt Paket-Datenbank zu aktualisieren und

apt-get upgrade
um die neuesten Updates zu installieren, falls es welche gibt.

Ändern der Default Shell

/bin/sh ist ein symbolischer link zu /bin/dash, wir benötigen /bin/bash, nicht /bin/dash. Um dies zu bewerkstelligen geben wir folgendes ein:

dpkg-reconfigure dash
Use dash as the default system shell (/bin/sh)?
Hier wählen wir No aus

8 Systemuhr synchronisieren

Es ist eine gute Idee, die Systemuhr mit NTP(network time protocol)Server über das Internet zu synchronisieren.

Gib einfach:

apt-get install ntp ntpdate
und Deine Systemzeit wird immer mit ntp synchronisiert.

9 Installieren von Postfix, Courier, Saslauthd, MySQL, phpMyAdmin, rkhunter, binutils

Wir können Postfix, Courier, Saslauthd, MySQL, phpMyAdmin, rkhunter, binutils mit einem einzigen Befehl installieren:

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 rkhunter binutils sudo
Folgende Fragen werden uns gestellt:
General type of mail configuration: Internet SiteSystem mail name: server1.example.comNew password for the MySQL "root" user: yourrootsqlpasswordRepeat password for the MySQL "root" user: yourrootsqlpasswordCreate directories for web-based administration? NoSSL certificate required Ok
MySQL soll auf alle Oberflächen laufen, nicht nur auf localhost, daher editieren wir /etc/mysql/my.cnf und kommentieren die Zeile bind-address = 127.0.0.1 aus:

vi /etc/mysql/my.cnf
[...]
# Instead of skip-networking the default is now to listen only on # localhost which is more compatible and is not less secure. #bind-address = 127.0.0.1 [...]
Dann starten wir MySQL neu:

/etc/init.d/mysql restart
Nun kontrolliere, dass das Netzwerk aktiv ist. Starte

netstat -tap | grep mysql
Die Ausgabe sollte wie hier ausschauen:
server1:~# netstat -tap | grep mysql     tcp        0      0 *:mysql                 *:*                     LISTEN      6612/mysqld     server1:~#
Während der Installation der SSL Zertifikate für IMAP-SSL und POP-SSL werden diese mit dem hostnamen localhost erstellt. Um dies zu ändern und den korrekten hostnamen (server1.example.com) einzutragen erstellen wir manuell neue Zertifikate.

Als erstes löschen wir die alten Zertifikate

cd /etc/courier
rm -f /etc/courier/imapd.pem
rm -f /etc/courier/pop3d.pem

... jetzt modifizieren wir zwei Dateien ind ersetzten CN=localhost mit CN=server1.example.com (natürlich könnt Ihr auch weitere Werte anpassen):

vi /etc/courier/imapd.cnf
[...]
CN=server1.example.com [...]
vi /etc/courier/pop3d.cnf
[...]
CN=server1.example.com [...]
Nun erstellen wir die neuen Zertifikate

mkimapdcert
mkpop3dcert

... und starten Courier-IMAP-SSL und Courier-POP3-SSL neu:

/etc/init.d/courier-imap-ssl restart
/etc/init.d/courier-pop-ssl restart

10.) Installiere Amavisd-new, Spamassassin und Clamav

Wir können Amavisd-new, Spamassassin and Clamav mit einem einzigen Befehl installieren:

apt-get install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl
ISPConfig 3 setup benutzt amavisd welches die SpamAssassin filter library intern nutzt, so können wir ruhig SpamAssassin stopen um ein bisschen mehr RAM übrig zu haben:

/etc/init.d/spamassassin stop
update-rc.d -f spamassassin remove

11.) Installiere apache2, PHP5, phpmyadmin, better fastCGI, suexec, Pear and mcrypt

Wir können apache2, PHP5, phpmyadmin, better fastCGI, suexec, Pear and mcrypt mit einem einzigen Befehl installieren:

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 phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libruby libapache2-mod-ruby
Du wirst folgende Frage sehen bei PHPMyAdmin:
Web server to reconfigure automatically: apache2 Configure database for phpmyadmin with dbconfig-common? No
Starte folgenden Befehl um die Apache module suexec, rewrite, ssl, actions, und include zu aktivieren:

a2enmod suexec rewrite ssl actions include Wenn Ihr Webdav benutzen wollt solltet Ihr noch folgendes aktivieren
a2enmod dav_fs dav auth_digest
Anschließend starte Apache neu:

/etc/init.d/apache2 restart

12.) Installieren von PureFTPd und Quota

PureFTPd und quota können mit folgendem Befehl installiert werden:

apt-get install pure-ftpd-common pure-ftpd-mysql quota quotatool
Optional aktiviere wir TLS

echo 1 > /etc/pure-ftpd/conf/TLS
Nun erstellen wir den passenden Ordner

mkdir -p /etc/ssl/private/
Jetzt generieren wir das Zertifikat

openssl req -x509 -nodes -newkey rsa:1024 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem
Auch hier werden uns wieder ein paar fragen gestellt:
Country Name (2 letter code) [AU]: Geben Sie hier Ihr Land ein (z.B., "DE").
State or Province Name (full name) [Some-State]: Locality Name (eg, city) []: Organization Name (eg, company) [Internet Widgits Pty Ltd]: Organizational Unit Name (eg, section) []: Common Name (eg, YOUR name) []: Email Address []:
Jetzt nur noch die passenden rechte setzten

chmod 600 /etc/ssl/private/pure-ftpd.pem
Bearbeiten der Datei /etc/default/pure-ftpd-common.

vi /etc/default/pure-ftpd-common
… und wechsele den Startmodus von inetd zu standalone und setze VIRTUALCHROOT=true:
[...]
STANDALONE_OR_INETD=standalone [...] VIRTUALCHROOT=true [...]
Editiere die Datei /etc/inetd.conf um inetd davor zu schützen ftp zu starten: vi /etc/inetd.conf Kommentiere die Zeile, welche mit ftp stream tcp beginnt raus:

vi /etc/inetd.conf
[...]
#:STANDARD: These are standard services. #ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/pure-ftpd-wrapper [...]
Anschließend starte inetd neu:

/etc/init.d/openbsd-inetd restart
dann starte PureFTPd:

/etc/init.d/pure-ftpd-mysql start
Jetzt bearbeiten wir noch die /etc/fstab. Meine sieht so aus (Ich habe folgendes hinzugefügt ,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 zu der Partition mit dem mount point / ):

vi /etc/fstab
# /etc/fstab: static file system information.
# # Use 'blkid' to print the universally unique identifier for a # device; this may be used with UUID= as a more robust way to name devices # that works even if disks are added and removed. See fstab(5). # # proc /proc proc defaults 0 0 # / was on /dev/sda1 during installation UUID=92bceda2-5ae4-4e3a-8748-b14da48fb297 / ext3 errors=remount-ro,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0 1 # swap was on /dev/sda5 during installation UUID=e24b3e9e-095c-4b49-af27-6363a4b7d094 none swap sw 0 0 /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0
Jetzt aktivieren wir quota:

mount -o remount /
danach

quotacheck -avugm
Da dies einen kleinen moment dauert empfehle ich in dieser Zeit ein Kaffee aufzusetzten. Anschließend führen wir noch folgendes aus:

quotaon -avug

13.) Installiere BIND DNS Server

Dies kann wieder in einer Zeile ausgeführt werden

apt-get install bind9 dnsutils

14.) Installation von Vlogger, Webalizer und AWstats

Vlogger und Webalizer und AWstats können wie folgt installiert werden:

apt-get install vlogger webalizer awstats
Jetzt öffnen wir die Datei /etc/cron.d/awstats:

vi /etc/cron.d/awstats
hier Kommentieren wir beide Cron Jobs aus:
#*/10 * * * * www-data [ -x /usr/share/awstats/tools/update.sh ] && /usr/share/awstats/tools/update.sh
# Generate static reports: #10 03 * * * www-data [ -x /usr/share/awstats/tools/buildstatic.sh ] && /usr/share/awstats/tools/buildstatic.sh

15.) Installiere Jailkit

Jailkit muss nur installiert werden wenn du chroot SSH benutzer. Es kann wie folgt installiert werden (wichtig: Jailkit muss vor ISPConfig installiert werden- es kann nicht anschließend installiert werden!):

apt-get install build-essential autoconf automake1.9 libtool flex bison debhelper cd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.14.tar.gz
tar xvfz jailkit-2.14.tar.gz
cd jailkit-2.14
./debian/rules binary
cd ..
dpkg -i jailkit_2.14-1_*.deb
rm -rf jailkit-2.14*

16 Installieren von fail2ban

Um Fail2ban zu Installieren brauchen wir nur folgendes Kommando:

apt-get install fail2ban
Damit fail2ban ebenfalls PureFTPd, SASL und Courier überwacht erstellen wir eine neue Datei /etc/fail2ban/jail.local:

vi /etc/fail2ban/jail.local
[pureftpd]
enabled = true port = ftp filter = pureftpd logpath = /var/log/syslog maxretry = 3 [sasl] enabled = true port = smtp filter = sasl logpath = /var/log/mail.log maxretry = 5 [courierpop3] enabled = true port = pop3 filter = courierpop3 logpath = /var/log/mail.log maxretry = 5 [courierpop3s] enabled = true port = pop3s filter = courierpop3s logpath = /var/log/mail.log maxretry = 5 [courierimap] enabled = true port = imap2 filter = courierimap logpath = /var/log/mail.log maxretry = 5 [courierimaps] enabled = true port = imaps filter = courierimaps logpath = /var/log/mail.log maxretry = 5
Nun brauchen wir noch 5 Filter Dateien:

vi /etc/fail2ban/filter.d/pureftpd.conf
[Definition]
failregex = .*pure-ftpd: (.*@) [WARNING] Authentication failed for user.* ignoreregex =
vi /etc/fail2ban/filter.d/courierpop3.conf
# Fail2Ban configuration file
# # $Revision: 100 $ # [Definition] # Option: failregex # Notes.: regex to match the password failures messages in the logfile. The # host must be matched by a group named "host". The tag "" can # be used for standard IP/hostname matching and is only an alias for # (?:::f{4,6}:)?(?PS+) # Values: TEXT # failregex = pop3d: LOGIN FAILED.*ip=[.*:] # Option: ignoreregex # Notes.: regex to ignore. If this regex matches, the line is ignored. # Values: TEXT # ignoreregex =
vi /etc/fail2ban/filter.d/courierpop3s.conf
# Fail2Ban configuration file
# # $Revision: 100 $ # [Definition] # Option: failregex # Notes.: regex to match the password failures messages in the logfile. The # host must be matched by a group named "host". The tag "" can # be used for standard IP/hostname matching and is only an alias for # (?:::f{4,6}:)?(?PS+) # Values: TEXT # failregex = pop3d-ssl: LOGIN FAILED.*ip=[.*:] # Option: ignoreregex # Notes.: regex to ignore. If this regex matches, the line is ignored. # Values: TEXT # ignoreregex =
vi /etc/fail2ban/filter.d/courierimap.conf
# Fail2Ban configuration file
# # $Revision: 100 $ # [Definition] # Option: failregex # Notes.: regex to match the password failures messages in the logfile. The # host must be matched by a group named "host". The tag "" can # be used for standard IP/hostname matching and is only an alias for # (?:::f{4,6}:)?(?PS+) # Values: TEXT # failregex = imapd: LOGIN FAILED.*ip=[.*:] # Option: ignoreregex # Notes.: regex to ignore. If this regex matches, the line is ignored. # Values: TEXT # ignoreregex =
vi /etc/fail2ban/filter.d/courierimaps.conf
# Fail2Ban configuration file
# # $Revision: 100 $ # [Definition] # Option: failregex # Notes.: regex to match the password failures messages in the logfile. The # host must be matched by a group named "host". The tag "" can # be used for standard IP/hostname matching and is only an alias for # (?:::f{4,6}:)?(?PS+) # Values: TEXT # failregex = imapd-ssl: LOGIN FAILED.*ip=[.*:] # Option: ignoreregex # Notes.: regex to ignore. If this regex matches, the line is ignored. # Values: TEXT # ignoreregex =
Jetzt Restarten wir fail2ban:

/etc/init.d/fail2ban restart

17 Installieren von SquirrelMail

Um SquirrelMail webmail client zu installieren, starte

apt-get install squirrelmail
dann erstelle den folgenden Symlink für Squirrelmail und einen für PHPmyAdmin.

ln -s /usr/share/squirrelmail/ /var/www/webmail
ln -s /usr/share/phpmyadmin/ /var/www/phpmyadmin

…und konfiguriere SquirrelMail:

squirrelmail-configure
Wir müssen  SquirrelMail sagen, das wir Courier-IMAP/-POP3 benutzen:
SquirrelMail Configuration : Read: config.php (1.4.0) ——————————————————— Main Menu – 1. Organization Preferences 2. Server Settings 3. Folder Defaults 4. General Options 5. Themes 6. Address Books 7. Message of the Day (MOTD) 8. Plugins 9. Database 10. Languages D. Set pre-defined settings for specific IMAP servers C Turn color on S Save data Q Quit Gib ein: D SquirrelMail Configuration : Read: config.php ——————————————————— While we have been building SquirrelMail, we have discovered some preferences that work better with some servers that don't work so well with others. If you select your IMAP server, this option will set some pre-defined settings for that server. Please note that you will still need to go through and make sure everything is correct. This does not change everything. There are only a few settings that this will change. Please select your IMAP server: bincimap = Binc IMAP server courier = Courier IMAP server cyrus = Cyrus IMAP server dovecot = Dovecot Secure IMAP server exchange = Microsoft Exchange IMAP server hmailserver = hMailServer macosx = Mac OS X Mailserver mercury32 = Mercury/32 uw = University of Washington's IMAP server quit = Do not change anything Gib ein: courier imap_server_type = courier default_folder_prefix = INBOX. trash_folder = Trash sent_folder = Sent draft_folder = Drafts show_prefix_option = false default_sub_of_inbox = false show_contain_subfolders_option = false optional_delimiter = . delete_folder = true Press any key to continue… Taste drücken SquirrelMail Configuration : Read: config.php (1.4.0) ——————————————————— Main Menu – 1. Organization Preferences 2. Server Settings 3. Folder Defaults 4. General Options 5. Themes 6. Address Books 7. Message of the Day (MOTD) 8. Plugins 9. Database 10. Languages D. Set pre-defined settings for specific IMAP servers C Turn color on S Save data Q Quit Eingabe: S SquirrelMail Configuration : Read: config.php (1.4.0) ——————————————————— Main Menu – 1. Organization Preferences 2. Server Settings 3. Folder Defaults 4. General Options 5. Themes 6. Address Books 7. Message of the Day (MOTD) 8. Plugins 9. Database 10. Languages D. Set pre-defined settings for specific IMAP servers C Turn color on S Save data Q Quit Eingabe>>
Anschließend kannst du SquirrelMail unter http://server1.example.com/webmail oder http://192.168.0.100/webmail erreichen:

bild

18 Installation von ISPConfig 3

ISPConfig 3 kann von der letzten erschienen Version installiert werden (.tar.gz).

Um es von der letzten erschienen Released zu erstellen, gehe wie folgt vor:

cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install/

Wir starten nun den Installer von ISPConfig3:

php -q install.php
>> Initial configuration
Operating System: Debian 6.0 (Squeeze/Sid) or compatible Following will be a few questions for primary configuration so be careful. Default values are in [brackets] and can be accepted with . Tap in "quit" (without the quotes) to stop the installer. Select language (en,de) [en]: de Installation mode (standard,expert) [standard]: Full qualified hostname (FQDN) of the server, eg server1.domain.tld [testispconfig.cneurope.de]: MySQL server hostname [localhost]: MySQL root username [root]: MySQL root password []: supergeheimespasswort MySQL database to create [dbispconfig]: MySQL charset [utf8]: Generating a 2048 bit RSA private key< ……………………………………+++ ……………..+++ writing new private key to 'smtpd.key' ----- You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:DE State or Province Name (full name) [Some-State]: Locality Name (eg, city) []: Organization Name (eg, company) [Internet Widgits Pty Ltd]: Organizational Unit Name (eg, section) []: Common Name (eg, YOUR name) []:testispconfig.cneurope.de Email Address []:chef@vomserver.de Configuring Jailkit Configuring SASL Configuring PAM Configuring Dovecot Configuring Spamassassin Configuring Amavisd Configuring Getmail Configuring Pureftpd Configuring BIND Configuring Apache Configuring vlogger Configuring Apps vhost Configuring Firewall Installing ISPConfig ISPConfig Port [8080]: Configuring DBServer Installing Crontab no crontab for root no crontab for getmail Restarting services … Stopping MySQL database server: mysqld. Starting MySQL database server: mysqld. Checking for corrupt, not cleanly closed and upgrade needing tables.. Stopping Postfix Mail Transport Agent: postfix. Starting Postfix Mail Transport Agent: postfix. Stopping SASL Authentication Daemon: saslauthd. Starting SASL Authentication Daemon: saslauthd. Stopping amavisd: amavisd-new. head: cannot open `/etc/mailname' for reading: No such file or directory Starting amavisd: amavisd-new. Stopping ClamAV daemon: clamd. Starting ClamAV daemon: clamd. Restarting IMAP/POP3 mail server: dovecot. Restarting web server: apache2 … waiting .. Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -b -E -p 4000:4020 -u 1000 -A -O clf:/var/log/pure-ftpd/transfer.log -Y 1 -H -B Installation completed. server1:/tmp/ispconfig3_install/install#
Der Installer konfiguriert alle untergeordneten Services, sodass es keiner manuellen Konfiguration bedarf.

Anschließend kannst du ISPConfig 3 unter http://server1.example.com:8080/ oder http://192.168.0.100:8080/ erreichen. Logge dich mit dem Benutzernamen admin und dem Passwort admin (Du solltest den Standard nach dem ersten log-in ändern) ein:

bild
bild
Das System kann nun benutzt werden.

19. Hinweiss für Debian unter OpenVz

a)
VPSID=101
for CAP in CHOWN DAC_READ_SEARCH SETGID SETUID NET_BIND_SERVICE NET_ADMIN SYS_CHROOT SYS_NICE CHOWN DAC_READ_SEARCH SETGID SETUID NET_BIND_SERVICE NET_ADMIN SYS_CHROOT SYS_NICE do vzctl set $VPSID --capability ${CAP}:on --save done

b) Pureftp

PureFTPD greift auf gewisse Schnittstellen zurück, die der virtuellen Maschine nicht vom Standard aus gegeben sind.

Hierzu muss im Host die Config der virtuellen Maschine bearbeitet bzw. ergänzt werden.

Die Configs liegen unter /etc/vz/config
vi /etc/config
CAPABILITY="CHOWN:on DAC_READ_SEARCH:on SETGID:on SETUID:on NET_BIND_SERVICE:on NET_ADMIN:on SYS_CHROOT:on SYS_NICE:on "

20 Links