wiki instituteSuche

ChRoot


(c)Fabian Portmann - www.chupame.ch
(c)GFDL - www.gnu.org/licenses/fdl.html


chroot Jail BIND
================

BIND 9 in einem chroot Jail (step-by-step)
---------------------------
Verzeichniss erstellen, indem nachher das Jail von named sein soll.
root# mkdir /var/named/


Ein User und eine Gruppe erstellen, unter dem named später laufen wird.
root# groupadd -g 53 named
root# useradd  -u 53 named -g named -c "chroot Jail BIND user" -d /var/named/jail -m named


Die nötigen Unterverzeichnisse anlegen und danach ins homedir von named wechseln.
root# mkdir -p /var/named/jail/var/{cache/bind,run/bind/run} 
root# mkdir -p /var/named/jail/{dev,etc/bind}
root# cd ~named 


Alle Konfigurations- und von named benötigte Dateien ins Jail kopieren.
root# cp -Rav /etc/bind etc/ 
root# cp -av /etc/localtime etc/ 
root# cp -av /dev/{null,random} dev/ 


Rechte richtig setzen.
root# chown root.root . 
root# chmod 0755 . 
root# chown named.named var/run/bind/run 
root# chown -R named.named etc/bind/*  #Je nach Distribuiton und gewählten
					 						 #Namen kann dies variieren.
root# chmod 640 etc/bind/*  			 #Auch die Verzeichnisse.


Nun wird named gestartet.
Es wird nur noch die /etc/bind/named.conf und rndc.key benötigt.
root# /usr/sbin/named -u named -t /var/named/jail -c /etc/bind/named.conf


#Läuft named?
root# ps axcu | grep named


#Noch ein Blick in das logfile(kann auch syslog sein).
root# tail -n 20 /var/log/daemon.log



Shellscript für Debian testing
------------------------------
#!/bin/bash

mkdir /var/named/ &&  groupadd -g 53 named &&  useradd  -u 53 named -g named -c "chroot Jail BIND user" -d /var/named/jail -m named &&  mkdir -p /var/named/jail/var/{cache/bind,run/bind/run} &&  mkdir -p /var/named/jail/{dev,etc/bind} &&  cd ~named &&  cp -Rav /etc/bind etc/ &&  cp -av /etc/localtime etc/ &&  cp -av /dev/{null,random} dev/ &&  chown root.root . &&  chmod 0755 . &&  chown named.named var/run/bind/run &&  chown -R named.named etc/bind/* &&  chmod 640 etc/bind/* &&  /usr/sbin/named -u named -t /var/named/jail -c /etc/bind/named.conf
ps axcu | grep named;
sleep 3;
tail -n 20 /var/log/daemon.log
# EOF

-- MatthiasWeiss - 03 Dec 2004

03.12.2004 · MatthiasWeiss · r1