Поиск по сайту Поиск

Как создать и настроить свой VPN-сервер

Сейчас на рынке существует множество готовых VPN-сервисов, но не все они достаточно надежны и стабильны. К тому же большинство из них имеют низкую скорость передачи данных, из-за чего страницы загружаются очень долго. Решить эти проблемы легко — для этого достаточно создать собственный VPN-сервер. О том, как поднять свой VPN на сервере, расскажем ниже.

Зачем нужен VPN

VPN (виртуальная частная сеть) — это технология, которая обеспечивает безопасное и защищенное подключение к интернету. Она создает виртуальный туннель между вашим устройством и глобальной сетью, шифрует все данные и направляет их через удаленный сервер. VPN используется для шифрования трафика, изменения IP-адреса и местоположения пользователя. С помощью VPN вы можете безопасно работать в незащищенной сети (такой, как Wi-Fi в кафе или отеле) и не бояться, что ваши данные перехватят злоумышленники. Также VPN помогает обойти блокировки различных ресурсов.

Что такое OpenVPN

OpenVPN — популярная реализация технологии VPN с открытым исходным кодом. С его помощью вы можете создать собственный VPN-сервер с высоким уровнем безопасности гибкими настройками. OpenVPN поддерживает Windows, MacOS, Linux, Android, iOS и ChromeOS, поэтому вы сможете использовать его на разных устройствах.

Как арендовать и настроить свой ВПН-сервер

Чтобы обзавестись собственным VPN, вам необходимо арендовать облачный сервер VPS и развернуть на нем OpenVPN. Конфигурация сервера может быть любой, поэтому подойдет даже минимальный тариф. При заказе сервера нужно выбрать операционную систему Ubuntu 20.04:

Аренда и настройка VPN-сервер

Создаем собственный VPN-сервер: установка OpenVPN

Мы производили установку на сервер с ОС Ubuntu 20.04 — для других версий процесс установки и настройки может отличаться. Чтобы начать установку, подключитесь к серверу по SSH.

Установка пакетов

  1. Обновите списки пакетов с помощью команды:
  1. Установите пакеты, необходимые для установки и настройки OpenVPN:

Настройка удостоверяющего центра

После установки пакетов необходимо развернуть на сервере центр сертификации и сгенерировать корневой сертификат. Для этого: 

  1. Скопируйте необходимые файлы в папку /etc/openvpn/, а затем перейдите в нее:
  1. Создайте удостоверяющий центр и корневой сертификат:

После ввода последней команды вам будет предложено ввести кодовую фразу. Указанный вами пароль в дальнейшем будет использоваться для подписи сертификатов и ключей.

У вас появятся 2 файла:

  • /etc/openvpn/easy-rsa/pki/ca.crt — сертификат CA
  • /etc/openvpn/easy-rsa/pki/private/ca.key — приватный ключ CA. 
  1. Создайте директорию, в которой будут храниться ключи и сертификаты:
  1. Переместите в созданную папку сертификат CA:

Создание запроса сертификата и закрытого ключа сервера OpenVPN

  1. Создайте закрытый ключ для сервера и файл запроса сертификата с помощью команды:
  1. Подпишите созданный сертификат ключом сертификационного центра:

Затем введите «yes» и нажмите Enter. После введите кодовую фразу, которую вы задали при настройке удостоверяющего центра. 

  1. Скопируйте сгенерированный сертификат и ключ в директорию /etc/openvpn/certs/:
  1. Сгенерируйте файл параметров Diffie–Hellman:
  1. Создайте ключ HMAC с помощью команды:

Теперь в директории /etc/openvpn/certs/ должно быть 5 файлов. Проверить это можно с помощью команды:

Вывод должен выглядеть следующим образом:

Создание ключей клиентов OpenVPN

  1. Сгенерируйте закрытый ключ и запрос сертификата клиента:
  1. Затем подпишите запрос с помощью команды:

Введите «yes» и нажмите Enter. Затем введите кодовую фразу, которую вы задали при настройке удостоверяющего центра. 

Запуск сервера OpenVPN

Создание конфигурационного файла OpenVPN

Теперь приступим к созданию конфигурационного файла. Для этого:

  1. Введите команду:
  1. Скопируйте и вставьте в файл конфигурацию:

Обратите внимание! Если подсеть 10.8.0.0/24 уже занята, то в параметре server нужно указать другой IP-адрес, например, 10.10.0.0.

Сохраните изменения и закройте файл, нажав Ctrl+X, Y, Enter.

Проверка корректной работы сервера OpenVPN

  1. Проверьте, не возникают ли ошибки при запуске конфигурационного файла, с помощью команды:

Если все работает, то вы увидите сообщение «Initialization Sequence Completed»:

  1. Если ошибок нет, запустите службу OpenVPN и добавьте ее в автозагрузку:
  1. Проверьте, работает ли служба, с помощью команды:

Включение маршрутизации трафика на OpenVPN-сервере

Теперь необходимо настроить маршрутизацию трафика для доступа к глобальной сети. Для этого:

  1. Создайте директорию /root/bin/:
  1. Введите команду:
  1. Добавьте в файл конфигурацию:

Если при создании конфигурационного файла OpenVPN вы задавали подсеть, отличную от 10.8.0.0/24, то укажите свое значение подсети в параметре PRIVATE.

В параметре DEV нужно указать сетевой интерфейс, который используется для выхода в интернет. Узнать его можно с помощью команды:

После добавления конфигурации сохраните изменения и закройте файл с помощью клавиш Ctrl+X, Y, Enter.

  1. Задайте права для файла: 
  1. Выполните тестовый запуск скрипта:
  1. Если ошибок нет, добавьте скрипт в автозагрузку. Для этого создайте файл:
  1. Добавьте в него следующие данные:

Чтобы сохранить файл и закрыть его, нажмите Ctrl+X, Y, Enter.

  1. Добавьте созданную службу в автозагрузку:

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

Теперь необходимо создать файл конфигурации .ovpn для подключения клиента к VPN. Для этого откройте любой текстовый редактор и добавьте в него конфигурацию:

В параметре remote вместо 123.123.123.123 укажите IP-адрес вашего сервера. В тегах вставьте содержимое сгенерированных ранее файлов:

  • <ca></ca> — вставьте данные из файла /etc/openvpn/certs/ca.crt,
  • <cert></cert> — вставьте данные из файла /etc/openvpn/easy-rsa/pki/issued/client1.crt,
  • <key></key> — вставьте данные из файла /etc/openvpn/easy-rsa/pki/private/client1.key,
  • <tls-auth></tls-auth> — вставьте данные из файла /etc/openvpn/certs/ta.key.

Вы можете вывести содержимое файла в терминал, затем скопировать его и вставить в конфигурацию. Чтобы вывести содержимое файла, воспользуйтесь командой:

После внесения всех изменений сохраните конфигурационный файл с расширением .ovpn.

Чтобы подключиться к нашему VPN, необходимо скачать клиент OpenVPN для вашего устройства и импортировать в него созданный конфигурационный файл .ovpn. 

⌘⌘⌘

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

Победить конкурентов и увеличить выручку: кейс горизонтального масштабирования клиники

Рассказываем путь развития стоматологической клиники к повышению выручки на 40% с сохранением рентабельности.
Read More

Руководство по CI/CD в GitLab для новичка

В статье разбираем, как устроена практика CI/CD, какие у нее нюансы и преимущества использования. А также расписываем пошаговый процесс использования...
Read More

Что такое GitLab, кому нужен, как пользоваться

GitLab — платформа для совместной разработки. Она позволяет командам организовывать свои процессы от планирования до мониторинга и может работать в...
Read More

Как продавать представителям разных поколений

Рассказываем, как работает теория поколений и чем она оказывается полезной для маркетинга в малом и среднем бизнесе.
Read More

Как привлечь новую аудиторию и победить конкурентов. 3 кейса-стратегии

На примере трёх кейсов разбираем трансформацию продуктов на основе методологии jobs-to-be-done.
Read More

Что стоит автоматизировать в бизнесе с самого начала

Экономить силы, время и деньги – это база, а не привилегия. Автоматизируйте процессы и уделяйте внимание стратегическим задачам.
Read More

Как составить бизнес-план: пошаговая инструкция

Бизнес-план — стратегия развития проекта, без которой не стоит начинать ни один бизнес. Рассказываем, как правильно его составить.
Read More

Сильная презентация для инвесторов: от содержания до выступления

Всё про качественную презентацию для инвесторов. Что разместить на слайдах, как держаться на встрече и увеличить свои шансы на сделку.
Read More

Дёшево и эффективно: как малому бизнесу продвигать свой сайт

Как выделиться среди конкурентов и получить внимание потенциальных клиентов. Бюджетные методы продвижения сайта – в этом обзоре.  
Read More

Как перевести бизнес в онлайн: 7 шагов

Пошаговая инструкция по переводу существующего бизнеса в онлайн: от создания сайта до начала продаж и запуска рекламы.
Read More