Установка сертификата
При использовании авторизации по методу EAP-MSCHAPv2 потребуется наличие сертификата на принимающем сервере. Для этого создадим цепочку Центр сертификации + Сертификат сервера на нашем шлюзе pfsense.
Создание Центра сертификации
System / Certificate Manager / CAs
Add - создаём новый сертификат Центра сертификации
Descriptive name - TEST-PfSense-CA (название центра сертификации)
Method - Create an internal certificate
При необходимости заполнить данные о компании и
Создание сертификата сервера
System / Certificate Manager / Certificates
Add
Method - Create an internal certificate
Descriptive name - VPN-Server (название сертификата)
Common Name - pfsense.pontin.ru (адрес, по которому будет производиться обращение к IKEv2 серверу клиентами)
Certificate Type - Server Certificate
Alternative Name - добавить при необходимости альтернативные адреса использования сертификата
Настройка сервера IPSec
Mobile Clients
VPN / IPsec / Mobile Clients
IKE Extensions - включить
Virtual Address Pool - 10.0.0.0/29 (указать адрес виртуальной сети (с маской) - в нашем случае сеть вмещает 6 адресов)
Network List - включить
DNS Default Domain - TEST.LOCAL (добавить доменное имя при необходимости)
DNS Servers - 192.168.145.1 192.168.145.2 (указать адреса внутренних DNS серверов при необходимости)
Save + Apply Changes
Phase 1
Key Exchange version - IKEv2
Authentication method - EAP-MSChapv2
My Identifier - Distinguished name - pfsense.pontin.ru
Peer Identifier - any
My Certificate - VPN-Server
Encryption algorithm - AES 256
Hash - SHA256
DH group - 2 (1024 bit)
Lifetime - 28800
Disable Rekey и Disable Reauth - отключить
Enable DPD - включить
Phase 2
Show Phase 2 Entries
Add P2
Mode - Tunnel IPv4
Local Network - 0.0.0.0/0 (данное значение позволяет принимать соединения от любых локальных сетей)
Protocol - ESP
Encryption algorithms - 3DES
Hash algorithms - SHA1 + SHA256
PFS Key Group - off
Lifetime - 3600
Save + Apply Changes
Создание клиентских ключей (Pre-Shared Keys)
VPN / IPsec / Pre-Shared Keys
Add
Identifier - user-1 (имя пользователя)
Secret Type - EAP
Pre-Shared Key - 111111 (пароль)
Save + Apply Changes
Настройка правил Firewall
Firewall / Rules / IPsec
Add
Protocol , Source , Destination - any
Save + Apply Changes
Настройка клиентского компьютера
Установка сертификата
Выгрузить сертификат Центра сертификации в файл
System / Certificate Manager / CAs
- Export CA
Установить сертификат Центра сертификации TEST-PfSense-CA в хранилище "Доверенные корневые центры сертификации" локального компьютера.
В командной строке, запущенной от имени Администратора выполнить команду
certutil -addstore -user Root C:\TEST-PfSense-CA.crt
(где C:\TEST-PfSense-CA.crt - путь к скаченному сертификату Центра сертификации)
Создать VPN соединение
адрес сервера - pfsense.pontin.ru
пользователь - user-1 / пароль - 111111
В свойствах соедиенения
Безопасность
Тип VPN - IKEv2
Протокол расширенной проверки подлинности - Microsoft: защищённый пароль (EAP-MSCHAP v2)
Сеть
Протокол Интернета версии 4 - свойства -дополнительно - Использовать основной шлюз в удалённой сети - отключить.
Чтобы получить доступ к сетевым ресурсам удалённой сети нужно добавить маршрутизацию
route -p add 192.168.145.0 mask 255.255.255.0 10.0.0.1
т.к. при каждом новом сеансе VPN назначается произвольный адрес из заданного диапозона, то желательно добавить постоянный маршрут для каждого возможного адреса (10.0.0.1 и т.д.)
С уважением и надеждой Геннадий
По сути можно использовать любой внешний IP адрес или доменное имя (которое будет вести на внешний IP адрес), что бы обращаться к шлюзу (pfSense) через интернет.
Если внешний IP динамический, то можно использовать систему DDNS (тоже встроена в pfSense).