#!/bin/sh # usr/share/examples/etc/make.conf JAILNAME="bind.loxley.se" JAILIP="192.168.0.10" JAILDIR=/home/jail/$JAILNAME JAILSSH="no" if [ -d $JAILDIR ]; then echo "$JAILDIR exists! Exiting." exit 1 fi # Move in jail make template mv /etc/make.conf /etc/make.conf.bak mv /etc/make.conf.jail /etc/make.conf # Let's first make some directories mkdir -p $JAILDIR/dev mkdir -p $JAILDIR/etc mkdir -p $JAILDIR/usr/tmp mkdir -p $JAILDIR/usr/ports chmod 777 $JAILDIR/usr/tmp cd /usr/src/ # You can replace the below with make installworld if you've built your # world previously make installworld DESTDIR=$JAILDIR cd /usr/src/etc make distribution DESTDIR=$JAILDIR NO_OPENSSH=YES NO_OPENSSL=YES cd $JAILDIR # At this point we'll mount devfs, and then hide the unneeded devs mount_devfs devfs $JAILDIR/dev #devfs -m $JAILDIR/dev rule -s 4 applyset # We wanna install something also so mount src and ports mount_nullfs /usr/ports $JAILDIR/usr/ports mount_nullfs /usr/src $JAILDIR/usr/src # Create a null kernel ln -s dev/null kernel # Quell warnings about fstab touch $JAILDIR/etc/fstab # Create resolv.conf touch $JAILDIR/etc/resolv.conf echo "search loxley.se" >> $JAILDIR/etc/resolv.conf echo "nameserver 192.168.0.1" >> $JAILDIR/etc/resolv.conf # Set up rc.conf in jail touch $JAILDIR/etc/rc.conf echo "hostname=\"$JAILNAME\"" >> $JAILDIR/etc/rc.conf echo "ifconfig_em0=\"inet $JAILIP netmask 255.255.255.255\"" >> $JAILDIR/etc/rc.conf echo "defaultrouter=\"192.168.0.1\"" >> $JAILDIR/etc/rc.conf echo "clear_tmp_enable=\"YES\"" >> $JAILDIR/etc/rc.conf echo "syslogd_flags=\"-ss\"" >> $JAILDIR/etc/rc.conf echo "rpcbind_enable=\"NO\"" >> $JAILDIR/etc/rc.conf # Same as sysctl -w kern.securelevel=3 #kern_securelevel_enable="YES" #kern_securelevel="3" # CMOS clock is already managed by the host cat $JAILDIR/etc/crontab | grep -v adjkerntz > $JAILDIR/etc/crontab.new mv -f $JAILDIR/etc/crontab.new $JAILDIR/etc/crontab # For fetch #cp /usr/lib/libssl.so.4 $JAILDIR/usr/lib/ #cp /lib/libcrypto.so.4 $JAILDIR/lib/ # Needed libs for SSH if [ $JAILSSH = "yes" ]; then cp /usr/lib/libgssapi.so.8 $JAILDIR/usr/lib/ cp /usr/lib/libkrb5.so.8 $JAILDIR/usr/lib/ cp /usr/lib/libasn1.so.8 $JAILDIR/usr/lib/ cp /usr/lib/libroken.so.8 $JAILDIR/usr/lib/ fi mv /etc/make.conf /etc/make.conf.jail mv /etc/make.conf.bak /etc/make.conf