Установка и настройка PPTP VPN на Ubuntu/Debian

Для работы использовался хостинг WebHost1.ru. Поделимся с вами промокодом для webhost1.ru на скидку 5%: fb7687-5.

В этой статье мы расскажем как настроить PPTP VPN-сервер на Debian/Ubuntu для подключения с Windows или Android-устройств

Для начала под рукой мы должны иметь установленную и обновленную ОС Debian (для примера) с установленными базовыми пакетами (ssh, mc, sudo и пр.). Сервер должен иметь внешний статический ip-адрес.

Итак, начинаем.

Установим пакет ppptd c помощью команды

apt-get install pptpd

Теперь открываем на редактирование файл /etc/pptpd/pptpd-options c помощью команды


mcedit /etc/pptpd/pptpd-options 



Файл должен иметь следующее содержание

name vpn
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
ms-dns 8.8.8.8
nodefaultroute
lock
nobsdcomp

где VPN - это произвольное имя VPN-подключения 


Теперь открываем на редактирование файл /etc/pptpd/pptpd.conf с помощью команды 


mcedit /etc/pptpd/pptpd.conf 


Файл должен иметь следующее содержание

option /etc/ppp/pptpd-options
logwtmp
localip 192.168.18.1
remoteip 192.168.18.2-254
bcrelay eth0

где localip - это внутренний адрес VPN-сервера, который он получит при успешном соединении,
remoteip - пул адресов для клиентов


Далее нам необходимо создать пользователей для подключения к нашему VPN-серверу.

Для этого откроем на редактирование файл /etc/ppp/chap-secrets

и добавим в него следующее содержимое


user vpn test2021 *

,где user - имя пользователя
vpn - имя подключения
test2021 - пароль


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



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



Если у вас Debian свежих версий, то прочитать, как активировать rc.local вы можете в нашей статье



Нам также нужно активировать функцию маршрутизации на VPN-сервере, для этого необходимо раскомментировать строку

 net.ipv4.ip_forward=1

в файле /etc/sysctl.conf

Данный конфигурационный файл вступит в силу после перезагрузки сервера.
Для активации этого параметра "на лету" выполните команду


 echo 1 > /proc/sys/net/ipv4/ip_forward



Теперь остается просто перезапустить службу командой

systemctl restart pptpd

Далее на своем Android-устройстве добавьте новое VPN-подключение с типом PPTP
Введите внешний ip-адрес нашего vpn-сервера и ранее созданные логин и пароль.
Наслаждайтесь результатом своей работы.