Aller au contenu

Création thick jail

1. Préparation environnement jail

  • UFS : Création répertoire

    mkdir -p /usr/local/jails/containers/test_jail
    

  • Extraction userland

    tar -xf /usr/local/jails/releases/14.0-RELEASE-base.txz -C /usr/local/jails/containers/test_jail --unlink
    

  • Ajout fichier pour le fuseau horaire et le serveur DNS

    cp /etc/resolv.conf /usr/local/jails/containers/test_jail/etc/resolv.conf
    cp /etc/localtime /usr/local/jails/containers/test_jail/etc/localtime
    

  • Application des correctifs

    freebsd-update -b /usr/local/jails/containers/test_jail fetch install
    

2. Fichier de configuration jail

La configuration du jail doit être située dans /etc/jail.conf.d avec comme nom de fichier celui du jail. Exemple : /etc/jail.conf.d/test_jail

test_jail {

  # STARTUP/LOGGING
  exec.start = "/bin/sh /etc/rc";
  exec.stop = "/bin/sh /etc/rc.shutdown";
  exec.consolelog = "/var/log/jails/${name}.log";

  # PERMISSIONS
  allow.raw_sockets;
  exec.clean;
  mount.devfs;

  # HOSTNAME/PATH
  host.hostname = "${name}";
  path = "/usr/local/jails/containers/${name}";

  # NETWORK
  interface = vtnet0;
  ip4.addr = 172.0.0.1;

}

3. Démarrage environnement jail

sysrc jail_enable="YES"
service jail start test_jail

4. Exécution commandes

jexec test_jail ifconfig
pkg -j test_jail install vim

6. Connexion

jexec test_jail

6. Arrêt environnement jail

service jail stop test_jail