Der perfekte Server – Debian Lenny (Debian 5.0) [ISPConfig 3] mit Dovecot und Bind - Seite 4

4 SSH-Server installieren

Debian Lenny 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 Lenny 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

(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 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts
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

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.

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 , Dovecot, MySQL, phpMyAdmin, rkhunter, binutils

Wir können  Postfix, Dovecot, MySQL, phpMyAdmin, rkhunter, binutils mit einem einzigen Befehl installieren:
apt-get  install postfix postfix-mysql postfix-doc mysql-client mysql-server openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d
Folgende Fragen werden uns gestellt:
New password for the MySQL “root” user: <– yourrootsqlpassword
Repeat password for the MySQL “root” user: <– yourrootsqlpassword Create directories for web-based administration? <– No General type of mail configuration: <– Internet Site System mail name: <– server1.example.com SSL 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:~#

10.) Installiere Amavisd-new, Spamassassin and 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

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 libopenssl-ruby
Du wirst folgende Frage sehen bei PHPMyAdmin:

Web server to reconfigure automatically: <– apache2

Starte folgenden Befehl um die Apache module suexec, rewrite, ssl, actions, und include zu aktivieren:
a2enmod suexec rewrite ssl actions include
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 TLS
echo 1 > /etc/pure-ftpd/conf/TLS
mkdir -p /etc/ssl/private/ openssl req -x509 -nodes -newkey rsa:1024 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem chmod 600 /etc/ssl/private/pure-ftpd.pem
Editiere die 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:
[...]
#: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

13.) Installiere BIND DNS Server

Dies kann wieder in einer Zeile ausgeführt werden
apt-get install bind9 dnsutils

14.) Installation von Vlogger und Webalizer

Vlogger und webalizer können wie folgt installiert werden:
apt-get install vlogger webalizer

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 -y install build-essential autoconf automake1.9 libtool flex bison debhelper

cd /tmp

wget http://olivier.sessink.nl/jailkit/jailkit-2.11.tar.gz

tar xvfz jailkit-2.11.tar.gz

cd jailkit-2.11

./debian/rules binary

cd ..

dpkg -i jailkit_2.11-1_*.deb

rm -rf jailkit-2.11*


16 Installieren von fail2ban

das ist  optional aber vorgeschlagen, weil die ISPConfig kontrolle versucht den log anzuzeigen: siehe mehr hier (http://www.howtoforge.com/fail2ban_debian_etch )

apt-get install fail2ban

0 Kommentar(e)

Zum Posten von Kommentaren bitte