Как настроить Proton VPN на pfSense с помощью WireGuard®
- Чтение
- 1 мин.
- Категория
- Маршрутизаторы
В этом руководстве мы покажем, как настроить Proton VPN на pfSense 2.7.x с использованием протокола VPN WireGuard®. Это позволит вашему маршрутизатору защитить любое подключенное к нему устройство с помощью подключения Proton VPN.
Вы также можете настроить Proton VPN на pfSense 2.7.x с помощью протокола OpenVPN, но мы рекомендуем использовать WireGuard.
- Узнайте о сравнении OpenVPN и WireGuard
- Узнайте, как настроить Proton VPN на pfSense с помощью OpenVPN
1. Создайте файл конфигурации WireGuard
Войдите в Proton VPN, используя имя пользователя и пароль вашего аккаунта Proton на account.protonvpn.com, перейдите в Скачивания → Конфигурация WireGuard и скачайте файл конфигурации WireGuard. Обязательно выберите Платформа: Маршрутизатор.
Узнайте, как скачать файл конфигурации WireGuard от Proton VPN
Для настройки pfSense вам понадобится закрытый ключ из этого файла конфигурации. Чтобы найти его, перейдите в Скачивания → Конфигурация WireGuard и выберите ключ WireGuard, который вы только что создали. Найдите строку с текстом PrivateKey =.

Вам также понадобится Endpoint = IP-адрес.

2. Установите пакет WireGuard на pfSense
Введите 192.168.1.1 в адресную строку браузера, чтобы открыть интерфейс pfSense. Войдите в систему и перейдите на вкладку System → Package Manager → Available Packages. Найдите пакет WireGuard и нажмите Install.

Чтобы убедиться, что WireGuard успешно установлен, перейдите в System → Package Manager → Installed packages.
3. Создайте новый туннель WireGuard
Оставаясь в pfSense, перейдите в VPN → WireGuard → Tunnels и создайте новый туннель со следующими настройками.
Конфигурация туннеля:
- Description: выберите подходящее описание
- Listen port: 51820
- Interface Keys: закрытый ключ из вашего файла конфигурации (см. шаг 1)
- Public key: будет сгенерирован автоматически
Interface configuration:
- Interface Addresses: 10.2.0.2/32
После завершения нажмите Save Tunnel.

4. Добавьте пира
Оставаясь на вкладке Tunnels, нажмите Add Peer (см. выше), после чего вы перейдете на вкладку Peers. Задайте следующие настройки.
Peer Configuration:
- Tunnel: туннель, созданный на предыдущем шаге
- Description: выберите понятное имя, например имя сервера
- Dynamic Endpoint: снимите флажок
- Endpoint: IP-адрес конечной точки из вашей скачанной конфигурации WireGuard
- Port: 51820
- Keep Alive: 25
- Public Key: открытый ключ из вашего скачанного файла конфигурации WireGuard (см. шаг 1)
Конфигурация адреса:
- Allowed IPs: 0.0.0.0 / 0
После завершения нажмите Save Peer.

5. Перейдите на вкладку Settings, установите флажок Enable WireGuard, затем нажмите Save и Apply Changes.

5. Создайте интерфейс WireGuard
VPN-клиент запущен, но трафик через него не направляется. Чтобы направить весь сетевой трафик через безопасный туннель Proton VPN, вам потребуется настроить интерфейсы и правила брандмауэра.
Перейдите в Interfaces → Interface Assignments → Available network ports и выберите tun_wg0 → Add.
В результате будет создан интерфейс с именем OPTx (где x зависит от количества физических интерфейсов у вашего маршрутизатора). Нажмите на созданный интерфейс, чтобы настроить его.

Введите следующие настройки конфигурации·
Общая конфигурация:
- Enable: установлено
- IPv4 configuration type: Static IPv4
Статическая конфигурация IPv4:
- Адрес IPv4: 10.2.0.2 / 32
Нажмите Сохранить и Применить.

6. Добавьте новый шлюз
Перейдите в раздел Система → Маршрутизация → Шлюзы и нажмите Добавить, чтобы добавить новый шлюз.

Введите следующие настройки конфигурации:
- Интерфейс: OPT1 (или имя интерфейса из предыдущего шага)
- Семейство адресов: IPv4
- Имя: понятное имя
- Шлюз: 10.2.0.1

Нажмите Display Advanced и отметьте Use non-local gateway → Use non-local gateway through interface specific route. Нажмите Сохранить и Применить изменения.

7. Настройте правила брандмауэра
Мы используем правила брандмауэра для маршрутизации всего трафика через интерфейс Proton VPN, который мы настроили на шаге 5. Перейдите в раздел Firewall → NAT → Outbound и выберите Manual Outbound NAT rule generation. Затем нажмите Сохранить и Применить изменения.

Теперь нажмите на значок ✓ рядом с двумя последними правилами, чтобы отключить их.
- Автоматически созданное правило для ISAKMP — OPT1 в WAN
- Автоматически созданное правило OPT1 в WAN

Нажмите на значок Изменить (карандаш) рядом со следующими двумя правилами:
- Автоматически созданное правило — LAN в WAN
- Автоматически созданное правило для ISAKMP — LAN в WAN
В обоих случаях измените Interface на VPN-интерфейс (OPT1), а Address family — на IPv4. Когда закончите, нажмите Сохранить и Применить изменения.

Перейдите в раздел Firewall → Rules → LAN → Default allow LAN to any rule → Edit (значок карандаша).

Нажмите Display advanced → Gateway и выберите шлюз, который мы создали на шаге 6. Нажмите Сохранить.

Нажмите на значок ✓ рядом с правилом Default allow LAN IPv6 to any rule, чтобы отключить его, а затем нажмите Сохранить и Применить изменения.

8. Настройте параметры DNS
Теперь весь интернет-трафик, проходящий через брандмауэр pfSense, будет направляться через сервер Proton VPN. Однако это не касается DNS-запросов. Чтобы исправить это, нам необходимо изменить настройки DNS в pfSense.
В pfSense перейдите в раздел System → General setup → DNS Server Settings и настройте следующие параметры:
- Серверы DNS: 10.2.0.1
- Gateway: имя шлюза, который мы настроили на шаге 6.
- DNS Server Override: флажок снят
Нажмите Сохранить, когда закончите.

Теперь перейдите в раздел Services → DNS Resolver → General Settings и измените следующее:
- Outgoing Network Interfaces: OPT1 (интерфейс WireGuard, который мы создали)
- DNS Query Forwarding: отметьте Enable Forwarding mode
Нажмите Сохранить и Применить изменения, когда закончите.

Настройка завершена. Весь трафик из вашей сети теперь надежно маршрутизируется через выбранный вами сервер Proton VPN. Вы можете проверить это, перейдя на наш бесплатный защищенный IP-сканер(новое окно) с любого устройства в вашей сети.