Создание своего VPN сервера за 10 минут: подробное руководство (часть 2)


5

Добрый день!

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

Список статей:
 

Обратите внимание! Если вам просто нужен свой VPN сервер и вы не хотите разбираться и тратить время, для вас есть специальная статья: Свой VPN сервер бесплатно за 5 минут, ИТ знаний не требуется.
спросил 23 февраля 2017 Дмитрий в категории Сис. администрирование
1 Ответ
5
Лучший ответ

Итак, в первой части статьи мы запустили собственный сервер на операционной системе Linux CentOS в Германии. Теперь мы его настроим, после чего ваш VPN будет работать бесконечно долгое время и не требовать никаких дополнительных действий или настроек.

Примечание: Если вы никогда ранее не настраивали сервер на Linux, не пугайтесь! Вам будет необходимо подключиться по протоколу SSH к серверу и просто скопировать команды.

Для настройки VPN сервера вам понадобится подключиться к нему по протоколу SSH, как это сделать подробно описано в моей статье: Как подключиться по SSH: подробная инструкция.

Пошаговая инструкция по настройке VPN сервера

1. Подключитесь к вашему серверу по SSH через программу Putty, как описано выше. IP адрес, логин и пароль были высланы вам на почтовый ящик после создания сервера. При первом подключении будет необходимо сменить пароль от пользователя root, рекомендую использовать пароль, длиной не менее 10 символов, содержащий в себе большие и маленькие буквы и цифры.

Вы готовы к настройке VPN сервера

2. Установите программу - VPN сервер, для этого выполните команды:

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

3. Выполните первоначальную настройку PPTP, для этого откройте файл конфигурации для редактирования с помощью команды:

vi /etc/pptpd.conf

Удалите все содержимое файла, для этого зажмите клавишу "d" (двойное нажатие "d" удаляет строчку целиком). Нажмите клавишу "i" для перехода в режим редактирования и скопируйте в пустой файл следующие строки:

option /etc/ppp/options.pptpd
logwtmp
localip 10.0.0.1
remoteip 10.0.0.100-200

Нажмите клавишу Esc быстро 2 раза, после этого введите ":wq" для выхода из редактора с сохранением и нажмите Enter.

4. Теперь вам необходимо создать пользователей, под которыми вы будете подключаться по VPN. Не рекомендую создавать более 20-30 пользователей на самом дешевом сервере DigitalOcean. 

Введите команду:

vi /etc/ppp/chap-secrets

Отредактируйте и сохраните файл, аналогично тому, как вы это сделали в пункте 3. Содержание файла должно быть примерно таким:

user1 pptpd passw0rd *

user2 pptpd qwerty123 *

Каждая строчка должна содержать данные одного пользователя через пробел: логин, протокол, пароль и IP адрес. Пример:

voprosoff  pptp  1QAZ2wsx  *

Настройка пользователей на VPN сервере

5. Настройте DNS серверы, для этого откройте файл:

vi /etc/ppp/options.pptpd

и напишите в самом конце следующие строки:

ms-dns 8.8.8.8
ms-dns 8.8.4.4

6. Теперь вы наконец можете запустить ваш VPN сервер и проверить его работу. Для запуска VPN сервера выполните команду:

service pptpd restart

Чтобы увидеть, что VPN сервер поднялся и работает, введите команду:

netstat -alpn | grep :1723

Если все хорошо, то вы увидите следующее:

VPN сервер запущен и работает

Ваш VPN сервер настроен и работает! Осталась пара завершающих шагов. 

Автор считает, что эти материалы могут вам помочь:
  • Создание своего VPN сервера за 10 минут: подробное руководство (часть 1)
  • /var/run/php5-fpm.sock уже должен присутствовать на сервере? в ubuntu 16.04 не нашел такого файла в /var/run
  • Установка и настройка NGINX + PHP (php-fpm) на Linux сервере
  • Установка и настройка GSM сигнализации (часть 3)
  • 7. Откройте для редактирования файл:

    vi /etc/sysctl.conf

    и проверьте следующую строку:

    net.ipv4.ip_forward = 1

    если там 0, исправьте на 1 и сохраните.

    Для применения настроек выполните команду:

    sysctl -p

    8. Добавьте настройки файрвола с помощью команды:

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

    Если вы хотите, чтобы VPN клиенты видели друг друга по локальной сети, выполните эти команды (не обязательно):

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

    На этом можно закончить, теперь у вас есть свой VPN сервер! Первые 2 месяца он будет бесплатным, далее придется платить по 5$ в месяц. Но учитывая то, что вы можете подключить по VPN до 30 человек - это очень скромная цена. При использовании обычных VPN сервисов вы бы платили по 2-3$ за каждого клиента в месяц.

    К вашему VPN серверу можно подключаться с компьютера, телефона или планшета на Android, c iPhone или iPad, об этом читайте в заключительной части статьи.

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

    Удачи!

    Помогите автору статьи:
    вКонтакте
    Одноклассники
    Мой Мир
    Google+
    Каждый раз, когда вы делитесь этой статьей в социальной сети, ее автор становится немного счастливее! Пожалуйста нажмите на одну из кнопок выше!
    Это будет полезно для вас:
  • Установка и настройка GSM сигнализации (часть 2)
  • Установка и настройка MariaDB на CentOS - подробная инструкция
  • Как подключиться к VPN серверу с компьютера, Android, iPhone или iPad
  • Установка MySQL на Linux: подробная инструкция
  • Настройка айфона, нужна инструкция
  • Эмулятор Андроид, установка и настройка в Windows
  • Возможно ли с помощью VPN-сервиса быстро заменять ip-адреса с одного на другой ???
  • Выбор датчиков для GSM сигнализации (часть 2)
  • ответил 23 февраля 2017 Эксперт Дмитрий (23,034 баллов)
    отредактирован 26 апреля 2017 Эксперт Дмитрий
    Николай, спасибо за развернутый комментарий!

    Про Украину - спасибо за наводку. Попробовал - действительно быстро.

    Разные дешевые варианты VPS тоже пробую, сделаю отдельный обзор.
    Все получилось, спасибо!

    Не могу понять user2 pptpd qwerty123 * 

    вот эта звездочка что означает? и какой ip адрес нужно вбивать? моего сервера или рандомный? 

    Добрый вечер!

    * и означает звездочку в данном случае :) Это IP адрес, с которого может подключаться клиент. В данном случае * означает любой IP адрес, рекомендую так и оставить *.
    Смена порта подключения для PPTPD VPN сервера
    Новые статьи:
  • Что делать, если пересолили мясо или рыбу: все способы
  • Как отмерить сахар без весов: ложкой, стаканом, таблица весов
  • Калифорнийская сияющая кошка: описание, фото, характер
  • Можно ли пить минеральную воду – дозировка и особенности
  • Гималайская кошка – описание породы, характер, фото
  • «Смарт для своих» - описание тарифа МТС в 2018 году
  • Как поставить кавычки «Ёлочки» в Word и браузере - все способы
  • Как полностью удалить DriverPack Solution или Cloud
  • Что за файл run.hta в папке bin\Tools и как убрать окно
  • Приложению заблокирован доступ к графическому оборудованию - как исправить
  • Котлеты из фарша без хлеба - мой проверенный вкусный рецепт
  • Что за ошибка «Прекращена работа Java TM Platform SE binary»?
  • Failed to initialize authentication interface exiting - что делать?
  • Как отключить Secure Boot в Bios HP - инструкция
  • Жесткий диск издает звуки — расшифровка
  • Артефакты при загрузке Windows и Bios — устранение проблемы