Как да настроите OpenVPN клиент в pfSense
pfSense е защитна стена с отворен код, базирана на FreeBSD, която действа и като рутер. Можете да инсталирате pfSense на по-стар (или по-нов) хардуер, стига системата да има две мрежови карти (WAN & LAN) и да използвате pfSense като ваш рутер. pfSense предлага повече мощност, контрол и сигурност от повечето търговски рутери, които можете да закупите, и има предимството на честите актуализации на операционната система. Освен това има лесен за използване уеб базиран интерфейс, чрез който можете да конфигурирате всеки аспект на вашия рутер/защитна стена.
Едно от многото страхотни неща, които можете да правите с pfSense, е да конфигурирате клиентска връзка към OpenVPN доставчик. След това можете да конфигурирате pfSense да насочва целия трафик на всички свързани устройства (компютри, таблети, смартфони) през VPN връзката. Това ви позволява да:
- Свържете толкова устройства, колкото искате към VPN и заобиколете и твърдите ограничения за едновременни връзки, които вашият доставчик може да наложи.
- Свържете устройства, които не поддържат първоначално VPN връзки, като игрови конзоли и смарт телевизори
- Свържете се с VPN, без да използвате специално VPN приложение.
В тази публикация ще разгледаме как да настроите OpenVPN клиентска връзка към търговски VPN доставчик в pfSense. Това ръководство предполага, че сте инсталиран pfSense и че имате стандартна конфигурация с поне един LAN интерфейс и един WAN интерфейс.
VPN доставчици
Не всички комерсиални VPN доставчиците поддържат pfSense – макар че мнозина го правят. Когато VPN доставчик официално поддържа pfSense, е доста лесно да намерите всички необходими файлове, за да го настроите в pfSense. Други VPN доставчици не поддържат официално pfSense, но все пак предоставят на ваше разположение конфигурационните файлове, които са ви необходими, за да настроите клиентска връзка на pfSense. Това обикновено са доставчици, които поддържат Linux и правят необходимите конфигурационни файлове достъпни за Linux конфигурация. Но тъй като се оказва, че файловете, от които се нуждаете, за да направите OpenVPN клиентска връзка в Linux, са същите, които ще трябва да настроите и на pfSense.
Ето списък с доставчици, за които е известно, че работят с pfSense (официално или неофициално). Списъкът не е изчерпателен, така че може да има и други.
ПРЕДУПРЕЖДЕНИЕ ЗА СДЕЛКА:Вземете 3 месеца безплатно с ExpressVPN, нашия №1 оценен VPN доставчик.
- AirVPN
- ExpressVPN
- Surfshark
- скрий ме
- Скрий задника ми
- VPN
- Къртица
- NordVPN
- OVPN
- Частен достъп до Интернет
- ProtonVPN
- PureVPN
- TorGuard
- VyprVPN
- Windscribe
Има и различни начини за настройка на един и същ доставчик на pfSense. За това ръководство избрах най-простия начин, който работи добре с типична основна инсталация на pfSense.
Какво ще ви трябва
За да накарате това да работи на pfSense, ще трябва да получите следното от уебсайта на вашия VPN доставчик. Доставчиците на VPN, които поддържат pfSense (официално или неофициално), ще направят своите конфигурационни файлове достъпни за изтегляне.
- Вашите пълномощия : Това ще бъде потребителско име и парола, идентификатор на клиент, номер на акаунт – както и да го наричат. Тя варира според доставчика. Може да бъде всяко от горните. Просто се нуждаете от вашите средства за идентификация и удостоверяване за вашия акаунт.
- CA сертификат : VPN доставчикът има сертифициращ орган, който валидира връзките към неговите VPN сървъри. За да конфигурирате pfSense като VPN клиент, ще ви е необходим CA сертификат на вашия доставчик. Изглежда така:
- Частният ключ на CA сертификата : Някои доставчици също изискват да импортирате частния ключ на CA сертификата. Не всички го правят. Изглежда така:
- Ключът TLS : Някои доставчици на VPN също изискват TLS ключ за създаване на клиентска връзка към техните сървъри. Често се нарича статичен ключ. Ако вашият доставчик на VPN изисква статичен ключ за установяване на OpenVPN връзка, вие също ще имате нужда от него. Изглежда така:
Така че първото нещо, което трябва да направите, е да получите конфигурационните файлове на OpenVPN от вашия VPN доставчик. След като получите всичко това, вие сте готови да започнете да конфигурирате клиентската връзка в pfSense.
Конфигуриране на pfSense
Влизам
Първото нещо, което трябва да направим, е да влезем в нашата кутия pfSense.
- Стартирайте уеб браузър и въведете: https://
в URL лентата. pfSense по подразбиране е 192.168.1.1. - Въведете вашето потребителско име и парола. Ще бъдете отведени до таблото за управление на pfSense.
Импортиране на CA сертификат и ключ
Ще започнем с импортиране на CA сертификата на нашия VPN доставчик.
Как да импортирате CA в pfSense
- Навигирайте доСистема > Серт. Мениджър > CAи щракнете върхуДобаветебутон долу вдясно.
- Дайте на CA описателно име. Използвам My VPN Provider CA за този пример.
- НагласиМетодполе къмИмпортирайте съществуващ сертифициращ орган.
- Поставете CA сертификата на вашия доставчик вДанни за сертификатполе.
- Поставете вашия CA ключ вЧастен ключ на сертификатполе (ако вашият доставчик изисква това).
- Щракнете върху Запазване. Импортирахте CA на вашия VPN доставчик и се връщате на страницата на CAs, където вашият новоимпортиран CA вече се показва в списъка.
Добавяне на OpenVPN клиентска връзка
Сега, след като импортирахме нашия CA сертификат, можем да продължим и да започнем да конфигурираме нашата VPN връзка.
Ако вашият VPN доставчик изрично поддържа pfSense, информацията, от която се нуждаете, за да го настроите, ще бъде лесна за намиране. Ако вашият VPN доставчик „неофициално“ поддържа pfSense чрез поддръжка на Linux, можете да намерите необходимата информация в един от .ovpn файловете, предоставени за Linux. .ovpn файловете могат да се отварят с помощта на стандартен текстов редактор. Ще изглежда по следния начин (сертификатът и ключът са съкратени за екранната снимка):
Навигирайте доVPN > OpenVPN > Клиентии щракнете върхуДобаветебутон.
Страницата за конфигурация на OpenVPN клиента е доста дълга. Ще го разбием по раздели и ще разгледаме всички параметри, необходими за настройка на OpenVPN връзка.
Главна информация
хора с увреждания : Оставете това без отметка или клиентската ви връзка ще бъде деактивирана.
Сървърен режим : Задайте това на Peer to Peer (SSL/TLS). Другата опция, споделен ключ, обикновено се използва за VPN връзки от точка до точка, които свързват две мрежи заедно през VPN.
Протокол l: Това обикновено е зададено на UDP, но може да бъде зададено и на TCP, ако вашият доставчик поддържа TCP връзки. UDP обикновено е по-бърз и е предпочитаният избор за OpenVPN.
Интерфейс : BY
Местно пристанище : Оставете празно, освен ако не е посочено от вашия VPN доставчик
Хост или адрес на сървъра : IP адресът или името на хоста на VPN сървъра, към който ще се свържете.
Сървърен порт : Портът, през който ще бъде осъществена VPN връзката. Това се определя от вашия VPN доставчик.
Прокси хост или адрес : Остави празно
Прокси порт : Остави празно
Прокси удостоверяване : Остави празно
Настройки за удостоверяване на потребителя
Това е мястото, където въвеждате идентификационните данни на своя VPN доставчик. Както споменах по-горе, това може да бъде под формата на потребителско име и парола, или клиентски идентификатор, или номер на акаунт – каквото вашият VPN доставчик е избрал. Ако вашият доставчик не изисква парола, просто оставете полето за парола празно.
Потребителско име : Вашето потребителско име, клиентски идентификатор, номер на сметка и др.
Парола : Вашата парола (ако е необходима)
Автоматичен Опитайте отново : Оставете без отметка, така че вашият клиент да се опита да се свърже отново, когато удостоверяването е неуспешно.
Криптографски настройки
Начинът за конфигуриране на секцията Криптографски настройки варира значително между доставчиците на VPN услуги. Ще трябва да получите правилната информация от вашия VPN. Повечето доставчици правят тази информация лесно достъпна.
TLS конфигурация : Някои VPN доставчици изискват TLS ключ да се използва за удостоверяване на OpenVPN връзката. Други не го правят. Ако го направят, TLS ключът ще бъде пакетиран с конфигурационните файлове, които сте изтеглили. Ако вашият доставчик изисква TLS ключ, отметнете Използвайте TLS ключ. В противен случай махнете отметката.
Автоматично генериране на TLS ключ : Оставете без отметка.
TLS ключ : Ако е необходимо, поставете TLS ключа, предоставен от вашия доставчик на VPN. В противен случай оставете полето празно.
Режим на използване на TLS ключ : TLS ключовете могат да се използват или за TLS удостоверяване, или за TLS удостоверяване и криптиране. Това зависи от вашия доставчик. Изберете подходящия режим на използване на TLS ключ от падащото меню.
TLS keydir посока : Оставете при Използване на посоката по подразбиране, освен ако не е посочена друга настройка от вашия доставчик. TLS ключовете на клиента и сървъра трябва да бъдат зададени в противоположни посоки, за да работи TLS удостоверяването.
Партньорски сертифициращ орган : Изберете CA, който импортирахме по-рано.
Клиентски сертификат : Оставете тази настройка на Няма. С OpenVPN е възможно да се използва удостоверяване, базирано на сертификат, вместо потребителско име и парола, или и двете. Въпреки това, всеки VPN доставчик, който съм виждал, използва удостоверяване, базирано на идентификационни данни, вероятно защото разпространението на уникални сертификати на всеки клиент бързо би станало неуправляемо.
Алгоритъм за криптиране : Тази настройка определя шифъра, използван за шифроване на вашата връзка. Това отново зависи от вашия VPN доставчик. Повечето доставчици обаче използват AES-256-CBC или AES-256-GCM.
Активирайте NCP : NCP означава Договаряеми криптографски параметри. Ако вашият VPN доставчик поддържа различни настройки за криптиране, NCP ще договори най-силното възможно криптиране, което се поддържа както от клиента (вашата кутия pfSense), така и от VPN сървъра. Освен ако не знаете, че вашият доставчик поддържа NCP, махнете отметката и ще се използва шифърът, избран в алгоритъма за шифроване по-горе.
NCP Алгоритми : Ако използвате NCP, можете да изберете кои шифри са налични за преговори. Щракването върху шифър от наличния списък го импортира в разрешения списък.
Алгоритъм за дайджест за удостоверяване : Това е алгоритъмът, използван за удостоверяване на канала за данни (тунела, през който протича вашият трафик). Това се определя от вашия VPN доставчик. Изберете подходящия алгоритъм от падащото меню.
Хардуерен крипто : Ако системата, на която сте инсталирали pfSense, поддържа хардуерно криптографско ускорение, можете да го активирате тук. Ако вашата система поддържа тази настройка, можете да я активирате, независимо кой VPN доставчик използвате.
Настройки на тунела
Настройките на тунела ще останат почти празни. Тези настройки са свързани с маршрутизирането между клиента и сървъра и обикновено се обработват от VPN доставчика от страната на сървъра.
IPv4 тунелна мрежа : IPv4 мрежата между клиента и сървъра. Остави празно.
IPv6 тунелна мрежа : IPv6 мрежата между клиента и сървъра. Остави празно.
IPv4 отдалечена мрежа(и) : IPv4 мрежите, които ще бъдат маршрутизирани през тунела. Остави празно.
IPv6 отдалечена мрежа(и) : IPv6 мрежите, които ще бъдат маршрутизирани през тунела. Остави празно.
Ограничете изходящата честотна лента : Задава твърдо ограничение на изходящата честотна лента. Остави празно.
Компресия : Някои доставчици на VPN може да изискват да активирате компресиране на трафика, преминаващ през VPN тунела. Ако това е указано от вашия доставчик, изберете подходящата опция от падащото меню. В противен случай го оставете както е.
Топология : Указва топологията на VPN мрежата. Оставете както е.
Тип на услугата : Оставете без отметка.
Не дърпайте маршрути : Тази настройка забранява на VPN сървъра да изпраща маршрути към клиента. Някои доставчици включват информацията за маршрутизиране в конфигурацията на клиента и може да ви помолят да активирате тази опция (като ExpressVPN). Ако това е указано от вашия доставчик, отбележете тази опция. В противен случай го оставете без отметка.
Не добавяйте/премахвайте маршрути : Тази опция може да се използва за активиране на селективно маршрутизиране: изпращане на част от трафика през VPN тунела, докато останалата част се изпраща през шлюза на ISP. Това изисква настройка на VPN интерфейса (който ще създадем по-долу) като шлюз в pfSense и указване на някои правила за защитна стена и NAT, за да работи. Това е извън обхвата на това ръководство. Също така, във вашия типичен комерсиален VPN сценарий искате целият ви трафик да бъде тунелиран през VPN връзката. Оставете тази настройка без отметка.
Настройки за пинг
Настройките за ping се използват, за да се определи дали връзката е активна или не и дали трябва да бъде затворена или възобновена. Оставете всички настройки както са.
Разширена конфигурация
Персонализирани опции : Някои доставчици изискват задаване на някои персонализирани опции за конфигурацията на клиента. Те могат да се добавят тук. Освен ако вашият доставчик не посочи необходимите персонализирани опции, оставете това празно.
UDP бърз I/O : Оптимизира писането на пакети и може да ускори вашата VPN връзка. Това може да се активира и деактивира в свободното ви време. Бих казал, че опитайте и двете и вижте дали ще получите ускорение от него.
Излезте от известието : Тази настройка изрично предупреждава сървъра, когато клиентът прекъсне връзката, така че да може да затвори връзката, вместо да чака да изтече времето за изчакване. Оставете това както е, освен ако не е посочено от вашия доставчик.
Буфер за изпращане/получаване : Можете да експериментирате с различни размери на буфера в OpenVPN. Различните настройки ще дадат различни резултати по отношение на скоростта. 512K е добро място за начало. Тази настройка не е задължителна.
Създаване на шлюз : Избира дали OpenVPN шлюзовете ще бъдат създадени само за IPv4, само за IPv6 или и за двете. Освен ако вашият VPN доставчик не поддържа IPv6 (като Mullvad), задайте това само на IPv4. Ако вашият доставчик поддържа IPv6, задайте това на Both.
Ниво на многословие : Определя нивото на подробност на регистрационните файлове на OpenVPN за този клиент. Нивото по подразбиране е 1. Но можете да зададете това на по-високо ниво, за да получите повече информация при отстраняване на неизправности. Регистрационни файлове на OpenVPN в pfSense могат да бъдат прегледани чрез навигиране до Статус > Системни регистрационни файлове > OpenVPN.
Сега всичко, което остава, за да създадем нашата клиентска връзка, е да щракнете върху синия бутон Запазване в долната част на екрана и да щракнете върху Прилагане на промените.
Създаване на VPN интерфейс
Следващото нещо, което трябва да направим, е да създадем виртуалния интерфейс, който ще хоства VPN мрежовия сегмент (подмрежата, от която ставате част след успешна VPN връзка) на нашата pfSense кутия.
Интерфейсът беше създаден автоматично от pfSense, когато натиснахме запазване след конфигуриране на нашата връзка по-рано. Но все още трябва да го присвоим и конфигурираме.
Как да добавите интерфейс в pfSense
- Навигирайте до Интерфейси > Задания . Ще видите ovpnc1 в списъка вдясно от На разположение мрежови портове.
- Кликнете върху зеленото Добавете бутон, отдясно. Интерфейсът ovpnc1 се присвоява и показва катоОПТ1.
- Кликнете ОПТ1 . Ще бъдете отведени до страницата за конфигурация на интерфейса.
- отметка Активиране на интерфейса и му дайте име. Оставете всички други настройки недокоснати.
- Кликнете Запазване и Прилага промени . Вашият интерфейс е зададен и активиран.
Ако се върнете обратно към страницата за присвояване на интерфейс, можете да видите, че вашият наименуван интерфейс вече е част от списъка с активни интерфейси.
Проверка на връзката
Добре, вече имаме конфигурирана връзка с OpenVPN клиент и създадохме нашия VPN интерфейс. Връзката ни работи в момента, но pfSense не е конфигуриран да насочва трафик през VPN тунела.
Можем да проверим дали връзката ни работи, като отидем наСъстояние > Системни регистрационни файлове > OpenVPN. Ако OpenVPN клиентът е настроен правилно, трябва да видите Последователността на инициализация е завършена , някъде близо до горната част на регистрационните файлове на OpenVPN.
Сега просто трябва да насочваме трафика през VPN тунела.
Правила на защитната стена
Трябва да сме сигурни, че устройствата, свързани към LAN интерфейса, могат да изпращат трафик към интернет през шлюза по подразбиране. Когато инсталирате pfSense, той автоматично създава правило, позволяващо всякакъв тип трафик извън LAN интерфейса по подразбиране. Така че, ако не сте променили нищо там, трябва да сте добре.
Ако сте ги променили, уверете се, че вашите правила позволяват на LAN устройствата, които искате да свържете към VPN, да излизат в интернет. Навигирайте доЗащитна стена > Правила > LANза да видите/актуализирате вашите LAN правила.
Ето как изглеждат стандартните LAN правила. По подразбиране има правило за IPv4 и едно за IPv6. Освен ако вашият VPN доставчик не поддържа IPv6, имате нужда само от правилото IPv4.
Правилото позволява на всяко устройство в LAN да се свързва с всяка дестинация, използвайки произволен протокол през всеки порт.
Ако правилото не е там, можете да продължите и да го създадете.
Как да създадете правило за LAN защитна стена
- Кликнете върху зеленотоДобаветебутон със стрелка, сочеща нагоре. Той ще постави правилото най-отгоре и pfSense първо ще съпостави това правило.
- НагласиДействиеполе за преминаване.
- Оставихора с уврежданияполето е отметнато.
- ОставиИнтерфейсполето е зададено наИ.
- НагласиАдрес Семействода сеIPv4.
- Нагласипротоколдо всеки
- НагласиИзточникда сеИ нето.
- НагласиДестинацияда севсякакви.
- Ако имате нужда и от IPv6 правило, повторете процеса и изберетеIPv6отАдрес Семействопадащо меню.
NAT правила
Следващото нещо, което трябва да направим, е да конфигурираме нашите правила за превод на мрежови адреси (NAT), за да маршрутизираме правилно нашия VPN трафик.
Как да добавите NAT правило
- Навигирайте до Защитна стена > NAT > Изходящ .
- Нагласи Изходящ NAT режим да се Наръчник и след това щракнете Запазване и Прилага промени . Вашите NAT правила сега трябва да изглеждат така (но с вашата LAN мрежа вместо моята 10.0.0.0/24):
- Изтрийте всички правила, с изключение на двете горни – тези с 127.0.0.1.
- Кликнете върху зеленото Добавете с насочена надолу стрелка, за да създадете ново NAT правило.
- Нагласи Интерфейс поле към VPN интерфейса, който създадохме по-рано.
- Нагласи Адрес Семейство към IPv4 или IPv4+IPv6, ако вашият VPN доставчик изрично поддържа IPv6.
- Нагласи източник мрежакъм вашия LAN IP адрес, но направете последната цифра 0 вместо 1. Така че, ако вашият LAN IP адрес е 192.168.1.1, поставете 192.168.1.0 като изходна мрежа.
- Оставете всички останали настройки недокоснати. Кликнете Запазване и Прилага промени .
Вашите NAT правила сега трябва да изглеждат така (но с вашата LAN мрежа вместо моята 10.0.0.0/24):
Вижте също: Какво е NAT защитна стена
DNS
Последното нещо, което трябва да конфигурираме, е DNS за вашия VPN клиент. И има различни начини да направите това в зависимост от вашата конфигурация на pfSense. Дори ако вашият VPN доставчик кодира твърдо своите DNS сървъри в техния .ovpn конфигурационен файл, pfSense все още трябва да знае кои DNS сървъри ще бъдат използвани.
DNS преобразувател / DNS препращач
Ако използвате DNS Forwarder или DNS Resolver в режим на пренасочване, можете просто да добавите DNS сървъра(ите) на вашия VPN доставчик към страницата General Setup.
Как да добавите DNS сървър към pfSense
- Навигирайте до Система > Общи настройки.
- Кликнете Добавете DNS сървър.
- Въведете IP адрес от името на хоста на DNS сървъра в съответното поле.
- Остави Шлюз настроен на Нито един .
- Кликнете Запазване и Прилага промени .
- Повторете, за да добавите допълнителни DNS сървъри.
DHCP
Как да изпратите DNS сървър към клиенти чрез DHCP
Ако не използвате DNS Resolver или DNS Forwarder, можете да накарате вашия DHCP сървър да изпрати DNS сървъра към всички клиенти, които поискат IP адрес във вашата LAN.
- Навигирайте до Услуги > DHCP сървър
- Под Сървъри , можете да въведете до четири DNS сървъра.
- Въведете DNS сървъра(ите) на вашия VPN доставчик.
- Кликнете Запазване и Прилага промени .
Обобщавайки
Поздравления, току-що конфигурирахте OpenVPN клиентска връзка на pfSense. Всичко, което остава сега, е да рестартирате pfSense и да свържете устройство към вашата LAN. След като се свържете, можете да отидете на нашия инструмент за проверка на IP адреси, за да проверите дали вашият публичен IP адрес е променен на IP адреса на VPN сървъра. Можете също така да проверите за течове на DNS с нашия инструмент за тестване.
Вече можете да използвате своята търговска VPN с всяко устройство, което е свързано към вашата pfSense кутия, без специално приложение за VPN. И не забравяйте, че независимо от ограничението, което вашият VPN доставчик поставя върху броя на едновременните връзки, вашият рутер се брои само като едно устройство, що се отнася до вашия VPN доставчик. Така че можете да свържете колкото искате устройства по този начин.