Openvpn на vps за несколько минут

SKZHPRVT

Бывалый
ЮБИЛЕЙНАЯ ЛЕНТА

SKZHPRVT

Бывалый
ЮБИЛЕЙНАЯ ЛЕНТА
Регистрация
12 Июн 2018
Сообщения
549
Реакции
283
Репутация
0
Род занятий

Обнал, дебетовые карты

Введение

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

Скрипт позволяет одной командой создать работающий сервер и создать файлы конфигурации для клиентов в unified формате (то есть с сертификатами, включёнными в файл конфигурации). Кстати, эти файлы подходят для мобильных устройств.

Скрипт создавался для машин с CentOS 7.x или Ubuntu Server 17.x, использование на Ubuntu 16.x. возможно, но там OpenVPN 2.3.x в репозиториях. При необходимости можно добавить другие дистрибутивы, но обычно при покупке VPS можно выбрать систему и это не так важно.

Скрипт написан на bash за пару часов, возможны ошибки и наверняка что-то можно было реализовать проще и лучше.

Запускайте скрипт на свежей машине, он перезаписывает правила iptables и конфигурацию OpenVPN. И да, в правилах iptables разрешен порт ssh 22, если вы поменяли его на другой, не забудьте поменять порт в скрипте.

Особенности

  1. По умолчанию рекомендуется cipher AES-256-GCM (что достаточно безопасно на данный момент);
  2. По умолчанию используется auth SHA256 (вместо дефолтного SHA1);
  3. По умолчанию для OpenVPN 2.4.x используется tls-crypt (что усложняет обнаружение трафика OpenVPN);
  4. По умолчанию использует Google DNS и блокировку локальных DNS (setenv opt block-outside-dns) для предотвращения DNS Leak;
  5. Создаются все нужные правила в iptables и ip6tables;
  6. Есть поддержка IPv6.

Как пользоваться

Использовать скрипт очень просто, скачайте файл openvpnsetup.sh на ваш VPS, дайте ему права на запуск chmod +x openvpnsetup.sh и запустите ./openvpnsetup.sh. В результате вы получаете настроенный сервер, готовый к работе на выбранном вами порту.

В папке /etc/openvpn создается скрипт newclient.sh, который нужен для создания файлов конфигурации клиентской части, использовать его так же просто — ./newclient.sh clientname. Результатом будет файл /etc/openvpn/bundles/clientname.ovpn, который сразу можно использовать на клиенте, просто положите его в папку config (в случае использования на Windows) на вашей машине.

Если вы захотите пересоздать сервер, просто удалите все из папки /etc/openvpn и запустите скрипт заново (естественно, клиентские сертификаты надо будет перевыпустить).

Скрипт доступен на

Пожалуйста Авторизуйтесь или Зарегистрируйтесь для просмотра скрытого текста.

.


Пожалуйста Авторизуйтесь или Зарегистрируйтесь для просмотра скрытого текста.

 

Ego111

Участник
ЮБИЛЕЙНАЯ ЛЕНТА

Ego111

Участник
ЮБИЛЕЙНАЯ ЛЕНТА
Регистрация
23 Ноя 2018
Сообщения
33
Реакции
17
Репутация
6
Спасибо за инфу, а то я как нуб все руками делал) и то малую часть того, что описано в статье
 
Сверху