Сервер OpenConnect#

Описание#

ПО Факел поддерживает работу маршрутизатора в режиме OpenConnect VPN сервера. Данный сервер позволяет установить с маршрутизатором SSL/TLS соединение и обеспечить полный доступ к защищаемой (корпоративной) сети. Такой подход к организации VPN объединяет конечных пользователей и ресурсы в защищаемой (корпоративной) сети в виртуальную сеть с контролем доступа, основанным только на информации сетевого уровня, такой как IP адрес отправителя и номер порта. Таким образом достигается необходимая степень защиты всех типов трафика для устройств между открытыми и защищаемыми (корпоративными) сетями, а также шифрование с помощью протоколов SSL/TLS.

Удаленный пользователь с помощью VPN клиента с поддержкой OpenConnect подключается к маршрутизатору и получает IP адрес из заданного пула адресов, получая доступ к ресурсам защищаемой (корпоративной) сети.

Примечание

Все сертификаты должны размещаться в ПО Факел по следующему пути /config/auth. Если сертификаты размещаются не в каталоге /config, они не будут перенесены при обновлении ПО.

Настройка#

Пример настройки#

В первую очередь необходимо сформировать сертификат, который будет удостоверять подлинность пользователей, пытающихся получить доступ к ресурсам защищаемой (корпоративной) сети через SSL/TLS туннели. Следующая команда позволяет создать сертификаты, выпущенные внутренним центром сертификации, которые будут размещены по следующему пути /config/auth.

openssl req -newkey rsa:4096 -new -nodes -x509 -days 3650 -keyout /config/auth/server.key -out /config/auth/server.crt
openssl req -new -x509 -key /config/auth/server.key -out /config/auth/ca.crt

Можно также создать сертификат с помощью инструмента certbot - простого в использовании клиента, который получает сертификат из - Let’s Encrypt - открытого центра - сертификации, созданного консорциумом организаций, и размещает его на веб-сервере.

sudo certbot certonly --standalone --preferred-challenges http -d <domain name>

После того, как сертификат подготовлен, можно переходить к настройке сервера OpenConnect.

  • Используется локальный пользователь с логином user4 и паролем SecretPassword.

  • VPN клиенту выделяется IP адрес из пула 100.64.0.0/24.

  • IP адрес шлюза должен быть адресом одного из интерфейсов маршрутизатора.

set vpn openconnect authentication local-users username user4 password 'SecretPassword'
set vpn openconnect authentication mode 'local'
set vpn openconnect network-settings client-ip-settings subnet '100.64.0.0/24'
set vpn openconnect network-settings name-server '10.1.1.1'
set vpn openconnect network-settings name-server '10.1.1.2'
set vpn openconnect ssl ca-cert-file '/config/auth/fullchain.pem'
set vpn openconnect ssl cert-file '/config/auth/cert.pem'
set vpn openconnect ssl key-file '/config/auth/privkey.pem'

После применения изменений, внесенных в конфигурацию, необходимо убедиться в том, что подключение VPN клиента выполнено успешно.

fakel@fakel:~$ show openconnect-server sessions

interface    username    ip            remote IP      RX        TX        state      uptime
-----------  ----------  ------------  -------------  --------  --------  ---------  --------
sslvpn0      user4       100.64.0.105  xx.xxx.49.253  127.3 KB  160.0 KB  connected  12m:28s

Примечание

В качестве совместимого VPN клиента может использоваться клиент Cisco (R) AnyConnect (R).

Список команд#

Основные настройки#

set vpn openconnect authentication local-users username <user> password <pass>#
set vpn openconnect authentication mode <local|radius>#
set vpn openconnect network-settings client-ip-settings subnet <subnet>#
set vpn openconnect network-settings name-server <address>#
set vpn openconnect network-settings name-server <address>#
set vpn openconnect ssl ca-cert-file <file>#
set vpn openconnect ssl cert-file <file>#
set vpn openconnect ssl key-file <file>#