You are currently viewing Як налаштувати Proton VPN на pfSense за допомогою WireGuard

Як налаштувати Proton VPN на pfSense за допомогою WireGuard

З великим задоволенням читаю покрокові інструкції (особливо з ілюстраціями). Це дозволяє не напружувати мозок, просто слідуючи вказівкам. Або ж можна розібрати кожен крок детальніше та заглибитися в суть процесу.

Вже кілька років користуюся Proton VPN. Вдома використовую мережевий екран і маршрутизатор pfSense. І на додачу, WireGuard – це сучасний, швидкий і безпечний VPN, що використовує передові криптографічні технології.

1. Створіть файл конфігурації WireGuard

Увійдіть до Proton VPN, використовуючи ваше ім’я користувача та пароль облікового запису Proton на сайті account.protonvpn.com. Перейдіть до розділу Downloads → WireGuard configuration і завантажте файл конфігурації WireGuard. Обов’язково виберіть Platform: Router.
Для налаштування pfSense вам знадобиться приватний ключ із цього файлу конфігурації. Щоб знайти його, перейдіть до розділу Downloads → WireGuard configuration і виберіть щойно створений ключ WireGuard. Знайдіть рядок, що містить «PrivateKey =.
Вам також знадобиться Endpoint = IP address.

2. Встановіть пакет WireGuard на pfSense

Відкрийте веб-інтерфейс 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 Addresses: 10.2.0.2/32
Натисніть Save Tunnel, коли закінчите.

4. Додайте піра

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

5. Створіть інтерфейс WireGuard

VPN-клієнт зараз працює, але трафік через нього не маршрутизується. Щоб спрямувати весь ваш мережевий трафік через безпечний тунель Proton VPN, вам потрібно налаштувати інтерфейси та правила брандмауера.
Перейдіть до розділу Interfaces → Interface Assignments → Available network port та виберіть  tun_wg0 → Add.
Це створить інтерфейс з назвою OPTx (де x залежить від кількості фізичних інтерфейсів вашого маршрутизатора). Натисніть на новостворений інтерфейс, щоб налаштувати його.
Введіть наступні параметри конфігурації:
Загальні налаштування:
Enable: позначено
IPv4 configuration type: Статичний IPv4
Конфігурація статичного IPv4:
IIPv4 address: 10.2.0.2 / 32
Натисніть Save та Apply.

6. Додайте новий шлюз

Перейдіть до розділу System → Routing → Gateways та натисніть Add, щоб додати новий шлюз.
Введіть наступні параметри конфігурації:
Interface: OPT1 (або назва інтерфейсу з попереднього кроку)
Address Family: ipv4
Name: описова назва
Gateway: 10.2.0.1
Натисніть Display Advanced та поставте позначку Use non-local gateway → Use non-local gateway through interface specific route. Натисніть Save та Apply Changes.

7. Налаштуйте правила брандмауера

Ми використовуємо правила брандмауера для маршрутизації всього трафіку через інтерфейс Proton VPN, який ми налаштували на кроці 5. Перейдіть до розділу Firewall → NAT → Outbound і виберіть Manual Outbound NAT rule generation. Потім натисніть Save та Apply Changes.

Знайдіть два останні правила та натисніть на значок ✓ поруч із ними, щоб вимкнути їх.

  • Auto created rule for ISAKMP – OPT1 to WAN
  • Auto created rule OPT1 to WAN

Знайдіть наступні два правила та натисніть на значок Edit (олівець) поруч із кожним із них:

Auto created rule – LAN to WAN

Auto created rule for ISAKMP – LAN to WAN

В обох випадках змініть значення в стовпці Interface на ваш VPN-інтерфейс (OPT1), а в стовпці Address family оберіть IPv4. Після цього натисніть Save та Apply Changes.

Перейдіть до розділу БFirewall → Rules → LAN → Default allow LAN to any rule → Edit (значок олівця).

Натисніть  Display advanced → Gateway і виберіть шлюз, який ми створили на кроці 6. Натисніть Save.

Натисніть на значок поруч із правилом Default allow LAN IPv6 to any rule, щоб вимкнути його, а потім натисніть Save та Apply Changes.

8. Налаштування DNS

Весь інтернет-трафік, що проходить через брандмауер pfSense, тепер буде спрямовуватися через сервер Proton VPN. Однак DNS-запити – ні. Щоб це виправити, нам потрібно змінити налаштування DNS у pfSense. У pfSense перейдіть до розділу System  General setup → DNS Server Settings і налаштуйте наступні параметри:

  • DNS Servers: 10.2.0.1
  • Gateway: назва шлюзу, який ми налаштували на кроці 6.
  • DNS Server Override: зніміть позначку

Натисніть Зберегти, коли закінчите.

Тепер перейдіть до розділу System  General setup → DNS Server Settings та змініть наступне:

  • Outgoing Network Interfaces: OPT1 (створений нами інтерфейс WireGuard)
  • DNS Query Forwarding: поставте позначку Enable Forwarding mode

Натисніть Save та Apply Change, коли закінчите.

Ваше налаштування завершено. Весь трафік з вашої мережі тепер безпечно спрямовується через обраний вами сервер Proton VPN. Ви можете перевірити це, відвідавши сайт ip.me з будь-якого пристрою у вашій мережі.