Установка VPN с помощью PPTP
Установка и настройка PPTP с целью поднятия VPN на сервере с Centos 7 и Firewall
Al-Sher
Сегодня я решил поднять VPN на недавно арендованном VPS от ruVDS.
Начнем с простого: "Что такое VPN?". VPN является всего лишь виртуальной частной сетью, создаваемой для "поднятия" сетевых соединений поверх других сетей. Что же это дает? VPN позволяет скрыть настоящий ip адрес, а так же шифрует передаваемый через него трафик, то есть позволяет остаться частично анонимным.
Для поднятия VPN имеются различные приложения, но в этой статье мы всё внимание обратим на PPTP, так как этот способ совместим со большинством устройств, не требуя установки дополнительного ПО.
Установка
Рассматривать установку я буду именно для Centos 7 с установленным Firewall. Данную связку я выбрал лишь потому, что для меня привычнее работать с ними.
Итак, для установки необходимо выполнить установку pptpd. Выполняем команду:
yum install pptpd
Настройка сервера
Для начала отредактируем файл pptpd.conf, расположенный по пути/etc/pptpd.conf. Нам необходимо раскомментировать следующие строки:
localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245
Числовые значения могут отличаться. Разберем данные строки: localip - ip-адрес шлюза; remoteip - ip-адреса, присваиваемые клиентам.
Далее нам нужно добавить DNS-сервера для pptpd. Для этого редактируем файлpptpd-options, расположенный по пути/etc/ppp/options.pptpd. Добавим в него следующие строки:
ms-dns 8.8.8.8
ms-dns 8.8.4.4
Пользователи PPTP
Пользователи pptpd хранятся в файлеchap-secrets, который расположен в/etc/ppp/. Полный его путь:/etc/ppp/chap-secrets. Формат пользователей очень прост и даже описан в файле, мы же добавим пользователя admin с паролем webwost, который имеет доступ с любого ip адреса. Вот код:
admin pptpd webwost *
PPTP поддерживает неограниченное кол-во пользователей, поэтому, в случае необходимости, вы сможете предоставить ваш VPN для друзей и знакомых.
НастройкаForwarding
Перед тем как настраивать firewall не помешало бы перезагрузить pptpd. Давайте выполним команду
service pptpd restart
Теперь нам необходимо настроитьForwarding, чтобы позволить пользователям VPN пересылать пакеты между публичным и внешним IP. Для этого редактируем файл/etc/sysctl.conf, добавив в него следующую строку:
net.ipv4.ip_forward = 1
Применяем изменения:
sysctl -p
Настройка firewall
Ну что же, pptpd настроен, теперь нам необходимо настроить firewall. Давайте сначала откроем необходимый порт, то есть 1723/tcp. Выполняем команду:
firewall-cmd --permanent --zone=public --add-port=1723/tcp
Далее было бы неплохо добавить правила для ipv4 и ipv6:
firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -p gre -j ACCEPT
firewall-cmd --permanent --direct --add-rule ipv6 filter INPUT 0 -p gre -j ACCEPT
firewall-cmd --permanent --zone=public --add-masquerade
Перезагружаем firewall:
firewall-cmd --reload
Заключение
Вот теперь наш VPN должен работать стабильно. Для проверки можно подключиться к нему и проверить Ваш ip, например на 2ip.ru.
На этом я заканчиваю данную статью и надеюсь, что у Вас не возникло сложностей с установкой PPTP на Centos 7.