Как работает pptp сервер windows. Соединение PPTP — что это такое? Настройка VPN подключения

20.06.2020 Игры

Один из часто задаваемых нашими пользователями вопросов - как добавить другой IP-адрес к их серверу. Вы можете назначить свой приватный IP-адрес Вашему дроплету путем создания VPN-туннеля. Для построения своей собственной виртуальной частной сети (VPN) или присвоения SSL-сертификата этому IP-адресу существует несколько вариантов. Из всех возможных вариантов наиболее оптимальным является выбор между PPTP и OpenVPN. Point-To-Point Tunneling Protocol (PPTP) позволяет Вам поднять свой VPN очень быстро и является совместимым с большинством мобильных устройств. И хотя PPTP менее безопасен, чем OpenVPN, он быстрее и использует меньше ресурсов процессора.

Шаг 1 - Установка PPTP

Вам необходимо выбрать один сервер, который будет отвечать за раздачу IP-адресов другим серверам и авторизацию всех Ваших серверов в Вашей VPN. Он и станет Вашим PPTP-сервером.

На CentOS 6 x64:

Rpm -i http://poptop.sourceforge.net/yum/stable/rhel6/pptp-release-current.noarch.rpm yum -y install pptpd

На Ubuntu 12.10 x64:

Apt-get install pptpd

Теперь необходимо отредактировать файл /etc/pptpd.conf , добавив в него следующие строчки:

Localip 10.0.0.1 remoteip 10.0.0.100-200

В данном случае, localip - это IP-адрес вашего сервера, а remoteip - IP-адреса, которые будут присваиваться клиентам, которые в ним соединяются.

Здесь сlient - это имя пользователя (логин), server - тип сервиса (в нашем примере - pptpd), secret - пароль, а в IP addresses указывается, какие IP-адреса могут авторизоваться (с данным логином и паролем). Установив в поле IP-адресов звёздочку * Вы указываете, что данная пара логин/пароль должна приниматься с любого IP.

Шаг 2 - Добавление DNS-серверов в /etc/ppp/pptpd-options

ms-dns 8.8.8.8 ms-dns 8.8.4.4

Теперь Вы можете запустить PPTP-демон:

Service pptpd restart

Проверьте, что он работает и принимает соединения:

Шаг 3 - Настройка форвардинга (Forwarding)

Очень важно включить форвардинг IP на Вашем PPTP-сервере. Это позволит Вам пересылать пакеты между публичным IP и приватными IP, которые Вы настроили при помощи PPTP. Просто отредактируйте /etc/sysctl.conf , добавив туда следующую строку, если ее там еще не было:

Net.ipv4.ip_forward = 1

Для применения изменений выполните команду sysctl -p

Шаг 4 - Создание NAT-правил для iptables

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE && iptables-save

Если Вы также хотите, чтобы Ваши PPTP-клиенты могли общаться между собой, добавьте следующие правила для iptables:

Iptables --table nat --append POSTROUTING --out-interface ppp0 -j MASQUERADE iptables -I INPUT -s 10.0.0.0/8 -i ppp0 -j ACCEPT iptables --append FORWARD --in-interface eth0 -j ACCEPT

Теперь Ваш PPTP-сервер также работает и как роутер.

Если Вы хотите установить ограничение на то, какие сервера могут соединяться с Вашими дроплетами, Вы можете задать правило для IP-таблиц, которое ограничивает TCP-соединения к порту 1723.

Шаг 5 - Настройка клиентов

Установите PPTP-клиент на Ваших клиентских серверах:

Yum -y install pptp

Шаг 6 - Добавление необходимого модуля ядра

modprobe ppp_mppe

Создайте новый файл /etc/ppp/peers/pptpserver и добавьте туда следующие строчки, заменяя имя и пароль Вашими значениями:

Pty "pptp 198.211.104.17 --nolaunchpppd" name box1 password 24oiunOi24 remotename PPTP require-mppe-128

Здесь 198.211.104.17 - публичный IP-адрес нашего PPTP-сервера, box1 и 24oiunOi24 - это пара логин/пароль, которые мы задали в файле /etc/ppp/chap-secrets на нашем PPTP-сервере.

Теперь мы можем "вызывать" этот PPTP-сервер. В следующей команде необходимо использовать имя, которое Вы дали файлу с пирами (peers) в директории /etc/ppp/peers/ . Поскольку в нашем примере мы назвали этот файл pptpserver , наша команда выглядит следующим образом:

Pppd call pptpserver

Вы должны увидеть успешное подключение в логах PPTP-сервера:

На Вашем PPTP-клиенте настройте маршрутизацию на Вашу приватную сеть через интерфейс ppp0:

Ip route add 10.0.0.0/8 dev ppp0

Ваш интерфейс ppp0 должен быть настроен, что можно проверить путем запуска ifconfig

Теперь Вы можете сделать пинг к Вашему PPTP-серверу и любым другим клиентам, подключенным к этой сети:

Мы можем добавить второй PPTP-клиент к этой сети:

Yum -y install pptp modprobe ppp_mppe

Добавьте необходимые строки в файл /etc/ppp/peers/pptpserver (заменяя логины и пароли своими):

Pty "pptp 198.211.104.17 --nolaunchpppd" name box2 password 239Aok24ma remotename PPTP require-mppe-128

Теперь на втором клиенте выполните следующие команды:

Pppd call pptpserver ip route add 10.0.0.0/8 dev ppp0

Вы можете сделать пинг к первому клиенту, при этом пакеты будут идти через PPTP-сервер и перенаправляться по правилам ip-таблиц, которые мы задали ранее:

Такая настройка позволит Вам создать Вашу собственную виртуальную частную сеть:

Если Вы хотите, чтобы все ваши устройства общались безопасно в рамках одной сети, это наиболее быстрый способ сделать это.

Вы можете использовать такой подход совместно с Nginx, Squid, MySQL и любыми другими приложениями.

Поскольку трафик внутри сети шифруется 128-битным шифрованием, PPTP меньше нагружает процессор, чем OpenVPN, но все же обеспечивает дополнительный уровень безопасности Вашего трафика.

VPN-туннели - распространенный вид связи типа "точка-точка" на основе стандартного интернет-соединения через роутеры MikroTik. Они представляют собой, по сути "канал внутри канала" - выделенную линию внутри основной.

Необходимость настройки туннельного VPN-соединения на MikroTik возникает в случаях, когда:

  • Требуется предоставить доступ к корпоративной сети сотрудникам предприятия , которые работают из дома, или находясь в командировке, в том числе с мобильных устройств.
  • Требуется предоставить доступ в интернет абонентам провайдера (в последнее время такая реализация доступа клиентов становится все более популярной).
  • Необходимо соединить два удаленных подразделения предприятия защищенным каналом связи с минимальными затратами.

В отличие от обычной сети, где данные передаются открыто и в незашифрованном виде, VPN является защищенным каналом связи. Уровень защиты зависит от типа туннельного протокола, выбранного для соединения. Так, наименее защищенным считается протокол PPtP, даже его "верхний" алгоритм аутентификации mschap2 имеет ряд проблем безопасности и легко взламывается. Наиболее безопасным считается набор протоколов IPsec.

Несмотря на укоряющую картинку, иногда смысл в отключении шифрования и аутентификации все же есть. Многие модели MikroTik не поддерживают аппаратное шифрование, и обработка всех процессов, связанных с защитой соединения происходит на уровне CPU. Если безопасность соединения не является для вас критичным моментом, а производительность используемого роутера оставляет желать лучшего, то отключение шифрования можно использовать для разгрузки процессора.

Выбор протокола для VPN на MikroTik

Для настройки соединения по VPN через MikroTik чаще всего используются следующие протоколы:

В сегодняшней статье мы рассмотрим настройку подключения VPN с помощью двух из них, как наиболее часто встречающихся в работе провайдера и системного администратора: PPtP и PPPoE. .

VPN через PPtP на MikroTik

PPtP - самый распространенный протокол VPN. Представляет собой связку протокола TCP, который используется для передачи данных, и GRE - для инкапсуляции пакетов. Чаще всего применяется для удаленного доступа пользователей к корпоративной сети. В принципе, может использоваться для многих задач VPN, однако следует учитывать его изъяны в безопасности.

Прост в настройке. Для организации туннеля требуется:

    создать на роутере MikroTik, через который пользователи будут подключаться к корпоративной сети, PPtP-сервер,

    создать профили пользователей с логинами/паролями для идентификации на стороне сервера,

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

Включаем PPtP сервер.

Для этого идем в раздел меню PPP , заходим на вкладку Interface , вверху в перечне вкладок находим PPTP сервер и ставим галочку в пункте Enabled.

Снимаем галочки с наименее безопасных алгоритмов идентификации - pap и chap.

Создаем пользователей.

В разделе PPP переходим в меню Secrets и с помощью кнопки " + " добавляем нового пользователя.

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

В поле Service выбираем тип нашего протокола - pptp, в поле Local Address пишем IP-адрес роутера MikroTik, который будет выступать в роли VPN-сервера, а в поле Remote Address - IP-адрес пользователя

Прописываем правила для Firewall.

Нам нужно открыть 1723 порт для трафика по TCP-протоколу для работы VPN-туннеля MikroTik, а также разрешить протокол GRE. Для этого идем в раздел IP, потом - в Firewall , потом на вкладку Filter Rules , где с помощью кнопки "+" добавляем новое правило. В поле Chain указываем входящий трафик - input , в поле Protocol выбираем протокол tcp , а в поле Dst. Port - указываем порт для VPN туннеля 1723 .

Переходим здесь же на вкладку Action и выбираем accept - разрешать (трафик).

Точно также добавляем правило для GRE. На вкладке General аналогично предыдущему прописываем input, а в поле Protocol выбираем gre.

На вкладке Action как и в предыдущем правиле выбираем accept.

Не забываем поднять эти правила в общем списке наверх, поставив ПЕРЕД запрещающими правилами, иначе они не будут работать. В RouterOS Mikrotik это можно сделать перетаскиванием правил в окне FireWall.

Все, PPtP сервер для VPN на MikroTik поднят.

Небольшое уточнение.

В некоторых случаях, когда при подключении необходимо видеть локальную сеть за маршрутизатором , нужно включить proxy-arp в настройках локальной сети. Для этого идем в раздел интерфейсов (Interface), находим интерфейс, соответствующий локальной сети и на вкладке General в поле ARP выбираем proxy-arp .

Если вы подняли VPN между двумя роутерами MikroTik и вам необходимо разрешить передачу broadcast, можно попробовать добавить существующий профиль подключения (PPP - Profiles) удаленного роутера в бридж главного:

UPD из комментария: Если вам дополнительно нужно получить доступ к расшаренным папкам на компьютерах локальной сети, понадобится также открыть порт 445 для проходящего трафика SMB-протокола, который отвечает за Windows Shared. (Правило forward в брандмауере).

Настройка клиента .

На стороне VPN-клиента настройки состоят только в том, чтобы создать подключение по VPN, указать IP-адрес VPN (PPtP) сервера, логин и пароль пользователя.

VPN через PPPoE на MikroTik

Своей распространенностью в последнее время VPN по протоколу PPPOE обязан провайдерам, предоставляющим широкополосный, в т. ч. беспроводной доступ в интернет. Протокол предполагает возможность сжатия данных, шифрования, а также характеризуется:

    Доступностью и простотой настройки.

    Поддержкой большинством маршрутизаторов MikroTik.

    Стабильностью.

    Масштабируемостью.

    Устойчивостью зашифрованного трафика к ARP-спуфингу (сетевой атаке, использующей уязвимости протокола ARP).

    Меньшей ресурсоемкостью и нагрузкой на сервер, чем PPtP.

Также его преимуществом является возможность использования динамических IP-адресов: не нужно назначать определенный IP конечным узлам VPN-туннеля. Подключение со стороны клиента осуществляется без сложных настроек, только по логину и паролю.

Настройка VPN-сервера PPPoE MikroTik

Настраиваем профили сервера.

Несколько профилей PPPoE-сервера могут понадобиться, если вы провайдер и раздаете интернет по нескольким тарифным пакетам. Соответственно, в каждом профиле можно настроить разные ограничения по скорости.

Идем в раздел PPP , открываем пункт Profiles и с помощью кнопки " + " создаем новый профиль. Даем ему понятное нам название, прописываем локальный адрес сервера (роутера), отмечаем опцию Change TCP MSS (корректировку MSS), для того, чтобы все сайты нормально открывались.

Кстати, в некоторых случаях, когда возникают проблемы с открытием некоторых сайтов, при том, что пинги на них проходят, можно сделать по-другому. Корректировку MSS отключаем, а через терминал прописываем на роутере следующее правило:

"ip firewall mangle add chain=forward protocol=tcp tcp-flags=syn tcp-mss=1453-65535 action=change-mss new-mss=1360 disabled=no". В большинстве случаев это решает проблему.

Далее на вкладке Protocols все отключаем, для улучшения производительности. Если защищенность соединения для вас важна и производительность маршрутизатора позволяет, то опцию Use Encryption (использовать шифрование) не отключайте.

На вкладке Limits устанавливаем ограничения по скорости, если нужно. Первая цифра в ограничении скорости - входящий трафик на сервер (исходящий от абонента), вторая - наш исходящий трафик (входящий у абонента).

Ставим Yes в пункте Only One , это значит, что два и более абонентов с одним и тем же набором логин/пароль не смогут подключиться к PPPoE-серверу, только один.

Теперь, если необходимо, создаем остальные профили простым копированием (кнопка Copy на предыдущем скриншоте) и меняем имя и ограничение по скорости.

Создаем учетные записи пользователей .

В том же разделе PPP находим пункт меню Secrets . В нем с помощью кнопки "+" создаем нового пользователя, который будет подключаться к нам по VPN-туннелю.

Заполняем поля Name и Password (логин и пароль, который будет вводить пользователь со своей стороны, чтобы подключиться).

В поле Service выбираем pppoe , в Profile - соответствующий профиль, в данном случае - тарифный пакет, которым пользуется абонент. Присваиваем пользователю IP-адрес, который при подключении сервер раздаст абоненту.

Если подключаем несколько пользователей, создаем для каждого из них отдельную учетную запись, меняя имя/пароль и IP-адрес.

Привязываем PPPoE сервер к определенному интерфейсу MikroTik.

Теперь нам необходимо сообщить маршрутизатору, на каком интерфейсе он должен "слушать" входящие подключения от VPN PPPoE клиентов. Для этого в разделе PPP мы выбираем пункт PPPoE Servers. Здесь мы меняем:

Поле Interface - выбираем тот интерфейс, к которому будут подключаться клиенты,

  • Keepalive Timeout - 30 секунд (время ожидания ответа от клиента до разрыва соединения)
  • Default Profile - профиль, который будет присваиваться подключаемым абонентам по умолчанию,
  • Ставим галку в One Session Per Host, тем самым разрешая подключение только одного туннеля с маршрутизатора клиента или компьютера.
  • Галочки в разделе аутентификации оставляем/снимаем по усмотрению.

Настраиваем NAT для доступа клиентов в интернет.

Мы подняли PPPoE сервер и теперь к нему могут подключаться авторизованные пользователи. Если нам нужно, чтобы подсоединившиеся по VPN туннелю пользователи имели доступ в интернет, нужно настроить NAT (маскарадинг), или преобразование локальных сетевых адресов.

В разделе IP выбираем пункт Firewall и с помощью кнопки "+" добавляем новое правило.

В поле Chain должно стоять srcnat , что означает, что маршрутизатор будет применять это правило к трафику, направленному "изнутри наружу".

В поле Src. Address (исходный адрес) прописываем диапазон адресов 10.1.0.0/16 . Это означает, что все клиенты с адресами 10.1. (0.0-255.255) будут выходить в сеть через NAT, т. е. мы перечисляем здесь всех возможных абонентов.

В поле Dst. Address (адрес назначения) указываем !10.0.0.0/8 - диапазон адресов, означающий собственное адресное пространство для частных сетей, с восклицательным знаком впереди. Это указывает роутеру на исключение - если кто-то из локальной сети обращается на адрес в нашей же сети, то NAT не применяется, соединение происходит напрямую.

А на вкладке Action прописываем, собственно, действие маскарадинга - подмены локального адреса устройства на внешний адрес роутера.

Настройка VPN-клиента PPPoE

Если на той стороне VPN туннеля подключение будет происходить с компьютера или ноутбука, то просто нужно будет создать высокоскоростное подключение через PPPoE в Центре управления сетями и общим доступом (для Win 7, Win 8). Если на второй стороне - тоже роутер Mikrotik, то подключаем следующим образом.

Добавляем PPPoE интерфейс.

На вкладке Interface выбираем PPPoE Client и с помощью кнопки "+" добавляем новый интерфейс.

Здесь в поле Interface мы выбираем тот интерфейс роутера Mikrotik, на котором мы организуем VPN-туннель.

Прописываем настройки подключения.

Ставим галочку в поле Use Peer DNS - для того, чтобы адрес DNS сервера мы получали с сервера VPN (от провайдера), а не прописывали вручную.

Настройки аутентификации (галочки в pap, chap, mschap1, mschap2) должны быть согласованы с сервером.


сайт

В этой статье мы рассмотрим настройку PPTP–VPN сервера в Ubuntu. VPN сервер – это очень полезная в хозяйстве вещь, обеспечивающая безопасное, шифрованное подключение к локальной сети (напр. домашней сети) удаленных компьютеров, смартфонов и подобных устройств. Например, свой VPN сервер позволит вам:

  • Обеспечить конфиденциальность переданных и полученных данных, когда вы (ваш ноутбук, смартфон) находитесь в недоверительной сети, и существует угроза со стороны этой сети.
  • Безопасно управлять сервером через , ведь пароль на общий доступ к экрану обычно передается в открытом виде (исключение – удаленный рабочий стол в Mac OS X и управление им с помощью Apple Remote Desktop), из-за чего совершенно недопустимо подключаться к рабочему столу напрямую через Интернет.
  • То же самое можно сказать, если вы пользуетесь классическим FTP для передачи файлов – протокол также не обеспечивает механизма безопасной аутентификации, из-за чего при возможности стараются использовать SFTP.
  • Безопасно обмениваться данными как с сервером, так и с компьютерами составляющими вашу локальную (домашнюю) сеть (при условии отсутствия атаки ХПВК, Хакеры Прямо В Квартире).

Вообще говоря, VPN обеспечит вам зашифрованный виртуальный туннель между сервером и удаленной машиной, со всеми вытекающими отсюда следствиями. Если представить Internet в виде трубы, то VPN создает внутри нее трубу меньшего диаметра, доступную только для «своих».

Теперь, когда мы рассмотрели сплошные преимущества VPN, самое время познакомиться с технологией более детально, и разобраться какие разновидности VPN существуют.

На сегодняшний день существует несколько реализаций VPN:

После этого правим файл /etc/pptpd.conf выполнив в Терминале:

sudo pico /etc/pptpd.conf

Вот как этот файл выглядит у меня:

Затем в файл /etc/ppp/chap-secrets добавляем пользователей которые будут иметь право подключатся к VPN-сети. Набираем в Терминале:

sudo pico /etc/ppp/chap-secrets

И добавляем в этот файл информацию в таком виде:

# Secrets for authentication using CHAP
# client server secret IP addresses
andrey pptpd andrey12 *

Таким образом, мы наделили пользователя andrey с паролем andrey12 правом подключаться к нашей VPN сети. Пользователю andrey будет выдаваться первый доступный IP адрес из указанного диапазона. Если же необходимо, чтобы пользователю всегда выдавался один и тот же IP адрес, укажите желаемый IP вместо «*». Обратите внимание на название сервиса – pptpd – оно должно быть таким же, как указано в параметре name в файле /etc/ppp/pptpd-options.

С настройками VPN-сервера мы завершили, теперь нужно его перезапустить для того, чтобы изменения которые мы внесли вступили в силу. Для этого выполним в Терминале:

sudo /etc/init.d/pptpd restart

Если необходимо, чтобы для подключенных удаленных клиентов был доступен интернет через VPN, открываем /etc/rc.local и НАД ‘exit 0’ добавляем такие строки:

# PPTP IP forwarding
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

и раскомментируем эту строчку в файле /etc/sysctl.conf:

net.ipv4.ip_forward=1

В случае если ваш VPN сервер не подключен напрямую к интернету, вам скорее всего понадобится направить порт TCP-1723 и «протокол 47», он же GRE , на локальный IP адрес VPN сервера. Обратитесь к инструкции по настройке роутера чтобы выполнить необходимые шаги. Очевидно, что у сервера за роутером должен быть постоянный локальный IP, а у самого роутера – постоянный «внешний» IP, либо прийдется воспользоваться услугой «динамический DNS», но это совсем другая тема.

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

Подключение клиента с Mac OS X 10.6

Для подключения к VPN с Mac OS X 10.6, откройте «Системные Настройки», перейдите в раздел «Сеть», под списком интерфейсов нажмите внизу «+» и в появившемся окне добавления интерфейса выберите «Интерфейс: VPN», «Тип VPN: PPTP». И нажмите создать. В настройках укажите:

  • Доменное имя сервера VPN, или IP адрес
  • Имя учетной записи (логин)
  • Кодирование (шифрование канала) – выберите «Максимум (только 128 бит)»

Потом щелкните «Настройки идентификации», укажите что идентификация осуществляется посредством пароля и введите пароль.

Щелкните «Дополнительно», и установите либо снимите галочку «Отправить весь трафик через VPN». Если галочка установлена – то абсолютно весь трафик будет проходить через VPN сервер и по шифрованному каналу доставляться вам. Если галочка снята – то только трафик предназначающийся для удаленной локальной сети будет проходить через VPN канал (например, вы сможете через Remote Desktop управлять сервером), а весь остальной трафик, например получение почты и загрузка веб страниц будут осуществляться напрямую из интернета по кратчайшему маршруту. Подтвердите изменения нажав «ОК».

Теперь можно попробовать подключиться, нажав «Подключить», (см. 1-й скриншот), или выбрав нужное VPN соединение в строке меню сверху.

Подключение iPhone с iOS 4

Для подключения iPhone с операционной системой iOS 4 к PPTP VPN, откройте Настройки, перейдите в раздел «Основные», потом «Сеть». Щелкните пункт «VPN», если у вас нет VPN конфигураций, напротив него будет написано «Не настроена». Щелкните «Добавить конфигурацию VPN…». В открывшемся окне переходим на вкладку PPTP, и заполняем:

  • Описание – то, как будет называться данное VPN соединение
  • Сервер – доменное имя или IP адрес
  • Учетная запись – ваш логин
  • RSA SecurID – оставляем выключенным
  • Пароль – вводим свой пароль
  • Шифрование – выбираем «Максимум»
  • Для всех данных – либо включаем либо выключаем, руководствуясь соображениями описанными выше

Диагностика подключения

PPTP обычно заводится без проблем, и при аккуратной первичной настройке работает сразу же (в отличие от более сложного L2TP-over-IPSec). И если вы, все же, испытываете проблемы с подключением, используйте следующие команды на клиенте (в рассматриваемом случае это Mac OS X) для отслеживания лога подключения в режиме реального времени:

tail -f /var/log/system.log
tail -f /var/log/ppp.log

Вы должны увидеть там что-то типа такого:

May 2 21:44:59 ATT pppd: PPTP connecting to server "server1..456.789.10)…
May 2 21:45:02 ATT pppd: PPTP connection established.
May 2 21:45:02 ATT pppd: Connect: ppp0 <--> socket
May 2 21:45:08 ATT pppd: MPPE 128-bit stateless compression enabled
May 2 21:45:09 ATT pppd: local IP address 192.168.18.2
May 2 21:45:09 ATT pppd: remote IP address 192.168.18.1
May 2 21:45:09 ATT pppd: primary DNS address 10.0.0.1
May 2 21:45:09 ATT pppd: secondary DNS address 10.0.0.1

Если требуется включить детальное логирование на сервере, обратитесь к уже упоминавшемуся справочнику «Описание опций /etc/pptpd.conf и /etc/ppp/options.pptpd ».

«Криптоанализ туннельного протокола типа точка-точка (PPTP) от Microsoft » – Статья достаточно старая, например, механизмом MS-CHAP уже давно никто не пользуется (ведь есть MS-CHAP v.2, намного более надежный, хотя тоже очень далек от идеала), но позволяет сложить впечатление об общей схеме работы PPTP. Также, будет понятно, почему нет смысла усовершенствовать и дорабатывать PPTP, а вместо этого лучше рассмотреть альтернативные, более современные, варианты.

«Cryptanalysis of Microsoft’s PPTP Authentication Extensions (MS-CHAPv2) » – Вторая статья в продолжение упомянутой выше (перевода нет, поэтому читаем на языке Шекспира), в которой рассматривается усовершенствованный PPTP с аутентификацией MS-CHAP v2 и улучшенным MPPE (шифрование канала). Именно на этом варианте остановилось развитие PPTP. Резюме статьи – MS-CHAP v2 лучше чем MS-CHAP v1, потому что авторизируется не только клиент, а клиент и сервер авторизируют друг друга, что исключает подмену сервера. Шифрование канала MPPE теперь использует разный ключ для шифрования данных от сервера к клиенту и от клиента к серверу. Явные огрехи в безопасности устранены, и теперь главная критика на PPTP направлена на то, что протокол остается пароле-зависимым, то есть он настолько безопасен, насколько безопасен пароль, выбранный пользователем.

« » – Для тех кто уже разобрался с PPTP, предлагаю ознакомиться с более продвинутой VPN технологией — L2TP/IPSec. Статья дописывалась и правилась на протяжении 3-х лет, рассмотрено очень много нюансов.

Резюме

PPTP – самый простой в настройке сервис VPN, однако он не соответствует современным требованиям безопасности. В добавок к этому, PPTP часто блокируют провайдеры и сотовые операторы. Поэтому, внедрение PPTP для корпоративного применения оправдано лишь в том случае, если необходимо обеспечить совместимость с существующим старым оборудованием. Благодаря своей простоте, эта разновидность VPN хорошо подходит для знакомства с принципами работы виртуальных частных сетей.

Сегодня мы настроим .

Те действия которые мы сегодня будем производить для настройки VPN на сервере под управлением Windows Server 2008R2 , могут быть применены и на Windows Server 2003 , хотя и будет выглядеть в некоторых местах по другому, но логика действий очень схожа.

Для начала нам потребуется поднять роль .

Установка роли

В Диспетчере сервера переходим в Роли - Добавить роли .

Выбираем из списка

Откроется информационное окно где вы можете ознакомиться с информацией о Службе политики сети и доступа , после нажимаем «Далее ».

Выбираем из списка “Службы маршрутизации и удаленного доступа” и все вложенные подпункты, нажимаем Далее .

Все необходимые данные собраны, нажимаем кнопку “Установить” .

Роль успешно установлена нажимаем кнопку “Закрыть”

После установки роли необходимо настроить ее, чем мы и займемся.

Настройка роли “Службы маршрутизации и удаленного доступа”

Переходим в диспетчер сервера, раскрываем ветку “Роли” , выбираем роль “Службы политики сети и доступа” , разворачиваем, кликаем правой кнопкой по “Маршрутизация и удаленный доступ” и выбираем “Настроить и включить маршрутизацию и удаленный доступ” , выставляем следующие параметры:

Откроется окно “Мастера установки сервера маршрутизации и удаленного доступа” после ознакомления нажимаем кнопку “Далее”

В окне “Конфигурация” выбираем пункт “Особая Конфигурация” нажимаем “Далее”

В окне “Настраиваемая конфигурация” выбираем “Доступ к виртуальной частной сети (VPN)” нажимаем “Далее”

В следующем окне нажимаем “Готово”

Вам будет предложено запустить службу, что мы и сделаем нажав на кнопку “Запустить службу”

Ну вот у нас все готово для того чтобы перейти непосредственно к настройке PPTP VPN на сервере под управлением Windows Server 2008R2 .

Настройка PPTP VPN на сервере под управлением Windows Server 2008R2 .

В том случае если у вас уже была установлена роль “Службы политики сети и доступа ” убедитесь в том, что увас выставлены следующие настройки:

Открываем Диспетчер сервера - Роли - Маршрутизация и удаленный доступ , щелкаем по роли правой кнопкой мыши и выбираем Свойства , на вкладке Общие проверяем, что стоит галочка в поле IPv4-маршрутизатор , выбрана опция “локальной сети и вызова по требованию” , а так же IPv4-сервер удаленного доступа :

Теперь нам необходимо проверить настройки Безопасности подключений . Для этого переходим на вкладку Безопасность и проверяем параметры для Методы проверки подлинности , должны стоять следующие галочки на Протокол EAP и Шифрованная проверка (Microsoft, версия 2, MS-CHAP v2) :

Далее переходим на вкладку IPv4 , там проверяем какой интерфейс будет принимать подключения VPN и пул адресов для выдачи VPN клиентам (Интерфейсом выставьте Разрешить RAS выбирать адаптер ):

После нажатия на кнопку ОК служба будет перезаружена, и роль VPN сервера будет добавлена. Теперь у вас появился новый пункт под названием Порты . Теперь нам необходимо отключить службы которые мы не планируем использовать и настроить PPTP. Нажмите на пункт Порты - правой клавишей мыши и выберите пункт свойства . В открывшемся окне выберите WAN Miniport (PPTP) и нажмите настроить внизу формы. Выставьте все как на скриншоте ниже:

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

Следующим этапом будет настройка разрешений для пользователей. Переходим в “Диспетчер сервера – Конфигурация- Локальные пользователи и группы – Пользователи”, Выберите пользователя которому вы хотите разрешить подключатся к данному серверу по VPN и нажмите на пользователе правой кнопкой мыши - Свойства. На вкладке Входящие звонки - Права доступа к сети - выставьте Разрешить доступ . (Если Ваш сервер работает под управлением Active Directory, то настройки необходимо вводить в оснастке Active Directory ):

Для нормального функционирования vpn-сервера необходимо открыть следующие порты:

Для PPTP: 1723 (TCP);
Для L2TP: 1701 (TCP) и 500 (UDP);
Для SSTP: 443 (TCP).

На этом настройка закончена. Можете создать подключение и попробовать подключится. Что бы посмотреть подключенных клиентов на данный момент используйте оснастку Маршрутизация и удаленный доступ - Клиенты Удаленного доступа . Так же для контроля и диагностики используйте журнал событий Служб политики сети и доступа.

Хотелось бы напомнить, что подключение с использованием PPTP VPN являются не самыми безопасными , так как авторизация происходит по паре Логин - Пароль. Лучше для более безопасной работы настроить L2TP соединение по предварительному ключу, что позволит существенно повысить безопасность VPN соединения и использовать IPSec .

Не забудьте пробросить порт на Вашем маршрутизаторе и открыть его в FireWall:

  • PPTP - TCP порт 1723 (Прием\Отправка)

О том, как подключиться к vpn-серверу из Windows 7 можно прочитать .

О том, как подключиться к vpn-серверу из Mac OS X можно прочитать .

О том, как настроить VPN сервер - L2TP на платформе Windows server 2008 / 2008R2 можно прочитать .

Вероятно, многие пользователи слышали о таком термине, как «соединение PPTP». Что это такое, некоторые не представляют себе даже отдаленно. Однако, если описывать принципы установки соединения на основе этого протокола простым языком, понять их совершенно нетрудно.

Соединение PPTP: что это?

Подключение такого типа строится на основе одноименного протокола, сокращение в названии которого происходит от английского point-to-point tunneling protocol, что дословно можно перевести как «туннельный протокол типа «точка-точка». Иными словами, это соединение между двумя абонентами посредством передачи пакетов данных в зашифрованном виде через незащищенные сети на основе TCP/IP.

Тип соединения PPTP позволяет преобразовывать так называемые кадры PPP в стандартные IP-пакеты, которые и передаются, например, посредством того же интернета. И хотя, как считается, протокол PPTP по уровню безопасности уступает некоторым другим вариантам вроде IPSec, он сегодня имеет достаточно большое распространение, ведь, по сути, пользователь имеет дело с одной из разновидностей VPN-подключений (беспроводное соединение).

Соединение PPTP: для чего нужно его использование?

Сфера применения этого протокола весьма обширна. Прежде всего, такой вид соединения между двумя пользователями позволяет не только защитить передаваемую информацию, но и существенно экономить на дальних звонках.

Кроме того, этот протокол бывает очень часто незаменим при обеспечении связи между двумя локальными сетями именно посредством передачи пакетов в интернете по защищенной линии (туннелю) без задействования прямого соединения между ними. То есть, непосредственного контакта две локальные сети не имеют и используют туннель в качестве посредника.

С другой стороны, туннелирование на основе PPTP может применяться и при создании соединения типа «клиент-сервер», когда пользовательский терминал подключается к серверу по защищенному каналу.

Реализация PPTP в разных ОС

Теперь немного отвлечемся и с другой стороны посмотрим на соединение PPTP. Что это такое, с момента разработки протокола корпорацией Microsoft, тогда мало кто понимал. И впервые в полноценном варианте он был реализован компанией Cisco.

Тем не менее и специалисты Microsoft не отставали. Начиная с версии Windows 95 OSR2, возможности создания подключения на основе PPTP появились и в более поздних программных продуктах, причем даже со встроенными средствами настройки PPTP-сервера. Далее в качестве примера будет рассмотрено PPTP-соединение Windows 7, тем более что именно эта система на сегодняшний день остается наиболее популярной у большинства пользователей.

В системах Linux до недавнего времени полной поддержки этой технологии не было. Она появилась только в модификации 2.6.13, а официально была заявлена в версии ядра 2.6.14.

Системы FreeBSD и Mac OS X поставляются со встроенными PPTP-клиентами. КПК Palm, имеющие поддержку беспроводного соединения Wi-Fi, оборудованы клиентом Mergic.

Начальные условия для корректного соединения

Использование туннелирования является достаточно специфичным. Настройка PPTP-соединения предполагает использование TCP-порта 1723 и в обязательном порядке - протокола IP GRE с номером 47.

Из этого следует, что настройка если таковой имеется, или встроенного брэндмауэра Windows должна быть такой, чтобы IP-пакеты могли проходить свободно и без ограничений. Это касается не только пользовательских машин или локальных сетей. В равной степени такая свободная передача туннелированных данных должна обеспечиваться и на уровне провайдера.

В случае использования NAT на промежуточной стадии передачи данных соответственно должна быть настроена обработка VPN в этом сегменте.

Общие принципы работы и подключения

Мы рассмотрели достаточно кратко соединение PPTP. Что это такое, многим, наверное, уже хоть немного понятно. Полная ясность в вопрос будет внесена после рассмотрения основных принципов функционирования протокола и связи на его основе, а также в разделе, где будет показан процесс установки по шагам соединения PPTP GRE.

Итак, соединение между двумя точками устанавливается на основе обычной PPP-сессии на основе протокола GRE (инкапсуляция). Второе подключение непосредственно на порте TCP отвечает за управление GRE и инициацию.

Сам передаваемый пакет IPX состоит собственно из данных, иногда называемых полезной нагрузкой, и дополнительной управляющей информации. Что происходит при получении пакета на другом конце линии? Соответствующая программа для PPTP-соединения как бы извлекает содержащуюся в цельном пакете IPX информацию и отправляет ее на обработку при помощи средств, соответствующих собственному протоколу системы.

Кроме того, одной из важных составляющих туннельной передачи и приема основной информации является обязательное условие использования доступа при помощи комбинации «логин-пароль». Конечно, взломать логины и пароли на стадии получения можно, но вот в процессе передачи информации через защищенный коридор (туннель) - никак.

Средства защиты соединения

Как уже говорилось, туннелирование на основе протокола PPTP защищенным абсолютно во всех аспектах не является. Однако, если учесть, что при применяются такие средства, как EAP-TLS, MSCHAP-v2 или даже MPEE, можно говорить о достаточно высокой степени защиты.

Иногда для повышения уровня безопасности могут применяться ответные звонки (дозвоны), при которых передающая или принимающая сторона производит подтверждение подключения и передачи информации программным способом.

Настройка PPTP собственными средствами Windows 7: параметры сетевого адаптера

Настроить PPTP-соединение в любой системе Windows достаточно просто. Как уже говорилось, в качестве примера берем «семерку».

Сначала нужно зайти в «Центр управления сетями и общим доступом». Сделать это можно либо из «Панели управления». Либо из меню, вызываемого правым кликом на значке интернет- или сетевого подключения.

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

В новом окне используем свойства протокола TCP/IPv4. В окне настроек следует прописать параметры, предоставленные провайдером при подключении (в большинстве случаев устанавливается автоматическое получение адресов для IP и DNS-серверов).

Сохраняем изменения и возвращаемся к подключению по локальной сети, где нужно проверить, активно ли оно в данный момент. Для этого используется правый клик. Если в самой верхней строке указано «Отключить», значит соединение активно. В противном случае включаем его.

Создание и настройка параметров VPN

На следующем этапе нужно создать VPN-подключение. Для этого в разделе «Центра управления» в правой части окна используем строку создания нового подключения.

После этого выбираем подключение к рабочему месту, а затем - использование существующего подключения к интернету.

Далее откладываем настройку-интернет-соединения, а в следующем окне указываем интернет-адрес оператора VPN и вводим произвольное имя (обязательно внизу ставим галочку напротив строки «Не подключаться сейчас»).

После этого вводим логин и пароль, если таковые предусмотрены договор на предоставление услуг, и жмем кнопку «Создать».

В списке доступных подключений выбираем только что созданное и в новом окошке нажимаем кнопку свойств. Далее действовать нужно предельно аккуратно. На вкладке безопасности в обязательном порядке необходимо установить следующие параметры:

  • тип VPN: автоматический;
  • шифрование данных: необязательное;
  • разрешения протоколов: CHAP и CHAP версии 2.

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

Стоит ли использовать сторонние утилиты?

На вопрос установки дополнительных PPTP-серверов или клиентов пользователи реагируют по-разному, однако большинство из них сходится во мнении, что настройка и использование встроенного модуля Windows выглядит намного предпочтительнее в плане простоты.

Можно, конечно, инсталлировать что-то вроде пакета pfSense, представляющего собой межсетевой экран-маршрутизатор, однако его «родной» клиент Multilink PPP Daemon имеет множество проблем с использованием Windows-серверов на основе PPTP в плане распределения использования протокола аутентификации между клиентом и сервером в хотя на домашних пользовательских терминалах таких проблем замечено не было. В настройке эта утилита, равно как и любые другие, гораздо сложнее, и без специальных знаний указать правильные параметры или исправить постоянный «слет» пользовательского IP-адреса не представляется возможным.

Можно попробовать и некоторые другие клиентские или серверные утилиты, предназначенные для установки соединения PPTP, однако какой смысл загружать систему ненужными программами, когда в любой ОС Windows есть собственные средства? Более того, некторые программы не только сложны в настройке, но еще и могут вызывать конфликты на программном и физическом уровне. Так что лучше ограничиться тем, что есть.

Вместо послесловия

Вот, собственно, и все, что касается протокола PPTP, а также создания, настройки и использования туннельного соединения на его основе. Что касается его использования, для рядового пользователя оно не оправдано. Просто возникают законные сомнения в том, что кому-то может понадобиться защищенный канал связи. Если уж и требуется защитить свой IP, лучше использовать анонимные прокси-серверы в интернете или так называемые анонимайзеры.

Зато для обеспечения взаимодействия между локальными сетями коммерческих предприятий или любых других структур, установка PPTP-соединения может стать самым простым выходом. И хоть такое подключение на все сто безопасность не обеспечит, тем не менее доля здравого смысла в его задействовании есть.