Der perfekte Server – Debian Etch (4.0)

9 DNS Server

Den Befehl ausführen:

apt-get install bind9

Aus Sicherheitsgründen möchte ich nun BIND chrooted ausführen, deshalb sind folgende Schritte notwendig:

/etc/init.d/bind9 stop

Nun editiert man die Datei /etc/default/bind9, sodass der Dienst als als unpriviligierter Benutzer bind in /var/lib/named chrooted ausgeführt wird. Nun modifiziert man die Zeile: OPTIONS=“-u bind“ in: OPTIONS=“-u bind -t /var/lib/named“:

vi /etc/default/bind9

OPTIONS="-u bind -t /var/lib/named"
# Set RESOLVCONF=no to not run resolvconf
RESOLVCONF=yes

Nun erstellt man die nötigen Verzeichnisse unter /var/lib:

mkdir -p /var/lib/named/etc
mkdir /var/lib/named/dev
mkdir -p /var/lib/named/var/cache/bind
mkdir -p /var/lib/named/var/run/bind/run

Dann verschiebt man das Konfigurationsverzeichnis von /etc nach /var/lib/named/etc:

mv /etc/bind /var/lib/named/etc

Nun erstellt man einen Symlink (symbolischen Link) zum neuen Konfigurationsverzeichnis vom alten Speicherplatz aus (um Probleme zu vermeiden, wenn BIND später aktualisiert wird):

ln -s /var/lib/named/etc/bind /etc/bind

Jetzt führt man Null- und Random Device aus und stellt dann die Verzeichnisberechtigungen wieder her::

mknod /var/lib/named/dev/null c 1 3
mknod /var/lib/named/dev/random c 1 8
chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random
chown -R bind:bind /var/lib/named/var/*
chown -R bind:bind /var/lib/named/etc/bind

Jetzt muss man /etc/default/syslogd modifizieren, damit wichtige Benachrichtigungen von der System-Log-Datei gemeldet werden: Man modifiziert die Zeile SYSLOGD=““ in SYSLOGD=“-a /var/lib/named/dev/log“:

vi /etc/default/syslogd

#
# Top configuration file for syslogd
#

#
# Full documentation of possible arguments are found in the manpage
# syslogd(8).
#

#
# For remote UDP logging use SYSLOGD="-r"
#
SYSLOGD="-a /var/lib/named/dev/log"

Jetzt den Logging-Daemon neustarten:

/etc/init.d/sysklogd restart

Jetzt BIND starten und /var/log/syslog auf Fehler überprüfen:

/etc/init.d/bind9 start

10 MySQL

Um MySQL zu installieren muss man Folgendes ausführen:

apt-get install mysql-server mysql-client libmysqlclient15-dev

Da MySQL alle Verbindungen empfangen soll – nicht nur den Localhost – muss man /etc/mysql/my.cnf editieren und die Zeile bind-address = 127.0.0.1 auskommentieren:

vi /etc/mysql/my.cnf

[...]
#bind-address           = 127.0.0.1
[...]

Nun MySQL neu starten:

/etc/init.d/mysql restart

Jetzt überprüft man, ob das Netzwerk aktiv ist, und führt dann diesen Befehl aus:

netstat -tap

Nun sollte eine solche Zeile erscheinen:

tcp 0 0 *:mysql *:* LISTEN 3281/mysqld

Nun:

mysqladmin -u root password yourrootsqlpassword
mysqladmin -h server1.example.com -u root password yourrootsqlpassword

ausfüheren und für den Benutzer-Root ein Passwort festlegen (sonst hätte jeder freien Zutritt zur MySQL-Datenbank!).

Das könnte dich auch interessieren …