Соединение PPTP — что это такое? Как настроить VPN с помощью PPTP Vpn pptp настройка подключения

В этой статье мы рассмотрим настройку 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, мы переходим к настройке клиентского подключения PPTP. Для начала хотелось бы вспомнить на всякий случай, что для работы протокола PPTP используется две сетевых сессии: для передачи данных устанавливается PPP сессия с помощью протокола GRE, и соединение на ТСР порту 1723 для инициализации и управления соединением.

Соответственно не забываем создавать правило для GRE. Как создать такие правила в штатном фаерволе, если вы напрямую подключены к интернету, можно почитать . Если вы находитесь за маршрутизатором, то можно почитать тут.

Но мы же все это уже читали-знаем. Поэтому примемся за настройку клиентского VPN соединения под PPTP.

Для начала необходимо зайти в Панель управления , в Win7 для этого стоит всего лишь нажать Пуск . и перейти в Панель управления . Далее в зависимости от настроек отображения мы либо нажимаем Сеть и Интернет -> -> . Либо же переходим сразу в Центр управления сетями и общим доступом -> Настройка нового подключения или сети .

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

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

Подключение у нас успешно создалось. Теперь необходим его настроить. Переходим в раздел Изменение параметров адаптеров с окна Центр управления сетями и общим доступом .

Там ищем наше VPN подключение и с помощью ПКМ переходим в пункт меню Свойства . На вкладке Безопасность в тип VPN выбираем PPTP.По сути это и все. На стороне клиента по протоколу PPTP больше настраивать и нечего.

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) должны быть согласованы с сервером.


сайт

Приветствуем Вас на нашем сайте! В этой инструкции вы узнаете, как настроить VPN-подключение по протоколу PPTP для операционной системы Windows 7.

Напомним, VPN (Virtual Private Network) – это технология, которую используют для доступа к защищенной сети (сетям) посредством общедоступной сети Интернет. При помощи VPN-канала можно защитить свою информацию, зашифровав ее и передав внутри VPN-сессии. Кроме этого VPN является дешевой альтернативой дорогостоящему выделенному каналу связи.

Для настройки VPN по протоколу PPTP для ОС Windows 7 Вам понадобятся:

  • ОС Windows 7;
  • адрес VPN-сервера, к которому будет осуществляться подключение по протоколу PPTP;
  • логин и пароль.

На этом теоретическая часть закончена, приступим к практике.

1. Открываем меню "Пуск " и переходим в "Панель управления " Вашим компьютером

2. Затем выбираем раздел "Сеть и Интернет"

3. В открывшемся окне выбираем "Центр управления сетями и общим доступом"

4. На следующем этапе выбираем пункт "Настройка нового подключения или сети"

5. Во вновь открывшемся окне выбираем пункт "Подключение к рабочему месту"

6. В новом окне выбираем пункт "Использовать мое подключение к Интернету (VPN)"

8. В открывшемся окне в поле "Интернет-адрес" вводим адрес вашего VPN-сервера, в поле "Имя местоназначения" вводим название подключения, которое можно выбрать произвольно

9. В следующем окне вводим логин и пароль, которые прописаны на сервере VPN. В поле "Запомнить этот пароль" ставим "галочку", что бы не вводить его при каждом подключении

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

11. После этого заходим снова в меню Пуск, затем в Панель управления, Сеть и Интернет, Управление сетями и общим доступом, где выбираем пункт "Изменение параметров адаптера"

12. Находим в этом окне наше VPN-подключение, кликаем по нему правой кнопкой мышки и переходим в его свойства

14. В этом же окне, только на вкладке «Сеть» убираем "галочки" напротив пунктов: "Клиент для сетей Microsoft" и "Служба доступа к файлам и принтерам сетей Microsoft"

На этом настройка VPN по протоколу PPTP для операционной системы Windows 7 завершена и VPN-соединение готово к использованию.

Один из часто задаваемых нашими пользователями вопросов - как добавить другой 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, но все же обеспечивает дополнительный уровень безопасности Вашего трафика.