Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
freebsd:jail [2019/11/05 17:08] alex |
freebsd:jail [2021/11/13 13:32] (текущий) alex |
||
---|---|---|---|
Строка 6: | Строка 6: | ||
mkdir -p /usr/jails/jail_2 | mkdir -p /usr/jails/jail_2 | ||
mkdir -p /usr/jails/jail_3 | mkdir -p /usr/jails/jail_3 | ||
+ | |||
+ | Проверяю, что исходный код актуальный | ||
+ | svnlite info /usr/src | ||
+ | Path: /usr/src | ||
+ | Working Copy Root Path: /usr/src | ||
+ | URL: https://svn.freebsd.org/base/releng/12.0 | ||
+ | Relative URL: ^/releng/12.0 | ||
+ | Repository Root: https://svn.freebsd.org/base | ||
+ | Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f | ||
+ | Revision: 354569 | ||
+ | Node Kind: directory | ||
+ | Schedule: normal | ||
+ | Last Changed Author: gordon | ||
+ | Last Changed Rev: 353915 | ||
+ | Last Changed Date: 2019-10-23 06:25:32 +0300 (ср, 23 окт. 2019) | ||
+ | |||
+ | Если всё в порядке, обновляю исходники и перехожу в каталог с исходниками | ||
+ | svnlite update /usr/src | ||
+ | cd /usr/src | ||
+ | если исходников системы нет ( каталог /usr/src пустой) или при проверке получаю ошибку | ||
+ | svnlite info /usr/src | ||
+ | svn: E155007: '/usr/src' is not a working copy | ||
+ | |||
+ | устанавливаю исходники. Для этого определяю какая версия FreeBSD используется | ||
+ | uname -r | ||
+ | 12.0-RELEASE-p10 | ||
+ | |||
+ | Удаляю из каталога /usr/src/ старые файлы | ||
+ | rm -rf /usr/src/* | ||
+ | |||
+ | Получаю источники | ||
+ | svnlite checkout https://svn.freebsd.org/base/releng/12.0 /usr/src | ||
Создаю клетку | Создаю клетку | ||
cd /usr/src | cd /usr/src | ||
make world DESTDIR=/usr/jails/jail_1 | make world DESTDIR=/usr/jails/jail_1 | ||
- | cd /usr/src/etc | + | ??? проверить эту командуcd /usr/src/etc |
make distribution DESTDIR=/usr/jails/jail_1 | make distribution DESTDIR=/usr/jails/jail_1 | ||
mount -t devfs devfs /usr/jails/jail_1/dev | mount -t devfs devfs /usr/jails/jail_1/dev | ||
Строка 31: | Строка 63: | ||
exec.stop = "/bin/sh /etc/rc.shutdown"; # Команда остановки | exec.stop = "/bin/sh /etc/rc.shutdown"; # Команда остановки | ||
exec.clean; | exec.clean; | ||
+ | | ||
allow.raw_sockets = 1; | allow.raw_sockets = 1; | ||
allow.set_hostname = 0; | allow.set_hostname = 0; | ||
Строка 41: | Строка 73: | ||
| | ||
mount.devfs; #разрешить монтировать devfs к файловой системе клеток | mount.devfs; #разрешить монтировать devfs к файловой системе клеток | ||
- | mount += "dev /usr/jails/jail_1/dev devfs rw,ruleset=$devfs_ruleset"; | + | <del> mount += "dev /usr/jails/jail_1/dev devfs rw,ruleset=$devfs_ruleset";</del> |
mount.procfs; | mount.procfs; | ||
| | ||
Строка 48: | Строка 80: | ||
path = "/usr/jails/jail_1"; #путь до клетки | path = "/usr/jails/jail_1"; #путь до клетки | ||
interface = "alc0"; #интерфейс клетки | interface = "alc0"; #интерфейс клетки | ||
- | ip4.addr = 10.215.130.20/24; #IP адрес клеки | + | ip4.addr = 10.215.130.25/32; #IP адрес клеки |
+ | devfs_ruleset = 6; #какое правило нужно применить при монтирование devfs | ||
} | } | ||
| | ||
Строка 55: | Строка 88: | ||
path = "/usr/jails/jail_2"; | path = "/usr/jails/jail_2"; | ||
interface = "alc0"; | interface = "alc0"; | ||
- | ip4.addr = 10.215.130.21/24; | + | ip4.addr = 10.215.130.21/32; |
} | } | ||
+ | Добавляю алиас | ||
+ | ifconfig bge0 alias 10.215.130.25 netmask 255.255.255.255 | ||
Для запуска всех jail'ов вручную: | Для запуска всех jail'ов вручную: | ||
Строка 133: | Строка 168: | ||
chflags -R noschg /jails | chflags -R noschg /jails | ||
rm -rf /jails/ | rm -rf /jails/ | ||
+ | |||
+ | Для того что бы правила монтирования devfs применялись к клеткам в rc.conf должна быть строка | ||
+ | devfs_load_rulesets="YES" | ||
+ | Основные настройки devfs находятся в /etc/defaults/devfs.rules/, но все изменения нужно вносить в /etc/devfs.rules.\\ | ||
+ | После внесения изменений в файл **/etc/devfs.rules** необходимо выполнить команду | ||
+ | service devfs restart | ||
+ | |||
+ | Пример записи | ||
+ | [devfsrules_jail_3=6] | ||
+ | add include 1 | ||
+ | add include 2 | ||
+ | add path 'cuau*' unhide | ||
+ | |||
+ | Данное правило даёт доступ с com портам из клетки. | ||
Проверка какие правила devfs применяются для jail | Проверка какие правила devfs применяются для jail | ||
Строка 146: | Строка 195: | ||
https://alexei.bakush.ru/nastroika-jail-vo-freebsd\\ | https://alexei.bakush.ru/nastroika-jail-vo-freebsd\\ | ||
http://linux-bsd-adm.blogspot.com/2014/10/jail-freebsd-10.html\\ | http://linux-bsd-adm.blogspot.com/2014/10/jail-freebsd-10.html\\ | ||
+ | http://linux-bsd-adm.blogspot.com/2014/10/freebsd.html\\ | ||
https://translate.google.ru/translate?hl=ru&sl=en&u=https://www.freebsd.org/doc/handbook/jails-build.html&prev=search\\ | https://translate.google.ru/translate?hl=ru&sl=en&u=https://www.freebsd.org/doc/handbook/jails-build.html&prev=search\\ | ||
https://wiki.lissyara.su/wiki/FreeBSD_%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%9F%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F:_%D0%93%D0%BB%D0%B0%D0%B2%D0%B0_15_Jails_(%D0%9A%D0%BB%D0%B5%D1%82%D0%BA%D0%B8)\\ | https://wiki.lissyara.su/wiki/FreeBSD_%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%9F%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F:_%D0%93%D0%BB%D0%B0%D0%B2%D0%B0_15_Jails_(%D0%9A%D0%BB%D0%B5%D1%82%D0%BA%D0%B8)\\ | ||
Строка 157: | Строка 207: | ||
http://devpit.org/wiki/FreeBSD/Jails\\ | http://devpit.org/wiki/FreeBSD/Jails\\ | ||
http://qaru.site/questions/3213328/freebsd-jail-and-ssh-devtty-no-such-file-or-directory\\ | http://qaru.site/questions/3213328/freebsd-jail-and-ssh-devtty-no-such-file-or-directory\\ | ||
- | https://www.freebsd.org/cgi/man.cgi?query=jail&sektion=8&manpath=freebsd-release-ports | + | https://www.freebsd.org/cgi/man.cgi?query=jail&sektion=8&manpath=freebsd-release-ports\\ |
+ | https://www.freebsd.org/doc/handbook/makeworld.html#updating-src-obtaining-src\\ | ||
+ | https://www.freebsd.org/doc/handbook/makeworld.html\\ | ||
+ | https://www.cyberciti.biz/faq/how-to-configure-a-freebsd-jail-with-vnet-and-zfs\\ | ||
+ | https://www.cyberciti.biz/faq/update-source-tree-at-usr-src-using-svn-on-freebsd\\ | ||
+ | http://freebsdlog.blogspot.com/2012/06/jail.html\\ | ||
+ | https://www.opennet.ru/openforum/vsluhforumID1/85891.html\\ | ||
+ | https://books.google.ru/books?id=6LQYEAAAQBAJ&pg=PA83&lpg=PA83&dq=devfs+rule+-s+4+show&source=bl&ots=bgGIi0NU4I&sig=ACfU3U0PsJGzfERND0WhoqiUAPT9r002fw&hl=ru&sa=X&ved=2ahUKEwijnM_17ZD0AhWHAxAIHRDTAKQQ6AF6BAgVEAM#v=onepage&q=devfs%20rule%20-s%204%20show&f=false |