настройка openvpn на pfsense
настройка openvpn на pfsense
Настройка OpenVPN на pfSense: как не превратить шлюз в уязвимость
Почему ваш «безопасный» туннель уже протекает
настройка openvpn на pfsense — это не просто чекбокс в админке. Это решение, которое либо изолирует вашу сеть от внешнего мира, либо делает её мишенью для перехвата трафика, утечек DNS и атак через неправильно сконфигурированный сертификат. Большинство гайдов показывают, как кликнуть «Next», но умалчивают о том, что один неверный параметр в Advanced Configuration может свести на нет всё шифрование. В этой статье — без прикрас: как настроить OpenVPN на pfSense так, чтобы он действительно работал, а не имитировал безопасность.
Что вы получите (и потеряете), если выберете OpenVPN
OpenVPN остаётся одним из самых проверенных протоколов для построения защищённых туннелей. Он поддерживает TLS 1.3, AES-256-GCM, perfect forward secrecy и работает поверх UDP/TCP — это даёт гибкость при обходе DPI (Deep Packet Inspection), особенно в условиях российских провайдеров вроде Ростелекома или МТС, которые активно фильтруют трафик.
Но у OpenVPN есть цена:
- Высокая задержка при использовании TCP (из-за двойного подтверждения пакетов).
- Сложность настройки по сравнению с WireGuard.
- Потенциальные утечки через IPv6 или WebRTC, если клиентская система не настроена корректно.
Если ваша цель — стабильное соединение между офисами или удалённый доступ к домашней сети с гарантией конфиденциальности, OpenVPN на pfSense — разумный выбор. Но только при условии, что вы учли все технические нюансы.
Чего вам НЕ говорят в других гайдах
Большинство инструкций по настройке OpenVPN на pfSense обходят стороной три критических момента:
-
Бесплатные CA и самоподписанные сертификаты = риск MITM
Многие пользователи генерируют сертификаты прямо в веб-интерфейсе pfSense, используя встроенный Certificate Authority. Это удобно, но если вы не экспортируете CA и не проверяете его отпечаток на клиенте, злоумышленник может подменить сертификат при первом подключении (атака типа «доверяй при первом использовании»). Особенно опасно в публичных Wi-Fi сетях. -
DNS-утечки даже при включённом «Force DNS through tunnel»
pfSense может направлять DNS-запросы в туннель, но если клиент (например, Windows) использует IPv6 или имеет локальный DNS-резолвер (systemd-resolved, dnsmasq), часть запросов уйдёт напрямую к провайдеру. Проверяйте утечки на ipleak.net — даже после «правильной» настройки. -
Kill Switch не работает при перезагрузке роутера
Встроенный механизм блокировки трафика вне туннеля («Prevent client access to server LAN» + firewall rules) сбрасывается при рестарте pfSense, если правила не сохранены вFloating Rulesили не привязаны к интерфейсу OpenVPN явно. Это значит: при отвале VPN ваш трафик пойдёт в открытый эфир. -
Логирование по умолчанию
Даже если вы уверены, что «ничего не логируете», pfSense по умолчанию пишет логи авторизации (/var/log/openvpn.log). При достаточном давлении (например, по запросу суда) эти данные могут быть переданы. В России действует закон о хранении данных пользователей — будьте готовы, что ваш сервер может стать объектом интереса. -
Поддельные «no-log» политики у коммерческих провайдеров
Если вы используете pfSense как клиент для подключения к стороннему VPN-сервису (через .ovpn файл), помните: многие «no-log» провайдеры на деле хранят метаданные. Например, в 2023 году NordVPN признал хранение временных меток подключений. Юрисдикция 14 Eyes (включая США и Великобританию) позволяет принудительно запрашивать такие данные.
Пошаговая настройка OpenVPN на pfSense: не просто кликать, а понимать
Важно: Все действия выполняются в веб-интерфейсе pfSense (обычно https://192.168.1.1).
Шаг 1. Создание Certificate Authority (CA)
- Перейдите в System → Cert. Manager → CAs.
- Нажмите Add.
- Тип: Create an internal Certificate Authority.
- Имя:
My_VPN_CA. - Key length: 4096 бит (минимум; лучше 8192, если производительность позволяет).
- Digest Algorithm: SHA512.
- Lifetime: 3650 дней (10 лет — достаточно для домашнего использования).
Не используйте 2048-битные ключи — они уязвимы к атакам на современном оборудовании.
Шаг 2. Генерация серверного сертификата
- System → Cert. Manager → Certificates → Add.
- Method: Create an internal Certificate.
- CA: выберите
My_VPN_CA. - Key length: 4096.
- Common Name:
server.vpn.local(не используйте IP!). - Certificate Type: Server Certificate.
Шаг 3. Настройка OpenVPN-сервера
- VPN → OpenVPN → Servers → Add.
- Server Mode: Remote Access (SSL/TLS + User Auth).
- Protocol: UDP on IPv4 (TCP замедляет на 15–30% из-за двойного ACK).
- Port: 1194 (стандарт, но можно изменить для обхода DPI).
- TLS Configuration:
- Automatically generate a shared key → Да.
- Encryption Algorithm: AES-256-GCM (быстрее и безопаснее CBC).
- Auth Digest Algorithm: SHA512.
- Hardware Crypto: Оставить пустым, если нет акселератора.
- Tunnel Network: 10.8.0.0/24 (не совпадает с вашей LAN!).
- Redirect Gateway: ☑️ Force all client traffic through tunnel (если нужен полный туннель).
- DNS Settings:
- Provide a DNS server list → 8.8.8.8, 1.1.1.1 (или ваши внутренние DNS).
- ☑️ Force DNS through tunnel.
- Advanced Configuration:
tls-crypt /var/etc/openvpn/server1.tls-crypt.key auth SHA512 cipher AES-256-GCM keepalive 10 60 persist-key persist-tun
Шаг 4. Настройка правил фаервола
- Firewall → Rules → OpenVPN.
- Добавьте правило:
- Action: Pass
- Address Family: IPv4
- Protocol: Any
- Source: OpenVPN net
- Destination: Any
Без этого правила клиенты не смогут выходить в интернет!
Шаг 5. Экспорт конфигурации для клиента
- VPN → OpenVPN → Client Export.
- Выберите ваш сервер.
- Format: Archive (zip).
- Host Name Resolution: IP-адрес вашего WAN (или DynDNS).
- ☑️ Use Random Local Port.
- ☑️ Set nameserver.
- Скачайте архив — в нём будет .ovpn файл, сертификаты и ключи.
Как проверить, что туннель не протекает
Не верьте глазам — проверяйте:
- DNS-утечки: зайдите на ipleak.net. Убедитесь, что DNS-серверы — те, что вы указали (8.8.8.8 и т.п.), а не провайдерские.
- WebRTC-утечки: откройте browserleaks.com/webrtc. Если отображается ваш реальный IP — отключите WebRTC в браузере или используйте расширение.
- IPv6-утечки: если у вас включен IPv6 в pfSense, но не настроен в туннеле, весь IPv6-трафик пойдёт мимо VPN. Отключите IPv6 на клиенте или настройте его в OpenVPN.
- Kill Switch тест: отключите OpenVPN на клиенте — интернет должен пропасть. Если нет — пересмотрите правила фаервола.
OpenVPN vs WireGuard vs IPsec: кто быстрее и безопаснее?
| Критерий | OpenVPN | WireGuard | IPsec (IKEv2) |
|---|---|---|---|
| Скорость (на 1 Гбит/с) | 450–600 Мбит/с | 850–950 Мбит/с | 700–800 Мбит/с |
| Задержка (пинг) | +15–30 мс | +3–7 мс | +8–12 мс |
| Поддержка NAT | Отличная | Требует порт-форвардинга | Хорошая |
| Обход DPI | Да (через TCP 443) | Сложнее (фиксированный порт) | Часто блокируется |
| Аудиты безопасности | Cure53 (2017), OSTIF (2018) | Quarkslab (2020), NCC (2021) | Несколько, но фрагментарно |
| Поддержка в pfSense | Полная | Через плагин (начиная с 2.5) | Встроенная |
| Perfect Forward Secrecy | Да (при правильной настройке) | Да (по умолчанию) | Да (при IKEv2 + PFS) |
Для большинства домашних пользователей в РФ WireGuard предпочтительнее — он быстрее и проще. Но если вам нужна максимальная совместимость с устаревшими устройствами или обход DPI через TCP 443, OpenVPN остаётся актуальным.
Реальные сценарии: когда OpenVPN на pfSense спасает
- Журналист в командировке
Подключается к своему домашнему pfSense через OpenVPN, чтобы: - Избежать слежки в отеле или аэропорту.
- Получить доступ к заблокированным ресурсам (например, YouTube, если он временно недоступен).
-
Шифровать все коммуникации, включая мессенджеры.
-
IT-специалист в кафе
Работает с корпоративными серверами через зашифрованный туннель, исключая перехват паролей или сессий через ARP-spoofing в публичной сети. -
Пользователь торрентов
Направляет весь трафик через VPN, чтобы провайдер (например, Дом.ru) не видел список раздаваемых файлов. Важно: используйте kill switch и проверяйте утечки! -
Обход блокировок мессенджеров
Если Telegram или Signal временно недоступны через провайдера, OpenVPN на собственном сервере обеспечивает стабильный обход без зависимости от сторонних сервисов. -
Защита IoT-устройств
Камеры, умные колонки и термостаты часто отправляют данные на китайские серверы в открытом виде. Через split tunneling в OpenVPN можно направить только их трафик в туннель, не нагружая основной канал.
Split tunneling: как направить только нужное в туннель
Хотите, чтобы торренты шли через VPN, а стриминг — напрямую? Это возможно:
- В настройках OpenVPN-сервера снимите галку «Redirect Gateway».
- В клиентском .ovpn файле добавьте:
route 192.168.10.0 255.255.255.0 route 91.108.0.0 255.255.0.0
(где91.108.0.0/16— сеть Telegram).
Или используйте Policy Based Routing в pfSense:
- Firewall → Rules → LAN.
- Создайте правило с источником (ваше устройство), назначением (IP торрента-трекера), шлюзом — OpenVPN.
Вывод
настройка openvpn на pfsense — это мощный инструмент для контроля над своим трафиком, но только если вы осознаёте каждую строчку конфигурации. Не доверяйте «автоматической» настройке. Проверяйте утечки, отключайте IPv6, настраивайте kill switch вручную и регулярно обновляйте сертификаты. Помните: ваш pfSense — это не просто роутер, а шлюз в доверенную зону. Сделайте так, чтобы он оставался именно таким.
VPN замедляет интернет — на сколько реально?
Зависит от протокола и нагрузки на CPU. OpenVPN на AES-256-GCM на процессоре без AES-NI (например, Intel Atom) может снизить скорость до 50%. На современном x86 с AES-NI — потери 10–20%. WireGuard почти не замедляет: 2–5%.
Меня найдёт спецслужба при использовании VPN?
Если вы используете собственный сервер (pfSense у себя дома или на VPS), то да — ваш IP известен хостинг-провайдеру. При наличии решения суда (например, по статье 13.15 КоАП РФ) данные могут быть переданы. Анонимность возможна только при использовании многослойных цепочек (Tor + VPN) и оплате криптовалютой без KYC.
WireGuard или OpenVPN — что безопаснее?
Оба безопасны при правильной настройке. WireGuard использует современные криптопримитивы (Curve25519, ChaCha20, Poly1305) и меньше кода — меньше уязвимостей. OpenVPN проверен временем, но сложнее. Для большинства случаев WireGuard предпочтительнее.
Можно ли использовать OpenVPN на pfSense для обхода блокировок в РФ?
Технически — да. Но учтите: согласно законодательству РФ, намеренный обход ограничений доступа к информации, распространяемой с нарушением закона, может повлечь ответственность. Мы объясняем возможности технологии, а не призываем к нарушению закона.
Как часто менять сертификаты OpenVPN?
Сертификаты сервера — раз в 1–2 года. Клиентские — при утере устройства или увольнении сотрудника. Используйте CRL (Certificate Revocation List) в pfSense для быстрой отмены доступа.
Бесплатный VPN в .ovpn файле — это ловушка?
Скорее всего, да. Бесплатные сервисы зарабатывают на продаже метаданных, показе рекламы или использовании вашего трафика для ретрансляции (как Hola). Сервер стоит минимум $5/мес — если услуга бесплатна, вы и есть товар.
Great summary. The explanation is clear without overpromising anything. A short example of how wagering is calculated would help.