Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
Для предотвращения доступа к любым файлам за пределами каталога пользователя необходимо использование chroot. Это позволяет довести уровень безопасности до приемлемого при беспарольном входе в систему (что возможно, поскольку пользователь backup не является суперпользователем и даже не входит в группу wheel). Поэтому следующий шаг настройки – вызов chroot при входе пользователя на хост backup. При вызове необходимо задать каталог, который станет новым корневым каталогом и выполняемую команду, которая в данном случае станет новой оболочкой пользователя.
В chroot-окружении можно разместить всю систему, а можно только необходимый набор файлов. По соображениям безопасности (наличие файлов suid в chroot-окружении крайне нежелательно) и экономии свободного места предпочтительнее второй вариант.
Самым минимальным набором является /bin/sh, но нам понадобятся еще /bin/cat, /bin/sleep и /usr/bin/gzip. Возможно, не совсем правильный, но вполне работоспособный вариант – скопировать их из имеющейся системы. При последующем обновлении системы придется обновлять и эти файлы, так что лучше всего создать скрипт, который проделает все сам. Скрипт, приведенный в качестве примера (назовем его makechroot.sh), нужно выполнять из под root на хосте backup, задав в качестве параметра имя пользователя backup.
#!/bin/sh
username=$1
if [ "${username}" = "" ]; then
echo "Usage: $_ username"
exit 1
fi
homedir=`pw usershow $username | awk -F: '{print $9}'`
if [ ! -d ${homedir} ]; then
echo "Error: no such dir ${homedir}"
exit 1
fi
cd ${homedir}
mkdir -p bin usr/bin