Jailkit - это набор утилит, которые могут ограничивать учетные записи пользователей определенным деревом каталогов и конкретными командами. Настроить джейл намного проще, используя утилиты Jailkit, которые делают это «вручную». Тюрьма - это дерево каталогов, которое вы создаете в своей файловой системе; пользователь не может видеть никаких каталогов или файлов, которые находятся за пределами каталога тюрьмы. Пользователь находится в тюрьме в этом каталоге и его подкаталогах.
Скачать и установить:
http://olivier.sessink.nl/jailkit/index.html#download
VERSION=2.20 # from November 2018
cd /tmp
wget https://olivier.sessink.nl/jailkit/jailkit-$VERSION.tar.gz
tar -zxvf jailkit-$VERSION.tar.gz
cd jailkit-$VERSION/
./configure
make
su -
make install
Настройка тюрьмы
Теперь пришло время настроить каталог тюрьмы. Заключенные в тюрьму пользователи увидят этот каталог как корневой каталог сервера. Я решил использовать / home / jail:
mkdir /home/jail
chown root:root /home/jail
jk_init можно использовать для быстрого создания тюрьмы с несколькими файлами или каталогами, необходимыми для конкретной задачи или профиля (нажмите на нее и прочитайте полную информацию).
jk_init -v /home/jail basicshell
jk_init -v /home/jail netutils
jk_init -v /home/jail ssh
jk_init -v /home/jail jk_lsh
Добавить пользователя
Добавьте нового пользователя с домашним каталогом и оболочкой bash и установите пароль:
useradd -d /home/jailtest -m jailtest -s /bin/bash
passwd jailtest
Теперь пришло время посадить этого пользователя в тюрьму
используйте следующую команду:
jk_jailuser -m -j /home/jail jailtest
Вы /etc/passwd
должны содержать что-то вроде этого сейчас:
jailtest:x:1001:1001::/home/jail/./home/jailtest:/usr/sbin/jk_chrootsh
Включить Bash
Используя jk_cp, библиотеки bash копируются в тюрьму:
jk_cp -v -f /home/jail /bin/bash
редактировать /home/jail/etc/passwd
замените эту строку:
jailtest:x:1001:1001::test:/usr/sbin/jk_lsh
с этим:
jailtest:x:1001:1001::/home/jailtest:/bin/bash
Обслуживание
С помощью jk_update
обновлений в реальной системе можно обновлять в тюрьме.
Пробный прогон покажет, что происходит:
jk_update -j /home/jail -d
Без аргумента -d выполняется реальное обновление. Больше операций обслуживания можно найти здесь.
(В случае, если /home/jail/opt
отсутствует, создайте его mkdir -p /home/jail/opt/
и запустить jk_update -j /home/jail
снова)
Предоставить доступ к другим каталогам
Вы можете смонтировать специальные папки, к которым теперь может обратиться пользователь тюрьмы. Например:
mount --bind /media/$USER/Data/ /home/jail/home/jailtest/test/
Помощь принята
http://olivier.sessink.nl/jailkit/howtos_chroot_shell.html
http://olivier.sessink.nl/jailkit/index.html#intro (очень хорошая помощь)
Этот тоже
Это было проверено и проверено, работает должным образом