Собственно, есть работующий, от рута, PopTop v1.3.0 на OpenBSD 4.4. Хотелось бы, запускать pptpd от пользователя vasja. Пользователь vasja являеться членом группы network и имеет все права на /etc/pptpd.conf и в /etc/ppp/*
При попытке заустить /usr/local/sbin/pptpd -d pptpd не запускается и в /var/log/message есть только одна ошибка:
PPTPD: failed to allow GRE, errno=1Спасибо за любую полезную информацию.
http://www.google.ru/search?hl=ru&q=failed+to+allow+GRE+...проще не куда...
>http://www.google.ru/search?hl=ru&q=failed+to+allow+GRE+...
>
>проще не куда...Естественно, перед тем как сюда написать я 2 дня искал ответ с помощью поисковика, но так и не нашёл. Если вы видели его, на каком либо сайте, то пожалуйста, будьте так любезны скиньте прямую ссылку.
Не знаком с OpenBSD, могу дать только совет общего плана - поставьте suid на pptpd и разрешите выполнение только для рута и группы.
>Не знаком с OpenBSD, могу дать только совет общего плана - поставьте
>suid на pptpd и разрешите выполнение только для рута и группы.
>Но тогда он будет запускаться от имени рута, а мне важно что бы просесс запускался от не привилегированного пользователя. С рутом и так всё работает, но меня смущяет, что в инет смотрит демон с правами рута.
>Но тогда он будет запускаться от имени рута, а мне важно что
>бы просесс запускался от не привилегированного пользователя. С рутом и такsuid и root, группу - пользователя в группу. _запускаться_ будет с-под пользователя и работать с правами рута.
>всё работает, но меня смущяет, что в инет смотрит демон с правами рута.
Пусть смотрит в дугую сторону? :))
>Собственно, есть работующий, от рута, PopTop v1.3.0 на OpenBSD 4.4. Хотелось бы,
>запускать pptpd от пользователя vasja. Пользователь vasja являеться членом группы network
>и имеет все права на /etc/pptpd.conf и в /etc/ppp/*
>При попытке заустить /usr/local/sbin/pptpd -d pptpd не запускается и в /var/log/message есть
>только одна ошибка:
>PPTPD: failed to allow GRE, errno=1
>
>Спасибо за любую полезную информацию.Надо что бы pptpd не просто запускался от пользователя vasja но и работал с его привилегиями. К примеру, apache же мы запускаем от специального пользователя и работает он без рутовых прав.
Вообще-то апач запускается от рута и главный процесс продолжает работу с рутовыми привилегиями. А вот потомки, которые занимаются непосредственной обработкой соединений, самостоятельно сбрасывают рутовые привилегии, меняя uid на нужный. Подобная функциональность присуща ряду других программ, а вот есть ли она у poptop не знаю, смотрите ман.
Используя trustedBSD или selinux скорее всего можно получить то, что вы хотите, но ЕМНИП в опенке аналогов этому нет.
>Вообще-то апач запускается от рута и главный процесс продолжает работу с рутовыми
>привилегиями. А вот потомки, которые занимаются непосредственной обработкой соединений, самостоятельно сбрасывают
>рутовые привилегии, меняя uid на нужный. Подобная функциональность присуща ряду других
>программ, а вот есть ли она у poptop не знаю, смотрите
>ман.
>Используя trustedBSD или selinux скорее всего можно получить то, что вы хотите,
>но ЕМНИП в опенке аналогов этому нет.Простите за оффтоп, но как называется главный процесс?
На OpenBSD 4.4 apachectl запускаеться от рута, но процессы httpd parent и child работают от пользователя www
Пример:
root 2923 0.0 0.1 13444 2780 ? Ss 12:51 0:00 /usr/sbin/apache2 -k start
www-data 2924 0.0 0.0 13216 2012 ? S 12:51 0:00 /usr/sbin/apache2 -k start
www-data 2932 0.0 0.1 234788 2648 ? Sl 12:51 0:00 /usr/sbin/apache2 -k start
www-data 2934 0.0 0.1 234788 2652 ? Sl 12:51 0:00 /usr/sbin/apache2 -k starttcp6 0 0 :::80 :::* LISTEN 2923/apache2
ЕМНИП в опенке все еще пользуют 1.3, причем сильно пропатченный, так что возможно там и слушающий процесс сбрасывает привилегии. Но в любом случае изначальный запуск производится из под рута, хотя бы для того, чтобы забиндить порты ниже 1024