Как да настроите WireGuard връзка към VPN доставчик в OPNsense
В тази публикация ще предоставим ръководство стъпка по стъпка за конфигуриране на „клиентска“ връзка на WireGuard към търговски VPN доставчик в OPNsense. WireGuard не използва типичната рамка клиент/сървър като OpenVPN . Вместо това WireGuard използва концепцията за възли, където всеки член на мрежата се счита за възел, който може да общува с другите възли въз основа на своя ACL. В нашия сценарий възелът OPNsense ще се счита за „клиент“, а възелът WireGuard на вашия VPN доставчик ще действа като „сървър“.
Относно OPNsense
OPNsense е разклонение на pfSense, като и двете са базирани на FreeBSD. Netgate, компанията зад развитието на pfSense, наскоро промени своя бизнес модел и сега предоставя две версии на pfSense: pfSense CE и pfSense Plus. pfSense CE означава Community Edition и е с напълно отворен код, докато pfSense Plus е „премиум“ предложението на Netgate, което съдържа патентован код и допълнителни екстри, които не се пренасят към pfSense CE.
Поради това много потребители на pfSense се страхуват, че изданието с отворен код или ще бъде прекратено, или ще остане без актуализации за продължителни периоди. Много от тези потребители са преминали към OPNsense, който остава напълно отворен код. И докато двете защитни стени са доста сходни, развитието е поело в достатъчно различна посока досега, че техните конфигурации вече не съвпадат. Така че те поддържат много от същите функции, но начинът, по който ги конфигурирате е различен за всяка система.
Така че в този дух ще предоставим уроци както за pfSense, така и за OPNsense. И в тази публикация ще настроим „винаги включена“ WireGuard връзка към VPN доставчик в OPNsense.
Това ръководство предполага, че вече имате настроен OPNsense с работещи WAN и LAN интерфейси.
Да започваме.
Предпоставки
Освен че имате машина, работеща с OPNsense с две мрежови карти (една WAN, една LAN), имате нужда и от абонамент за VPN доставчик, който поддържа WireGuard и позволява конфигурации на рутер. Това ще бъде критично, защото, за да накарате WireGuard да работи с OPNsense, ще трябва да качите публичния ключ на вашата крайна точка на OPNsense тунел (т.е. сървъра) в мрежата на вашия доставчик. Освен това вашият доставчик трябва да ви присвои (и да ви предостави) локален IP адрес и порт за връзка за своята мрежа WireGuard. Вашият VPN доставчик ще предостави тази информация на своя уебсайт.
По-долу са някои препоръчани VPN доставчици, които поддържат (ванилен) WireGuard на рутери:
- Windscribe
- Къртица
- VPN
Има и други, но всички те следват един от трите метода, използвани от горните доставчици. Това ръководство е „независимо от доставчика“.
Генериране на нашата локална двойка ключове WireGuard
Тъй като OPNsense няма вграден генератор на ключове за WireGuard , трябва да ги генерираме с помощта на различни средства, преди да конфигурираме нашия тунел. Направих го, като изтеглих официалното клиентско приложение WireGuard за моята платформа и създадох фиктивна конфигурация само за генериране на ключове. След като копирам ключовете, изтривам конфигурацията.
- От клиентското приложение WireGuard щракнете върху + знак долу вляво.
- Изберете Добавяне на празен тунел... за създаване на нова конфигурация. Това автоматично генерира нова двойка ключове.
- Копирайте и поставете публичния и частния ключ в текстов файл и изхвърлете конфигурацията.
Качване на вашия публичен ключ и получаване на IP адрес
Качването на вашия публичен ключ и получаването на IP адрес варира от доставчик до доставчик. Ето основите как да направите това за всеки от горните доставчици на VPN:
- С iVPN трябва да влезете в акаунта си и ръчно да качите своя публичен ключ. След като бъде качен, iVPN ще ви предостави вашия локален IP адрес.
- С Mullvad можете да използвате следната команда от терминален прозорец: |_+_|. Заменете „|_+_|“ с номера на вашата сметка и заменете „|_+_|“ с вашия публичен ключ.
- С Windscribe ви е предоставен генератор на конфигурация на WireGuard, който ще ви присвои публичен ключ и IP адрес, като същевременно ви предостави частния ключ, който да използвате във вашата система.
Оттук нататък това ръководство предполага, че сте генерирали вашата двойка ключове, качили сте своя публичен ключ и сте получили IP адрес и порт за връзка от вашия VPN доставчик.
Инсталиране на WireGuard
WireGuard в OPNsense е допълнителен пакет (наречен плъгин в OPNsense). Така че първо трябва да инсталираме плъгина.
- От страничното меню изберете Система > фърмуер > Плъгини . The Плъгини страницата се показва.
- Превъртете страницата надолу, докато видите os-wireguard и щракнете върху + знак отдясно. Инсталацията започва.
- След като инсталацията приключи, трябва да видите ***СВЪРШЕН*** в долната част на инсталационния прозорец.
Създаване на WireGuard peer на VPN доставчика
Вече сме готови да започнем да конфигурираме WireGuard peer на нашия VPN доставчик (т.е. „сървъра“).
- От страничното меню изберете VPN > WireGuard . Показва се главната страница на WireGuard. Ние сме на Общ раздел по подразбиране.
- Изберете Крайни точки раздел. The Крайни точки страницата се показва.
- Щракнете върху + подпишете, за да създадете нова крайна точка. The Редактиране на крайна точка страницата се показва.
- Уверете се, че Активирано квадратчето е отметнато.
- Въведете име за този партньор в Име поле.
- Поставете публичния ключ на вашия VPN доставчик за избрания от вас WireGuard сървър в Публичен ключ поле.
- Въведете споделената тайна на вашия доставчик в полето Споделена тайна, ако е необходимо. Моят доставчик не изисква това.
- Въведете 0.0.0.0/0 в Разрешени IP адреси поле. Това ще позволи целия трафик през тунела WireGuard.
- Въведете IP адреса на WireGuard сървъра в Адрес на крайна точка поле.
- Въведете номера на порта на сървъра WireGuard в Порт на крайна точка поле.
- Ако е необходимо, въведете стойност за поддържане на активност в Запази живи Интервал поле. Моят е настроен на 25 секунди.
- Кликнете Запазване в долната част на страницата. Вие сте върнати обратно към Крайни точки страница.
- Кликнете Приложи .
Конфигуриране на нашия локален партньор WireGuard
В тази стъпка ще създадем нашия локален партньор на WireGuard (т.е. „клиента“).
- Изберете Местен раздел. The Местен страницата се показва.
- Щракнете върху + знак за създаване на локален партньор. The Редактиране на локална конфигурация страницата се показва.
- Уверете се, че Активирано квадратчето е отметнато.
- Въведете име за вашия местен партньор в Име поле.
- Поставете своя публичен ключ в Публичен ключ поле (генерирано от клиентското приложение WireGuard).
- Поставете личния си ключ в Личен ключ поле (генерирано от клиентското приложение WireGuard).
- Въведете порта за вашата WireGuard връзка в Слушайте Порт поле.
- Въведете IP адреса, зададен ви от вашия VPN доставчик в Тунел Адрес поле. Важно е да го въведете с a /32 подмрежова маска.
- От Връстници от падащото меню изберете партньора, който създадохме в предишната стъпка.
- Кликнете Запазване в долната част на страницата. Ще бъдете върнати обратно към страницата Local.
- Кликнете Приложи .
Активиране на услугата WireGuard и проверка на състоянието й
Сега, когато нашите „клиентски“ и „сървърни“ възли са конфигурирани, можем да продължим и да активираме услугата WireGuard и да проверим състоянието й, за да сме сигурни, че всичко работи правилно.
- Изберете Общ раздел. The Общ Показва се страницата WireGuard.
- Отбележете Активиране кутия и щракнете Приложи .
- Изберете Статус раздел. The Статус се показва страница, която ни предоставя информация за нашата WireGuard връзка.
- Важната информация включва последен ръкостискане и на трансфер полета. Те ни показват, че връзката е активна и пакетите се прехвърлят.
Така че вече имаме функционална WireGuard връзка. Но преди да можем действително да го използваме, трябва да променим настройка на нашия И интерфейс.
Настройка на MSS затягане на LAN интерфейса
WireGuard има максимална единица за предаване (MTU) от 1420. Така че, докато изпращате и получавате данни през връзката, ако дадена дейтаграма надвишава 1420 байта, тя ще бъде фрагментирана, което може да прекъсне връзката. Ако имате проблеми с MTU, когато използвате WireGuard, очевиден симптом ще бъде, че определени уебсайтове няма да се зареждат. И може да се въртите в кръг, опитвайки се да разберете защо някои сайтове не се зареждат, докато други се появяват добре – това е странен симптом. Когато за първи път настроих WireGuard на моя рутер, почесах главата си с този проблем дни наред, преди да обмисля проблеми с MTU и да настроя MSS затягане.
MSS означава максимален размер на TCP сегмента и настройва размера на предаваната дейтаграма, за да „пасне“ на връзката за данни, по която се предава, без фрагментация. Така че затягането на MSS гарантира, че вашите дейтаграми са достатъчно малки, за да преминат през MTU на интерфейса WireGuard.
В тази стъпка ще закрепим MSS нашия LAN интерфейс, за да сме сигурни, че нашият WireGuard тунел работи правилно.
- От страничното меню изберете Интерфейси > И . Показва се страницата с настройки на LAN интерфейса.
- В полето MSS въведете 1412 и щракнете Запазване . Други стойности също могат да работят, но открих, че 1412 е добра стойност за моята система. Обикновено ще искате да зададете това между 1380 и 1420. Ако имате други интерфейси от LAN тип (OPT), задайте MSS затягане и на тях.
- Кликнете Прилага промени .
Конфигуриране на NAT правила
Така че сега имаме работещ WireGuard тунел и сме приложили MSS затягане на нашата LAN, за да се приведем в съответствие с MTU на WireGuard. Всичко, което остава, преди нашите LAN клиенти да могат да предават трафик през тунела WireGuard, е да настроят подходящо NAT правило.
- От страничното меню изберете Защитна стена > NAT > Изходяща . The Изходяща NAT страницата се показва.
- В горната част на страницата изберете Хибрид NAT вместо по подразбиране, Автоматичен NAT и щракнете Запазване .
- Кликнете Прилага промени .
- В горната част на страницата се появява нов раздел за ръчни правила за изходящ NAT. Щракнете върху + подпишете, за да създадете ново NAT правило. Показва се страницата за конфигуриране на NAT правило.
- От Интерфейс падащо меню, изберете WireGuard (група) .
- От Източник Адрес падащо меню, изберете lan.net .
- Въведете описание за вашето правило в Описание поле.
- Кликнете Запазване .
- Кликнете Приложи Промени .
Обърнете внимание, че докато създадох това правило, за да накарам цялата LAN подмрежа да премине през тунела на WireGuard, можете просто да изпратите един или подгрупа от LAN клиенти през тунела, докато останалите използват вашата WAN. Просто трябва да въведете ip адреса на клиента(ите), а не LAN.net.
Честито. Вече приключихме с конфигурирането на WireGuard връзка към VPN доставчик на OPNsense. Нека рестартираме системата, преди да я тестваме.
Тестваме нашата WireGuard връзка
- След като се рестартираме, можем да се върнем към страницата за състоянието на WireGuard (от страничното меню, VPN > WireGuard > изберете раздела Състояние ), за да сте сигурни, че всичко продължава да работи гладко.
- След това отидете на страницата за проверка на IP адреса на Comparitech и вашият VPN IP адрес трябва да е заменил вашия IP адрес, зададен от ISP.
Добавяне на Widget WireGuard към таблото за управление на OPNsense
Като последно нещо, което е хубаво да имате, можете да добавите widget WireGuard към вашето табло за управление на OPNsense.
- От таблото за управление щракнете Добавете Widget в горния десен ъгъл на страницата. The На разположение Джаджи се показва прозорец.
- Изберете WireGuard от списъка и щракнете Близо .
- Кликнете Запазване на настройките в горния десен ъгъл на страницата, за да заредите джаджата.
- След като се зареди, джаджата показва името на вашия локален партньор (нашият WireGuard „клиент“), интерфейсът, името на крайната точка (нашият WireGuard „сървър“), публичният ключ на крайната точка и времето на последното ръкостискане.
Обобщавайки
Ето как конфигурирате „винаги включена“ WireGuard връзка към VPN търговски VPN доставчик в OPNsense. OPNsense е чудесна алтернатива на pfSense (въпреки че и двете са отлични). И ако изглежда, че собствената посока, която Netgate поема, ви отблъсква, това вероятно е най-лесният превключвател, тъй като системите са толкова сходни. OPNsense също изтласква актуализации по-често, а разработчиците, които са активни във форума на OPNsense, са изключително добри и полезни.
През първите няколко седмици от използването на OPNsense подадох сигнал за грешка и ми беше изпратена персонализирана корекция в рамките на един ден, а самата грешка беше коригирана чрез актуализация в рамките на една седмица. Бях впечатлен.
Както винаги, пазете се.
Свързани:
- Как да конфигурирате 2FA за достъп до GUI в OPNsense
- WireGuard срещу Lightway
- WireGuard срещу NordLynx
- OpenVPN срещу WireGuard