11.10.2026
как развернуть openvpn сервер на linux
Как развернуть OpenVPN сервер на Linux: пошаговая инструкция для начинающих и продвинутых
Если вы задумались о создании собственного VPN-сервера для защиты личных данных, обхода геоограничений или организации безопасного доступа к корпоративной сети, то OpenVPN — один из лучших вариантов. В этой статье я расскажу, как развернуть OpenVPN сервер на Linux с нуля, избегая сложных терминов и ненужной бюрократии.
Почему именно OpenVPN?
OpenVPN — это открытое решение, которое зарекомендовало себя как надежное и гибкое. Оно поддерживается большинством операционных систем, обладает богатым функционалом и высокой степенью безопасности. В отличие от многих коммерческих решений, OpenVPN позволяет вам полностью контролировать свою сеть без лишних затрат.
Что потребуется для развертывания OpenVPN на Linux?
Перед началом убедитесь, что у вас есть:
- Виртуальный или физический сервер с установленной Linux (например, Ubuntu, Debian, CentOS);
- Доступ root или sudo;
- Установленный curl и wget (обычно есть по умолчанию);
- Свободный порт 1194/UDP (или другой, по необходимости).
Шаг 1: Обновляем систему и устанавливаем необходимые пакеты
Для начала обновим репозитории и установим OpenVPN и нужные утилиты:
sudo apt update
sudo apt install openvpn easy-rsa
Если используете CentOS или другую систему, команда будет чуть отличаться.
Шаг 2: Настраиваем инфраструктуру PKI (Public Key Infrastructure)
Easy-RSA — это набор скриптов для создания сертификатов и ключей.
Создаем рабочую директорию:
make-cadir ~/openvpn-ca
cd ~/openvpn-ca
Инициализируем PKI:
./easyrsa init-pki
Создаем CA (сертификат центра сертификации):
./easyrsa build-ca
Следуйте инструкциям — задайте пароль и имя организации.
Шаг 3: Создаем серверный сертификат и ключи
./easyrsa gen-req server nopass
./easyrsa sign-req server server
Создаем диффи-Хеллман параметры:
openssl dhparam -out dh.pem 2048
Копируем необходимые файлы в каталог OpenVPN:
sudo cp pki/ca.crt pki/issued/server.crt pki/private/server.key dh.pem /etc/openvpn
Шаг 4: Настраиваем конфигурацию сервера
Создайте файл /etc/openvpn/server.conf со следующим содержимым:
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh.pem
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
cipher AES-256-CBC
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
Шаг 5: Настраиваем файрволл и маршрутизацию
Разрешите трафик и включите IP- forwarding:
sudo ufw allow 1194/udp
sudo nano /etc/sysctl.conf
Добавьте или раскомментируйте строку:
net.ipv4.ip_forward=1
Примените изменения:
sudo sysctl -p
Настройте NAT:
sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
Где eth0 — ваш внешний интерфейс.
Шаг 6: Запускаем сервер OpenVPN
sudo systemctl start openvpn@server
sudo systemctl enable openvpn@server
Проверяем статус:
sudo systemctl status openvpn@server
Шаг 7: Создаем клиентские сертификаты и конфигурации
Создаем ключ клиента:
cd ~/openvpn-ca
./easyrsa gen-req client1 nopass
./easyrsa sign-req client client1
Копируем CA и сертификат клиента на устройство клиента и создаем конфигурационный файл .ovpn, включающий все необходимые сертификаты и ключи.
Итог
Теперь у вас есть функционирующий OpenVPN сервер на Linux. Настройка может показаться сложной, но следуя этим шагам, вы получите надежную и безопасную VPN-сеть. Не забывайте регулярно обновлять сертификаты и следить за безопасностью сервера.
Если возникнут вопросы — пишите в комментариях или ищите дополнительную информацию в сообществе. Удачи в создании собственного VPN!