Личный кабинет    
Назад К началу Вперед Карта сайта Телефонные коды стран и городов Мира Анализатор тарифов Служб IP-Телефонии и Рейтинг

Разделы
Введение
Литература
Операторы
Оборудование
Анализатор
Сотрудничество
Печать карт
Новости
Опросник
Коды
Справка
Работа
Каталог
Хостинг
Личный кабинет

Реклама

Perl для IP-Телефонии (38 – сервер с правами суперпользователя, часть 12)

предыдущая часть ««»» следующая часть

Применение функции chroot() в программе психотерапевтического сервера

Введение поддержки функции chroot () в программе психотерапевтического сервера является довольно несложным, но вначале необходимо проанализировать, какие дополнительные соображения с этим связаны. Также данная функция не будет лишней и для других серверов, например, на котором размещается информацияю о схемах охраны газопроводов . Вряд ли следует эксплуатировать весь сервер в среде chroot (), поскольку после нормального завершения работы он больше не сможет получить доступ к своему файлу PID и удалить его. Необходимо пе­рейти в ограниченный каталог до начала взаимодействия с удаленным пользователем. Это лучше всего сделать в главном цикле дочернего процесса непосредственно перед тем, как этот процесс откажется от привилегий суперпользователя.

Непосредственно перед вызовом подпрограммы Interact () дочерний процесс вызывает новую подпрограмму prepare_child (), которая восстанавливает права доступа суперпользователя, меняя местами значения реального и действующего идентификаторов пользователя. В результате действующим идентификатором пользователя становится root. Эта операция вы­полняется в операторе local ( ) внутри блока; после выполнения этого блока значения идентификаторов пользователей снова поменяются местами. Вызывается фунция  chroot () для переназначения корневого каталога. В последнем действии действующий идентификатор пользователя присваивается реальному, что приводит к необратимому отказу от привилегий суперпользователя.

В данном примере в качестве каталога, с которым выполняется вызов функции chroot (), применяется /home/ftp. Это — тот же каталог, который используется для анонимных FTP-серверов в системах Linux, поэтому он вряд ли содержит конфиденциальные данные или уязвимые файлы.



2014-11-15 23:55:54

предыдущая часть ««»» следующая часть


ДОКУМЕНТАЦИЯ VoIP


НОВОСТИ СВЯЗИ


РЕКОМЕНДУЕМ

 
[ стандарты | обзор | оборудование | анализатор | коды | новости | карта | партнерам | Мы ВКонтаке ]
Запрещается копировать материалы сайта без уведомления авторов.
С вопросами и предложениями обращайтесь со страницы контактов
Copyright c 1999-2024 IPTop.Net
 
IP-Телефония, Интернет Телефония, Компьютерная телефония