Der Perfekte Server - Debian Lenny (Debian 5.0) [ISPConfig 3] - 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/interface

 

# 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 Synchronisiere die SystemUhr

Es ist eine Gute Idee, die Systemuhr mit NTP(network time protocol)server über das internet zu syncronisieren.

Mach einfach

apt-get install ntp ntpdate


und deine Systemzeit wird immer mit ntp syncronisiert.

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

Wir können  Postfix, Courier, Saslauthd, MySQL, phpMyAdmin, rkhunter, und 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


Folgende Fragen werden uns gestellt:

New password for the MySQL "root" user: Repeat password for the MySQL "root" user: Create directories for web-based administration? General type of mail configuration: System mail name: SSL certificate required
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, das 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ärend der installation, werden die SSL Zertifikate von IMAP-SSL und POP3-SSL amit dem hostname localhost erstellt. Um diese auf den richtigen Hostnamen anzupassen (server1.example.com in diesem tutorial), lösche die Zertifikate...

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

... und modifiziere die folgenden 2 Dateien; ersetze CN=localhost mit CN=server1.example.com (wenn nötig, kannst du auch andere Werte anpassen):

vi /etc/courier/imapd.cnf

 

[...]
CN=server1.example.com [...]

vi /etc/courier/pop3d.cnf

 

[...]
CN=server1.example.com [...]

dann stelle die Zertifikate wieder her...

mkimapdcert
mkpop3dcert

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

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

21 Kommentar(e)

Zum Posten von Kommentaren bitte

Kommentare

Von: Damian

wichtig zu wissen:

echo "yes" > /etc/pure-ftpd/conf/DisplayDotFiles

PureFTP zeigt dann dem Client alle DotFiles ... (.htaccess usw)


Von: planet_fox

Kann ich nicht ganz nachvollziehn


Von: planet_fox

ok passt, hatte erst eine fehlermeldung


Von: Falcon37

Sei nur kurz angemerkt das MyDNS schon in der Version 1.2.8.27 verfügbar ist, ich würde daher definitiv kein 1.2.8.25 installieren! 1.2.8.27 läuft bei mir gut.


Von: Falcon37

Also der Befehl: "/etc/init.d/openbsd-inetd restart" geht bei mir nicht, ist nicht vorhanden. Aber 100 % korrrekt durchgegangen (mehrmals) woran kann es liegen?


Von: Till

Dann benutzt Ihr einen vserver oder ähnliches der mit einer anderen Grundinstallation von Debian ausgestattet ist. Macht aber nichts, da Ihr ja im Tutorial das sowieso nur deaktivieren müsst. Also was nicht da ist braucht Ihr dann auch nicht deaktivieren :)


Von: Laubie

Die Datei fehlt bei mir auch...


Von: z-mark

6 Netzwerk konfigurieren

im code beispiel (vi /etc/network/interface) fehlt ein s. sollte heissen vi /etc/network/interfaces


Von: Till

Der NTP Server ist in diesem Setup nur dafür gedacht, dass er die Zeit des Servers mit einem externen NTP Server synchronisiert. Einen Port müsstest Du nur freigeben, wenn Du möchtest dass Dein Server auch NTP Dienste an andere Server anbietet da die Firewall ja nur eingehende Verbindungen blockiert aber keine ausgehenden.


Von: Falcon37

Muss man damit NTP löuft nicht den UDP-Port 123 in der Firewall freigeben?


Von: meon

Läuft. Sehr zufrieden, großes Lob und großen Dank.

Interessant wäre die Beschreibung einer Alternativen Config für Testzwecke ohne namensbasierte Vhosts,
mit zugriff auf die Verzeichnisstruktur (nur Zugriff, kein Listing) mittels server.example.com oder 192.168.0.100.

Soll heißen eine ISP-Config config für "ohne Domain" zur Überprüfung der Möglichkeiten einer Umsattelung.
Ebenso interessant für Hobby- & Homehoster mit Dyndns, die sich lange mit ISPconfig rumärgern und dann
oft auf Apache-only basis 1-Site-homehosting betreiben, sich aber hätten die Zeit sparen können
(siehe inzwischen relativ viele Threads in unterschiedlichen Foren).

Für den Zugriff auf User-web's ohne Domainbesitz wäre z.B. die Modifikation der *.vhost-Datei der Userdomain denkbar,
Nachteil jedoch für n-Site-Hosting nicht praktikabel da manuell und manuell mit ISPconfig generell kritisch.
Trotzdem als Beispiel:


AllowOverride None

Order Deny,Allow

# Deny from all

Options -Indexes



Evtl. noch mit der Apache-Config im Rahmen derer eingeschränkter Möglichkeiten experimentieren.

Bin über Input und vor allem intelligentere Lösungen als die beschriebene Dankbar.

MfG
mEon


Von: Till

@meon, ispconfig 3 unterstürtzt ipbased hosting und auch dyndns ist kein Problem. Ich vermute mal Du verwechselst hier ispconfig 3 mit ispconfig 2. Ispconfig 2 ist eine komplett andere Software die unter anderem auch nur namebased vhosts kennt.

In ISPConfig 3 fügst Du einfach soe viele IP Adressen wie Du benötigst in den Server settings hinzu und wählst dann einfach für jede neue Website eine andere IP aus, wenn Du dann über die IP auf den Server zugreifst dann wird die Website ausgeliefert, der Du diese IP zugewiesen hast.


Von: greyhound

Soweit so gut.
Habe den ganzen spass wie beschrieben installiert und es scheint auch alles zu funktionieren, ABER:
irgendwie kann ich nicht von "aussen" meine emails abrufen. Auch funktioniert squirrel nicht so wie erwartet.... es lässt mich gar nicht einloggen.
Da ich ein absoluter noob bin wäre ich für Hinweise wo eventuell der Fehler zu suchen wäre dankbar.


Von: RycoDePsyco

Fehler gefunden, bei
"vi /etc/network/interface" fehlt das s am ende.

vi /etc/network/interfaces


Von: brain-scc

Installation lief flüssig und nun geht es an das Konfigurieren von ISP Config. Die manuell zu installierenden Pakete hatten alle neue Versionen, was sich aber unproblematisch in das Howto integrierte.
Vielen Dank an dieser Stelle für das tadellose Tutorial.


Von: andreea

Super, danke fürs Feedback!


Von: RycoDePsyco

Seite 5 Bereich 12 bei
/etc/init.d/openbsd-inetd restart
bash: /etc/init.d/openbsd-inetd: Datei oder Verzeichnis nicht gefunden

geht nicht, habe Debian 5.

Weis nicht was ich machen soll?


Von: RycoDePsyco

Veraltet bei Punkt 13, auf Seite 5

13 Installiere MyDNS

wget http://heanet.dl.sourceforge.net/sourceforge/mydns-ng/mydns-1.2.8.31.tar.gz
tar xvfz mydns-1.2.8.31.tar.gz

Aktuelle Version ist ...1.2.8.31
Aktuell am 03.01.2011.


Von: andreea

Moin Ryco, frag doch mal im Forum, da kann Dir bestimmt zackig geholfen werden :-)


Von: andreea

Vielen Dank für Dein Feedback! @brain-scc


Von: Laubie

Um WebDav (ab version 3.0.3.2) nutzen zu können müssen die Apache Module a2enmod dav_fs dav auth_digest aktiviert werden.
--> Fehlt in Schritt 11