<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=262012&amp;view=findpost&amp;p=2165432</guid>
        <pubDate>Mon, 12 Jan 2009 09:54:39 +0000</pubDate>
        <title>не получается поднятие vpn соединения непривелегированным пользователем</title>
        <link>https://forum.sources.ru/index.php?showtopic=262012&amp;view=findpost&amp;p=2165432</link>
        <description><![CDATA[best_lamer: <strong class='tag-b'>gonsaless</strong> смотри какие группы <strong class='tag-b'>уже</strong> существуют. Включи своего пользователя в нужную группу и все будет Ок. Точнее сказать не могу поскольку названия групп дистрозависимое явление.]]></description>
        <author>best_lamer</author>
        <category>*nix</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=262012&amp;view=findpost&amp;p=2165383</guid>
        <pubDate>Mon, 12 Jan 2009 09:05:54 +0000</pubDate>
        <title>не получается поднятие vpn соединения непривелегированным пользователем</title>
        <link>https://forum.sources.ru/index.php?showtopic=262012&amp;view=findpost&amp;p=2165383</link>
        <description><![CDATA[gonsaless: Всем привет&#33;<br>
  Уважаемые форумчане, прошу совета или намека куда копнуть.<br>
<br>
  OS: Debian etch<br>
  Пытаюсь сделать чтобы непривелегированный пользователь (назовем его internet) мог поднять vpn-соединение. Пользователь занесен в группу dip.<br>
  Через sudo pon [provider] всё работает.<br>
  А если просто pon [provider] вот такие вещи дает в /var/log/syslog:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">Jan 12 11:37:58 localhost pppd[32433]: pppd 2.4.4 started by internet, uid 1003</div><div class="code_line">Jan 12 11:37:58 localhost pptp[32434]: anon log[main:pptp.c:267]: The synchronous pptp option is NOT activated</div><div class="code_line">Jan 12 11:37:58 localhost pptp[32434]: anon warn[pptp_gre_bind:pptp_gre.c:82]: socket: Operation not permitted</div><div class="code_line">Jan 12 11:37:58 localhost pptp[32434]: anon fatal[main:pptp.c:275]: Cannot bind GRE socket, aborting.</div><div class="code_line">Jan 12 11:37:58 localhost pppd[32433]: Couldn&#39;t get channel number: Input/output error</div><div class="code_line">Jan 12 11:37:58 localhost pppd[32433]: Script /usr/sbin/pptp 10.1.255.250 --nolaunchpppd finished (pid 32434), status = 0x1</div><div class="code_line">Jan 12 11:37:58 localhost pppd[32433]: Exit.</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
  <br>
  гуглил и 2, и 3, и 4 строки... но разумного ничего не накопал. Заранее спасибо. <br>
<br>
<span class="tag-color tag-color-named" data-value="gray" style="color: gray"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2009-01-12T09:54:07+00:00">12.01.09, 09:54</time></span></span><br>
Продолжая гуглить нашел ответ.<br>
вот привожу что накопал из какого то <a class='tag-url' href='http://cetki.com/forum/lofiversion/index.php/t11625.html' target='_blank'>форума</a>.<br>
мне лично помог только пункт 1. Но там внизу в принципе есть пояснения для ВСЕХ шагов - может кому поможет.<br>
Вопрос решен. Всем спасибо :)<br>
<br>
<br>
Debian + PPTP. Запуск pon/poff из-под обычного пользователя.<br>
<br>
Алгоритм следующий (все шаги выполняются из-под рута... ну, или с использованием sudo):<br>
<br>
   1. Установить suid-бит на pptp.<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;&nbsp;root# chmod u+s `which pptp`</div></ol></div></div></div></div><br>
<br>
   2. Узнать полный путь к pptp.<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;root# which pptp</div></ol></div></div></div></div><br>
<br>
   3. Записать полный путь к pptp (который был выведен на предыдущем шаге) в соответствующий файл описания связи с провайдером (в файл из /etc/ppp/peers):<br>
          * открываем требуемый файл (например, /etc/ppp/peers/server);<br>
<br>
          * находим строчку, содержащую вызов команды pptp:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;&nbsp;pty &quot;pptp 172.16.5.1 --nolaunchpppd&quot;</div></ol></div></div></div></div><br>
<br>
          * изменяем эту строчку так, чтобы вызов команды pptp производился по полному пути (допустим, на предыдущем шаге команда which pptp вывела /usr/sbin/pptp):<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;pty &quot;/usr/sbin/pptp 172.16.5.1 --nolaunchpppd&quot;</div></ol></div></div></div></div><br>
<br>
          * сохраняем изменённый файл.<br>
<br>
   4. Добавить пользователя в группу dip. Вместо user следует подставить имя пользователя, из-под которого требуется запускать pon/poff.<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;&nbsp;root# usermod -aG dip user</div></ol></div></div></div></div><br>
<br>
   5. После всего этого следует перелогиниться (выйти из-под учётной записи пользователя и войти обратно).<br>
<br>
<br>
Всё, теперь команды pon server и poff server должны работать из-под user&#39;а и соединять с требуемым провайдером (вместо server, соответственно, необходимо подставить имя файла, который был изменён на 3-ем шаге).<br>
<br>
<br>
В дальнейшем, чтобы позволить любому другому пользователю запускать pon/poff достаточно добавить его в группу dip и перелогиниться. Шаги 1-2 повторять необязательно. Шаг 3 (указание полного пути к pptp) нужно учитывать при создании новых файлов в /etc/ppp/peers.<br>
<br>
<br>
Краткие пояснения по шагам:<br>
<br>
    * в Debian скриптами pon/poff (и программой pppd) по умолчанию имеют право пользоваться только пользователи из группы dip (ну, и, естественно, root).<br>
<br>
    * если не поставить suid-бит на pptp, то при запуске из-под обычного пользователя он не получит доступ к требуемому им сокету: возникнет ошибка вида<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;anon warn[pptp_gre_bind:pptp_gre.c:82]: socket: Operation not permitted</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;anon fatal[main:pptp.c:275]: Cannot bind GRE socket, aborting.</div></ol></div></div></div></div><br>
<br>
    * если не прописать полный путь к pptp, то при запуске из-под обычного пользователя он не будет найден: возникнет ошибка вида<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;sh: pptp: command not found</div></ol></div></div></div></div><br>
<br>
Для отладочного вывода при запуске pon используйте дополнительные опции debug dump logfd 2 nodetach. Например:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">pon server debug dump logfd 2 nodetach</div></ol></div></div></div></div>]]></description>
        <author>gonsaless</author>
        <category>*nix</category>
      </item>
	
      </channel>
      </rss>
	