Различия

Показаны различия между двумя версиями страницы.


Предыдущая версия
nastrojka_servera_openvpn_na_openvz [2025/07/06 12:39] (текущий) – внешнее изменение 127.0.0.1
Строка 1: Строка 1:
 +====== Настройка сервера OpenVPN на OpenVZ ======
  
 +Читайте также: [[https://bestvpn.report/openvpn-centos/|How to Install OpenVPN on CentOS 7]] актуально на 2022.
 +
 +**Окружение:**
 +  * [[OpenVZ]] Hardware Node(HD) [[CentOS]] 6.5 (Final),
 +  * Virtual Environment(VE) [[Ubuntu]] 14.04.1 LTS,
 +  * OpenVPN 2.3.2,
 +  * Easy-RSA 2.2.
 +
 +===== Инсталляция VE(VPS, VDS) =====
 +
 +  * Инсталлируем VE Ubuntu для OpenVZ<file>
 +# cd /vz/template/cache/
 +# wget -c http://download.openvz.org/template/precreated/ubuntu-14.04-x86_64-minimal.tar.gz
 +# vzctl create 111 --layout simfs --ostemplate ubuntu-14.04-x86_64-minimal
 +CT configuration saved to /etc/vz/conf/111.conf
 +</file>
 +  * Настраиваем VE 111.conf.
 +  * [[openvz?&#ustanovka_tun_tap_dlja_openvpn_na_openvz_ve|Установка tun/tap для OpenVPN на OpenVZ VE]]
 +  * Все остальные настройки производим уже в установленной VE<file>
 +# vzctl enter 111
 +</file>
 +===== Создание ключей =====
 +  * Создание ключей при помощи утилиты Easy-RSA. Ранее эта утилита входила в дистрибутив сервера OpenVPN, сейчас она отдельный проект. Последнюю версию утилиты можно скачать с сайта OpenVPN, но правильнее использовать версию поставляемую с вашим дистрибутивом ОС.<file>
 +aptitude install easy-rsa
 +</file>
 +  * Перед тем как запустить демон OpenVPN, нам нужны в каталоге /etc/openvpn/keys<file>
 +openssl.cnf — файл конфигурации OpenSSL;
 +server.conf — файл конфигурации сервера OpenVPN;
 +ca.crt — cертификат удостоверяющего центра;
 +vpn-server.crt — cертификат сервера OpenVPN;
 +server.key — приватный ключ сервера OpenVPN, секретный;
 +crl.pem — cписок отзыва сертификатов;
 +dh.pem — файл Диффи-Хелмана для обеспечения защиты трафика от расшифровки;
 +ta.key — ключ HMAC для дополнительной защиты от DoS-атак и флуда
 +</file>
 +  * Копируем директорию easy-rsa в то место где будем создавать инфраструктуру публичных ключей (Public Key Infrastructure, PKI)<file>
 +cp -R /usr/share/easy-rsa /etc/openvpn/
 +cd /etc/openvpn/easy-rsa
 +</file>Изменяем параметры по умолчанию для сертификатов в файле vars<file>
 +export KEY_COUNTRY="US"
 +export KEY_PROVINCE="CA"
 +export KEY_CITY="SanFrancisco"
 +export KEY_ORG="Fort-Funston"
 +export KEY_EMAIL="me@myhost.mydomain"
 +export KEY_OU="MyOrganizationalUnit"
 +</file>Создадим переменные окружения.<file>
 +source ./vars
 +NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/openvpn/easy-rsa/keys
 +</file>Очистим от предыдущих экспериментов. Создадим ключ Диффи-Хелмана (ключ создается некоторое время).<file>
 +./clean-all
 +./build-dh
 +Generating DH parameters, 2048 bit long safe prime, generator 2
 +This is going to take a long time
 +...
 +</file>
 +  * Создадим директорию для хранения приватных ключей сервера OpenVPN. Скопируем туда файл Диффи-Хелмана (dh2048.pem)<file>
 +mkdir /etc/openvpn/keys
 +cp keys/dh2048.pem /etc/openvpn/keys/
 +</file>
 +  * Статический ключ [[HMAC]] для с целью дополнительной защиты от [[DoS]]-атак и flood.
 +  * Создадим **удостоверяющий центр CA**. Создадутся ca.crt и ca.key. Файл ca.key представляет собой приватный ключ центра CA, он **секретный**, и его **нельзя переносить** на другие узлы вашей сети. Файл сертификата удостоверяющего центра ca.crt, напротив, открытый, и он будет нужен на узлах серверов и клиентов OpenVPN.<file>
 +./pkitool --initca
 +</file>
 +  * Создадим сертификат для сервера с именем vpnluxor<file>
 +./pkitool --server vpnluxor
 +</file>Созданные файлы vpnluxor.crt и vpnluxor.key копируем в директорию /etc/openvpn/keys/
 +  *  Создадим сертификат для клиента client1 с одноименном параметром CommonName . Отдельный ключ для каждого клиента.<file>
 +./pkitool client1
 +</file>
 +
 +
 +
 +===== Инсталлируем OpenVPN =====
 +
 +  * Установим OpenVPN 2.3 в VE([[Ubuntu]] 14.04.1 LTS)<file>
 +aptitude install openvpn
 +</file>Для запуска раскомментируем строку<file>
 +nano /etc/default/openvpn
 +...
 +AUTOSTART="all"
 +...
 +</file>
 +  * Копируем openvpn.conf<file>
 +cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/
 +gunzip server.conf.gz
 +</file>Пробуем запустить, OpenVPN останавливает свою работу из-за несуществующих сертификатов ca.crt, dh1024.pem и других. [[openvpn?&#sozdanie_kljuchej|Создаем нужные ключи]].
 +  * В директории ccd хранятся индивидуальные настройки для каждого клиента.<file>
 +mkdir /etc/openvpn/ccd
 +</file>
 +
 +Читайте также: [[https://dieg.info/top-luchshih-vpn-i-proksi-servisov/|Лучшие VPN и Прокси Сервисы]]

📌 Удобный подбор VPS по параметрам доступен на DIEGfinder.com - официальном инструменте проекта DIEG. Это часть единой экосистемы, созданной для того, чтобы помочь быстро найти подходящий VPS/VDS сервер для любых задач хостинга.

📌 Для тестирования скриптов, установщиков VPN и Python-ботов рекомендуем использовать надежные VPS на короткий срок. Подробнее о быстрой аренде VPS для экспериментов - читайте здесь.

💥 Подпишись в Телеграм 💥 и задай вопрос по сайтам и хостингам бесплатно!