09.07.2026
установка openvpn server ubuntu
Как правильно установить OpenVPN Server на Ubuntu: пошаговая инструкция
Если вы хотите обеспечить безопасность и конфиденциальность своих интернет-сессий или создать собственный VPN-сервер, установка OpenVPN на Ubuntu — отличный выбор. Этот популярный VPN-сервер славится своей надежностью, гибкостью и бесплатностью. В этой статье я расскажу, как установить и настроить OpenVPN Server на Ubuntu с нуля, чтобы вы могли безопасно пользоваться интернетом и управлять своими данными.
Почему именно OpenVPN и Ubuntu?
Ubuntu — одна из самых популярных дистрибутивов Linux, благодаря простоте использования и высокой стабильности. OpenVPN — это проверенная временем VPN-программа, которая поддерживается крупным сообществом и обеспечивает защищенное соединение через шифрование OpenSSL.
Совместная работа этих двух решений — отличный вариант для домашнего использования, малого бизнеса и для тех, кто хочет иметь полный контроль над своим VPN-сервером.
Что потребуется для установки
Перед началом убедитесь, что у вас есть:
- Сервер с Ubuntu (версии 20.04 или 22.04 рекомендуется).
- Доступ по SSH с правами администратора (root или sudo).
- Свободный порт 1194 UDP (может понадобиться открыть в настройках брандмауэра).
- Доменное имя или публичный IP адрес сервера.
Шаг 1. Обновляем систему
Перед началом установки обновим пакеты:
sudo apt update && sudo apt upgrade -y
Это обеспечит работу с последними версиями программ.
Шаг 2. Установка OpenVPN и Easy-RSA
Для создания инфраструктуры PKI используем Easy-RSA:
sudo apt install openvpn easy-rsa -y
Шаг 3. Настройка инфраструктуры PKI
Создадим директорию для Easy-RSA и подготовим её:
make-cadir ~/easy-rsa
cd ~/easy-rsa
Настроим переменные:
nano vars
В файле vars укажите вашу страну, организацию и название:
set_var EASYRSA_REQ_COUNTRY "RU"
set_var EASYRSA_REQ_PROVINCE "Moscow"
set_var EASYRSA_REQ_CITY "Moscow"
set_var EASYRSA_REQ_ORG "MyCompany"
set_var EASYRSA_REQ_EMAIL "admin@mydomain.ru"
set_var EASYRSA_REQ_OU "IT Department"
Сохраняем и инициализируем PKI:
./easyrsa init-pki
./easyrsa build-ca
Во время этого процесса создается корневой сертификат.
Шаг 4. Создаем сертификаты и ключи для сервера
Создаем ключи для сервера:
./easyrsa gen-req server nopass
./easyrsa sign-req server server
Создаем Diffie-Hellman параметры и HMAC:
./easyrsa gen-dh
openvpn --genkey --secret ta.key
Шаг 5. Настраиваем сервер OpenVPN
Создадим конфигурационный файл:
sudo mkdir /etc/openvpn
sudo cp ~/easy-rsa/pki/ca.crt ~/easy-rsa/pki/issued/server.crt ~/easy-rsa/pki/private/server.key ~/easy-rsa/ta.key /etc/openvpn/
Создаем файл /etc/openvpn/server.conf со следующим содержанием:
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh.pem
tls-auth ta.key 0
cipher AES-256-CBC
auth SHA256
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
keepalive 10 120
persist-key
persist-tun
status openvpn-status.log
verb 3
Шаг 6. Настройка брандмауэра и проброс портов
Разрешим трафик на порт 1194/udp:
sudo ufw allow 1194/udp
sudo ufw enable
Добавьте правила для NAT:
sudo nano /etc/ufw/before.rules
Добавьте в начало файла:
*nat
-A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
COMMIT
Обновляем конфигурацию UFW:
sudo ufw reload
Шаг 7. Запуск OpenVPN
Запускаем сервер:
sudo systemctl start openvpn@server
sudo systemctl enable openvpn@server
Проверьте статус:
sudo systemctl status openvpn@server
Если все в порядке — ваш VPN-сервер запущен.
Шаг 8. Создание клиентских сертификатов
Для каждого клиента создадим отдельный сертификат:
cd ~/easy-rsa
./easyrsa gen-req client1 nopass
./easyrsa sign-req client client1
Скопируйте файлы клиента:
scp ~/easy-rsa/pki/issued/client1.crt ~/easy-rsa/pki/private/client1.key ca.crt ta.key
Шаг 9. Настройка клиента
Создайте конфигурационный файл client.ovpn с содержанием:
client
dev tun
proto udp
remote your_server_ip 1194
resolv-retry infinite
nobind
persist-key
persist-tun
remote-cert-tls server
cipher AES-256-CBC
auth SHA256
tls-auth ta.key 1
setenv opt block-outside-dns
verb 3
<ca>
-----BEGIN CERTIFICATE-----
...ваш ca.crt...
-----END CERTIFICATE-----
</ca>
<cert>
-----BEGIN CERTIFICATE-----
...ваш client1.crt...
-----END CERTIFICATE-----
</cert>
<key>
-----BEGIN PRIVATE KEY-----
...ваш client1.key...
-----END PRIVATE KEY-----
</key>
<tls-auth>
-----BEGIN OpenVPN Static key V1-----
...ваш ta.key...
-----END OpenVPN Static key V1-----
</tls-auth>
Подключайтесь к вашему серверу через OpenVPN-клиент, указав этот файл.
Итог
Теперь у вас есть полностью настроенный VPN-сервер на базе Ubuntu с OpenVPN. Такой сервер обеспечивает безопасное соединение, защищая ваши данные от слежки и несанкционированного доступа. Постоянное обновление и контроль сертификатов — залог надежной работы.
Если возникнут вопросы или потребуется помощь — обращайтесь к сообществам Linux или VPN-специалистам. Удачи в создании собственного безопасного пространства в интернете!