Настройка сервера OpenVPN на OpenVZ
Читайте также: How to Install OpenVPN on CentOS 7 актуально на 2022.
Окружение:
- Установка и использование OpenVZ в 2023 Hardware Node(HD) CentOS теперь CentOS Stream 6.5 (Final),
- Virtual Environment(VE) Хостинг VPS/VDS на Ubuntu 14.04.1 LTS,
- OpenVPN 2.3.2,
- Easy-RSA 2.2.
Инсталляция VE(VPS, VDS)
- Инсталлируем VE Ubuntu для OpenVZ
# 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
- Настраиваем VE 111.conf.
- Все остальные настройки производим уже в установленной VE
# vzctl enter 111
Создание ключей
- Создание ключей при помощи утилиты Easy-RSA. Ранее эта утилита входила в дистрибутив сервера OpenVPN, сейчас она отдельный проект. Последнюю версию утилиты можно скачать с сайта OpenVPN, но правильнее использовать версию поставляемую с вашим дистрибутивом ОС.
aptitude install easy-rsa
- Перед тем как запустить демон OpenVPN, нам нужны в каталоге /etc/openvpn/keys
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-атак и флуда
- Копируем директорию easy-rsa в то место где будем создавать инфраструктуру публичных ключей (Public Key Infrastructure, PKI)
cp -R /usr/share/easy-rsa /etc/openvpn/ cd /etc/openvpn/easy-rsa
Изменяем параметры по умолчанию для сертификатов в файле vars
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"
Создадим переменные окружения.
source ./vars NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/openvpn/easy-rsa/keys
Очистим от предыдущих экспериментов. Создадим ключ Диффи-Хелмана (ключ создается некоторое время).
./clean-all ./build-dh Generating DH parameters, 2048 bit long safe prime, generator 2 This is going to take a long time ...
- Создадим директорию для хранения приватных ключей сервера OpenVPN. Скопируем туда файл Диффи-Хелмана (dh2048.pem)
mkdir /etc/openvpn/keys cp keys/dh2048.pem /etc/openvpn/keys/
- Статический ключ Алгоритм HMAC для OpenVPN для с целью дополнительной защиты от Что такое DoS (DDoS) -атака-атак и flood.
- Создадим удостоверяющий центр CA. Создадутся ca.crt и ca.key. Файл ca.key представляет собой приватный ключ центра CA, он секретный, и его нельзя переносить на другие узлы вашей сети. Файл сертификата удостоверяющего центра ca.crt, напротив, открытый, и он будет нужен на узлах серверов и клиентов OpenVPN.
./pkitool --initca
- Создадим сертификат для сервера с именем vpnluxor
./pkitool --server vpnluxor
Созданные файлы vpnluxor.crt и vpnluxor.key копируем в директорию /etc/openvpn/keys/
- Создадим сертификат для клиента client1 с одноименном параметром CommonName . Отдельный ключ для каждого клиента.
./pkitool client1
Инсталлируем OpenVPN
- Установим OpenVPN 2.3 в VE(Хостинг VPS/VDS на Ubuntu 14.04.1 LTS)
aptitude install openvpn
Для запуска раскомментируем строку
nano /etc/default/openvpn ... AUTOSTART="all" ...
- Копируем openvpn.conf
cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/ gunzip server.conf.gz
Пробуем запустить, OpenVPN останавливает свою работу из-за несуществующих сертификатов ca.crt, dh1024.pem и других. Создаем нужные ключи.
- В директории ccd хранятся индивидуальные настройки для каждого клиента.
mkdir /etc/openvpn/ccd
Читайте также: Лучшие VPN и Прокси Сервисы
📌 Для тестирования скриптов, установщиков VPN, Python ботов рекомендуем использовать надежные VPS на короткий срок. Если вам нужна помощь с более сложными задачами, вы можете найти фрилансера, который поможет с настройкой. Узнайте больше о быстрой аренде VPS для экспериментов и о фриланс-бирже для настройки VPS, WordPress. 📌
💥 Подпишись в Телеграм 💥 и задай вопрос по сайтам и хостингам бесплатно!7 Самых Популярных Статей
- Как запустить скрипты и веб-приложения на Python
- Что такое страны TIER 1,2,3
- 7 способов сравнения файлов по содержимому в Windows или Linux
- Установка и тестирование веб-панели HestiaCP
- Китайский VPN Shadowsocks простая установка и настройка
- top, htop, atop определение загрузки ОС (Load average, LA)
- Использование rsync в примерах