Test your skills on our all Hosting services and get 15% off!

Use code at checkout:

Skills
20.11.2024

Подробные инструкции по установке OpenVPN на сервер Linux

OpenVPN – это мощный и гибкий инструмент для создания безопасных VPN-туннелей. Эта инструкция поможет вам установить и настроить OpenVPN на сервере под управлением Linux (например, Ubuntu, Debian, CentOS).

Обновление системных пакетов

Перед началом установки обновите списки системных пакетов и установите все доступные обновления. Для Ubuntu/Debian:

apt update
apt upgrade -y

Для CentOS

yum update -y

Установите OpenVPN и Easy-RSA

Для создания ключей и сертификатов вам понадобится утилита Easy-RSA. Вместе с ней мы установим OpenVPN.

Для Ubuntu/Debian:

apt install openvpn easy-rsa -y

Для CentOS:

yum install epel-release -y

yum install openvpn easy-rsa -y

Успешная установка будет выглядеть следующим образом

Настройка инфраструктуры открытых ключей (PKI)

Создайте каталог, в котором будут храниться все необходимые файлы для создания сертификатов:

make-cadir ~/openvpn-ca

cd ~/openvpn-ca

Конфигурация Easy-RSA

Отредактируйте файл vars, чтобы задать настройки для создания сертификатов:

nano vars

Измените следующие строки на свои значения:

set_var EASYRSA_REQ_COUNTRY "enter YOUR_COUNTRY"

set_var EASYRSA_REQ_PROVINCE "enter YOUR_PROVINCE"

set_var EASYRSA_REQ_CITY "введите ВАШ_ГОРОД"

set_var EASYRSA_REQ_ORG "введите ВАШУ_ОРГАНИЗАЦИЮ"

set_var EASYRSA_REQ_EMAIL "введите ВАШ_EMAIL"

set_var EASYRSA_REQ_OU "enter YOUR_ORG_UNIT"

  • Пример. ПеременнаяEASYRSA_REQ_ORG используется в сценарии EasyRSA для задания имени организации при создании сертификатов. Значение этой переменной указывается в CSR (запрос на подписание сертификата) и в создаваемых сертификатах
    .set_var EASYRSA_REQ_ORG "enter YOUR_ORGANIZATION "
    В этом примере переменная EASYRSA_REQ_ORG установлена в строку “enter YOUR_ORGANIZATION”. Это означает, что при создании сертификата это значение будет указано в поле“Имя организации“. Обычно вместо “enter YOUR_ORGANIZATION” вводится название организации, для которой создаются сертификаты. Например, если ваша организация называется“ExampleCorporation“, вы измените это значение на:set_var EASYRSA_REQ_ORG “ExampleCorporatiom “Таким образом, создаваемые сертификаты будут содержать название вашей организации в соответствующем поле.

Далее необходимо загрузить измененные переменные. Для этого нужно ввести одну простую команду, состоящую всего из двух слов:

source vars

Создать ЦС (центр сертификации)

Далее следует сложный и важный шаг! Убедитесь, что вы можете оставить запись об этом в KeePASS или любом другом надежном менеджере паролей! На этом шаге необходимо инициализировать PKI и создать корневой сертификат. Это можно сделать следующим образом:

./easyrsa init-pki

./easyrsa build-ca

Вам будет предложено ввести пароль для ЦС. Обязательно сохраните его и запомните.

Генерация ключей и сертификатов

Сертификат и ключ сервера:

./easyrsa gen-req server nopass

Подпишите сертификат сервера:

./easyrsa sign-req server server

Сгенерируйте параметры DH:

./easyrsa gen-dh

Генерирует ключ HMAC для аутентификации TLS:

openvpn --genkey --secret ta.key

Настройка файла конфигурации сервера

Скопируйте файл конфигурации примера и отредактируйте его:

cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/

gunzip /etc/openvpn/server.conf.gz

nano /etc/openvpn/server.conf

Запуск службы OpenVPN

Убедитесь, что OpenVPN запускается при загрузке, выполнив следующую команду:

systemctl enable openvpn@server

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

Скопируйте файл конфигурации клиента на ваш сервер:

scp user@your-server_ip:/etc/openvpn/client.ovpn ~/client.ovpn

  • Тестирование проводилось на IPv4-адресе – 91.229.239.11. Ниже приведен пример результата успешных действий команды:

Введите конфигурацию scp user@91.229.239.11:/etc/openvpn/client.ovpn ~/client.ovpn. Затем введите команду passwd

Отредактируйте файл client.ovpn и добавьте сертификаты:

# вставьте содержимое файла ca.crt

# вставить содержимое файла client.crt

# вставьте содержимое файла client.key

Подключение клиента

Импортируйте файл client.ovpn в клиент OpenVPN на вашем устройстве и подключитесь к серверу.

Test your skills on our all Hosting services and get 15% off!

Use code at checkout:

Skills