Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Настройка PPTP клиента pfSense 2.0.1

    Scheduled Pinned Locked Moved Russian
    7 Posts 3 Posters 9.0k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      pakko
      last edited by

      Добрый день, всем!

      Уважаемые профи, подскажите пожалуйста, как настроить pfsense в качестве клиента pptp?

      • версия pfSense 2.0.1
      • связь с провайдером настроена через PPPoE на WAN интерфейсе.
      • настроен и работает PPTP-сервис на pfSense.
      • необходимо поверх PPPoE настроить связь с удаленным VPN-сервером (windows) по протоколу PPTP.

      Это необходимо для того, чтобы локальные пользователи видели ресурсы удаленного офиса. Множественные впн-соединения из локальной сети psSense не поддерживает к одному серверу ((( а работать должны около десятка человек. адрес у впн-сервера один и дополнительных публичных адресов у меня тоже нет…

      Если не затруднит, то опишите, пожалуйста новичку, точную последовательность действий (что, где и как).
      Ни где не нашел такой информации (

      Если данный вариант настройки не возможен, то может посоветуете как сделать по-другому?

      Огромное Спасибо!

      1 Reply Last reply Reply Quote 0
      • D
        dr.gopher
        last edited by

        Попытки настроить рртр клиента были. На сколько помню, безуспешные. Пробуйте openvpn

        FAQ PfSense 2.0

        И не забываем про Adblock дабы не видеть баннеров.

        И многое другое на www.thin.kiev.ua

        1 Reply Last reply Reply Quote 0
        • P
          pakko
          last edited by

          Увидев, что интерес к теме большой, решил выложить своё решение.

          Возможно, что у меня ошибочное решение, прошу сдешних гуру не быть слишком критичными. Поправки приветствуются.

          Результат такой:

          **Суть идеи в том, что во время старта интерфейса (Enable Interface) заменяется стандартный сгенерированный самим pfSense-ом конфиг mpd_optX.conf на наш рабочий конфиг. Возможно, специфические настройки на сервере впн не позволяют законнектится со стандартным конфигом.

          Необходимо модифицировать /etc/inc/interfaces.inc для инициации изменения конфигов**.

          Разберем по шагам, что и как я делал.

          1. Создал необходимые интерфейсы: Interfaces -> (assign) -> New [Кнопка плюс]
             У меня это интерфейсы opt2, opt3 и opt4. Далее буду показывать на примере VPN_B1 (opt3)

          2. Настройки интерфейса:

          3. В разделе Advanced в интерфейсе нажать Click here for additional PPTP and L2TP configuration options. Save first if you made changes. и выполнить настройки в соответствии с изображением:

          4. Изменение содержимого файла: /etc/inc/interfaces.inc
          Перед кодом```
          /* fire up mpd */

          if ($interface == "opt2") {
                         mwexec ("/usr/local/etc/custom_mpd/change_m_mpd_config.sh -auth {$ppp['username']} {$passwd}");
                 }
                 if ($interface == "opt3") {
                         mwexec ("/usr/local/etc/custom_mpd/change_b1_mpd_config.sh -auth {$ppp['username']} {$passwd}");
                 }
                 if ($interface == "opt4") {
                         mwexec ("/usr/local/etc/custom_mpd/change_b2_mpd_config.sh -auth {$ppp['username']} {$passwd}");
                 }

          
          5\. Создал директорию для своих скриптов и конфигов mpd: /usr/local/etc/custom_mpd
          
          6\. Поместил сюда рабочие конфиги mpd. Вот один для примера: b1_mpd_opt3_conf
          

          startup:
                 # configure the console
                 set console close
                 # configure the web server
                 set web close

          default:
                 load pptpclient

          pptpclient:
                 create bundle static opt3
                 set iface name pptp3
                 set iface route Local IP address (yyy.yyy.yyy.0/24)
                 set ipcp ranges 0.0.0.0/0 0.0.0.0/0
                 set bundle enable compression
                 set ccp yes mppc
                 set mppc yes e40
                 set mppc yes e128
                 set mppc yes stateless
                 create link static opt3_link0 pptp
                 set link action bundle opt3
                 set link disable multilink
                 set link keep-alive 20 75
                 set link max-redial -1
                 set link mtu 1492
                 set pptp peer Remote IP address
                 set pptp disable windowing

          
          7\. Написал скрипты, которые будут заменять стандартные конфиги на наши: change_b1_mpd_config.sh
          Не забудьте, что надо поставить права на выполнение файла со скриптом (x)
          

          #!/bin/sh

          change the standard config for mpd connections

          use key "-r" for restart connection

          #any params exist
          if [ "$#" -gt 0 ]; then

          #change name in mpd conf
                 #second and third params = user name and password for vpn
                 if [ "$1" = "-auth" ]; then
                         cat /usr/local/etc/custom_mpd/b1_mpd_opt3_conf > /var/etc/mpd_opt3.conf
                         echo " set auth authname $2" >> /var/etc/mpd_opt3.conf
                         echo " set auth password $3" >> /var/etc/mpd_opt3.conf
                         echo " open" >> /var/etc/mpd_opt3.conf
                 fi

          #forse restart connection
                 if [ "$1" = "-r" ]; then
                         /usr/local/sbin/mpd5 -b -k -d /var/etc -f mpd_opt3.conf -p /var/run/pptp_opt3.pid -s ppp pptpclient
                 fi
          fi

          
          8\. Добавил правила в фаервол
          ![](http://www.iulazar.by/images/sampledata/pptp/vpn_b1_firewall.png)
          с правилами я не совсем корректно всё сделал, но по крайней мере работает. Если кто подскажет как более грамотно настроить с точки зрения правил, будет замечательно!
          
          9\. В принципе всё.
          
          У каждого будет свой конфиг mpd, но принцип и порядок действий такой же. Теперь при запуске интерфейса пфсенс будет подключаться к удалённому пптп серверу. Если в конфиге mpd изменить параметр **set link max-redial** допустим на 100, то клиент при обрыве связи будет пытатся законнектиться 100 раз. Я поставил -1, так как вдруг меняется пароль у пользователя впн и он окажется заблокированным в результате многочисленных попыток неправильной аутентификации.
          
          [pfSense 2.0.2 - PPTP over PPPoE.docx.7z.txt](/public/_imported_attachments_/1/pfSense 2.0.2 - PPTP over PPPoE.docx.7z.txt)
          1 Reply Last reply Reply Quote 0
          • R
            rubic
            last edited by

            Как-то сложновато. Зачем скрипты? Последовательность действий с нуля (есть только WAN и LAN):
            Идем в Interfaces -> (assign) на вкладку PPPs и нажимаем плюсик. Далее:
            Link Type: PPTP
            Link interface(s): WAN
            Username: - имя пользователя PPTP сервера
            Password: …
            Local IP (wan): IP WAN интерфейса
            Gateway (wan): адрес PPTP сервера, к которому нужно подключиться
            Сохраняем.
            Идем в Interfaces и видим там новый OPT1 интерфейс, тыкаем на него
            Ставим галку на Enable Interface и даем ему вменяемое имя.
            Все!

            У меня так работает, правда задача стояла несколько другая, но это несущественно. Для подключения к виндовому PPTP серверу этих шагов достаточно.

            1 Reply Last reply Reply Quote 0
            • D
              dr.gopher
              last edited by

              @rubic:

              Как-то сложновато. Зачем скрипты? Последовательность действий с нуля (есть только WAN и LAN):

              Возможно в версии 2,01 уже и работает всё, либо ваш PPTP сервер не использует шифрование.

              В версии 2,0 я делал так
              http://www.thin.kiev.ua/router-os/50-pfsense/680-pptp-clien-wan-pfsense-20.html

              FAQ PfSense 2.0

              И не забываем про Adblock дабы не видеть баннеров.

              И многое другое на www.thin.kiev.ua

              1 Reply Last reply Reply Quote 0
              • P
                pakko
                last edited by

                К сожелению, у меня оказалось не достаточно.

                Я пытался настроить в версиях 2.0.1 и 2.0.2 - без результатно. Так как по стандарту pfSense генерит один и тот же конфиг для mpd (mpd_optX.conf) .

                Я нашел единственный выход после многих дней попыток.

                В начале я реализовал в ручную из консоли, потом, как появилось время, захотел сделать это работоспособным из web-интерфейса.

                Потом, я наткнулся на один топик, где описывалось как подключаться консольными командами mpd но тоже с кастомным конфигом - больше инфы не было.

                Вот и решил, что может кому и пригодится

                1 Reply Last reply Reply Quote 0
                • R
                  rubic
                  last edited by

                  pfSense 2.0.1, шифрование присутствует судя по логам (на виндовом серваке PPTP настраивал не я). Вообще задача была с существующего интернет подключения сделать туннель до сервака с дешевым интернетом и раздать оный в LAN. Между pfSense и этим серваком какой-то льготный тариф. На pfSense принципиально не стал лезть в дебри, все строго через ГУИ. Без плясок с бубном не обошлось, но плясать не мне пришлось. В конце-концов взлетело. Затык был в аутентификации на память. Сейчас MSCHAP2, шифрование MPPE.

                  1 Reply Last reply Reply Quote 0
                  • First post
                    Last post
                  Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.