User Tools

Site Tools


технология_jail

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
технология_jail [2013/11/26 12:41]
val [Настройка jail]
технология_jail [2015/08/26 10:22]
val
Line 1: Line 1:
 ====== Технология jail ====== ====== Технология jail ======
  
-[[http://​ru.wikipedia.org/​wiki/​FreeBSD_Jail]]+  * [[http://​ru.wikipedia.org/​wiki/​FreeBSD_Jail|FreeBSD Jail]] 
 +  * [[http://​www.freebsd.org/​doc/​handbook/​jails-build.html|Creating and Controlling Jails]] 
 +  * [[http://​www.unixfaq.ru/​index.pl?​req=qs&​id=1002|Управление переменными ядра в Jail]]
  
-[[http://​www.freebsd.org/​doc/​handbook/​jails-build.html]]+===== Создание копии системы =====
  
-===== Создание ​"мира" ​====+==== С использованием ​дистрибутива ====
-Инсталлируем исходные тексты системы+
 <​code>​ <​code>​
-[server:​~] ​freebsd-update fetch +mount_cd9660 /dev/cd0 /mnt 
-[server:​~] ​# freebsd-update install+ 
 +# setenv D /​var/​jail/​www 
 + 
 +# mkdir -p $D 
 + 
 +tar -xvf /mnt/usr/freebsd-dist/​base.txz -C $D
 </​code>​ </​code>​
-Следующее действие занимает несколько часов:+ 
 +==== С использованием компиляции и установки "​мира"​ системы ==== 
 + 
 +=== Подготовка исходных текстов === 
 + 
 +  * [[Обновление системы и базового ПО в FreeBSD#​Установка ​исходных текстов]] 
 +  * [[Обновление системы и базового ПО в FreeBSD#​Установка заплаток внутри релиза]] 
 + 
 +=== Сборка "​мира"​ (несколько часов) === 
 <​code>​ <​code>​
 [server:~] # cd /usr/src [server:~] # cd /usr/src
 [server:~] # make buildworld [server:~] # make buildworld
 </​code>​ </​code>​
 +
 +=== Установка копии "​мира"​ (5-7 минут) ===
  
 <​code>​ <​code>​
Line 24: Line 41:
 [server:~] # make distribution DESTDIR=$D [server:~] # make distribution DESTDIR=$D
 </​code>​ </​code>​
 +
 +===== Совместное использование дерева портов =====
 +
 <​code>​ <​code>​
 [server:~] # mount_nullfs /usr/ports/ /​var/​jail/​www/​usr/​ports [server:~] # mount_nullfs /usr/ports/ /​var/​jail/​www/​usr/​ports
Line 29: Line 49:
  
 ===== Запуск jail ===== ===== Запуск jail =====
 +
 +==== FreeBSD10.X ====
 +
 +  * [[http://​therub.org/​2014/​08/​11/​convert-freebsd-jails-from-rc.conf-to-jail.conf/​|Convert FreeBSD 10 Jails from rc.conf to jail.conf]]
 +
 <​code>​ <​code>​
 [server:~] # cat /​etc/​rc.conf [server:~] # cat /​etc/​rc.conf
 +</​code><​code>​
 +...
 +jail_enable="​YES"​
 +jail_list="​www"​
 +</​code><​code>​
 +[server:~] # cat /​etc/​jail.conf
 +</​code><​code>​
 +allow.raw_sockets = 1;
 +exec.clean;
 +exec.system_user = "​root";​
 +exec.jail_user = "​root";​
 +exec.start = "/​bin/​sh /​etc/​rc";​
 +exec.stop = "/​bin/​sh /​etc/​rc.shutdown";​
 +mount.devfs;​
 +allow.set_hostname = 0;
 +allow.sysvipc = 0;
 +
 +www {
 +        host.hostname = "​www.corpX.un";​
 +        path = "/​var/​jail/​www";​
 +        interface = "​em0";​
 +        ip4.addr = "​192.168.X.20";​
 +        exec.consolelog = "/​var/​log/​jail_www_console.log";​
 +}
 +</​code><​code>​
 +[server:~] # service jail start www
 +</​code>​
 +
 +==== FreeBSD8.X ====
 +<​code>​
 +[server:~] # cat /​etc/​rc.conf
 +</​code><​code>​
 ... ...
 jail_enable="​YES"​ jail_enable="​YES"​
Line 40: Line 97:
 jail_www_devfs_enable="​YES"​ jail_www_devfs_enable="​YES"​
 jail_www_devfs_ruleset="​devfsrules_jail"​ jail_www_devfs_ruleset="​devfsrules_jail"​
 +</​code><​code>​
 [server:~] # sysctl security.jail.allow_raw_sockets=1 [server:~] # sysctl security.jail.allow_raw_sockets=1
  
Line 57: Line 114:
 ===== Настройка jail ===== ===== Настройка jail =====
 <​code>​ <​code>​
 +www# hostname
 +
 www# cat /​etc/​rc.conf www# cat /​etc/​rc.conf
 </​code><​code>​ </​code><​code>​
-hostname=www.corpX.un 
 sshd_enable=yes sshd_enable=yes
 </​code><​code>​ </​code><​code>​
технология_jail.txt · Last modified: 2016/04/22 14:02 by val