newjail 1.1 KB

123456789101112131415161718192021222324252627
  1. #!/bin/sh
  2. # Create the jail with dhcp on
  3. iocage create -r 12.2-RELEASE --name $1 dhcp=on
  4. # Install avahi and .local DNS
  5. iocage exec -f $1 "pkg install -y avahi-app dbus nss_mdns && sysrc dbus_enable="YES" && sysrc avahi_daemon_enable="YES""
  6. iocage exec $1 sed -i -e '/^hosts/s/dns/mdns dns/' /etc/nsswitch.conf
  7. iocage exec $1 "service dbus start && service avahi-daemon start"
  8. # Copy our jail public key to allow login
  9. mkdir /zroot/iocage/jails/$1/root/root/.ssh
  10. cp .ssh/jails.pub /zroot/iocage/jails/$1/root/root/.ssh/authorized_keys
  11. # Allow root login and start SSH
  12. iocage exec $1 sed -i -e '/^#PermitRootLogin/s/#Permit/Permit/' /etc/ssh/sshd_config
  13. iocage exec $1 sed -i -e '/^PermitRootLogin/s/no/yes/' /etc/ssh/sshd_config
  14. iocage exec $1 sysrc sshd_enable="YES"
  15. iocage exec $1 service sshd start
  16. # Add our new IP address to our unbound local zone
  17. ip_address=$(iocage exec $1 ifconfig epair0b | grep 'inet ' | awk '{print $2}')
  18. echo 'local-data: "'$1'.local IN A '$ip_address'"' >> /zroot/iocage/jails/dns/root/var/unbound/local.zones
  19. iocage exec dns service unbound restart