OpenVPN — программное решение для создания защищённых VPN-туннелей с открытым исходным кодом. Использует OpenSSL для шифрования данных и аутентификации. Работает в user-space (не требует изменений ядра), что обеспечивает кросс-платформенность: Linux, Windows, macOS, iOS, Android.
Установка сервера на Ubuntu
# Автоматизированная установка (openvpn-install script)
wget https://git.io/vpn -O openvpn-install.sh
bash openvpn-install.sh
# Ручная установка
apt install openvpn easy-rsa
# Запуск сервера
systemctl enable --now openvpn@server
OpenVPN vs WireGuard vs IPSec
- OpenVPN — проверенный протокол, гибкая настройка, работает через 443/TCP (firewall bypass). Медленнее из-за TLS overhead.
- WireGuard — современный протокол, встроен в ядро Linux 5.6+ (2020). Быстрее (~2–3x), меньше кодовая база, проще настройка. Рекомендуется для новых деплоев.
- IPSec/IKEv2 — встроен в ОС (iOS, Windows, macOS). Нет дополнительного ПО на клиенте.
Split tunneling
Push-маршруты в OpenVPN позволяют направить через VPN только нужный трафик (к корпоративной сети), оставив интернет-трафик прямым.
История
OpenVPN создан Джеймсом Йонаном в 2001 году. Версия 2.0 — 2005. OpenVPN Technologies Inc. основана в 2013 году. WireGuard создан Джейсоном Доненфельдом в 2015 году. В 2020 году WireGuard включён в ядро Linux 5.6 после рецензии Линуса Торвальдса.
Связь с хостингом
OpenVPN на VDS — способ безопасно подключить удалённую команду к корпоративным ресурсам или защитить трафик в публичных сетях. Также используется для обхода ограничений доступа к серверам через bastion VPN. Для нового проекта стоит рассмотреть WireGuard — быстрее и проще в настройке.
История OpenVPN
OpenVPN разработан Джеймсом Йонаном и выпущен в 2002 году под лицензией GPL. Версия 2.0 вышла в 2005 году с поддержкой Site-to-Site VPN и клиент-серверной архитектуры. OpenVPN 2.4 (2017) добавил поддержку IPv6 и TLS 1.3. OpenVPN 2.5 (2020) — поддержка ChaCha20-Poly1305. Протокол основан на TLS/SSL и UDP/TCP. WireGuard (2020) — современная альтернатива с меньшим кодом (~4000 строк против ~70 000) и лучшей производительностью. OpenVPN Community Edition бесплатен, OpenVPN Access Server — коммерческий продукт от $7/пользователь/мес.
OpenVPN vs WireGuard vs IPSec
| Параметр | OpenVPN | WireGuard | IPSec |
|---|---|---|---|
| Скорость | средняя | высокая | высокая |
| Настройка | сложная | простая | очень сложная |
| Порт | 1194/UDP или TCP | 51820/UDP | 500/UDP, 4500/UDP |
| Обход блокировок | да (TCP 443) | затруднён | нет |
Практическое применение на хостинге
OpenVPN на VPS создаёт защищённый туннель для удалённого доступа к закрытым сервисам (базы данных, панели управления). Роутинг через VPN всего трафика сотрудников защищает корпоративные ресурсы. Bastion host с OpenVPN — стандартная схема безопасного доступа к серверной инфраструктуре.
Типичные ошибки
- Использование TCP вместо UDP без необходимости — двойное повторение пакетов снижает скорость.
- Не настроены CRL (Certificate Revocation Lists) — отозванные сертификаты продолжают работать.
- Сервер OpenVPN без ограничения параллельных подключений — ресурсы могут быть исчерпаны.
OpenVPN хорошо совместим с Nginx: порт TCP 443 можно использовать совместно через SNI routing. Для мобильных клиентов доступны OpenVPN Connect (iOS/Android). На Ubuntu Server установка через apt install openvpn. Скрипт настройки angristan/openvpn-install автоматизирует конфигурацию за 5 минут.