2. Настройка Forsec-VPN¶
2.1. Управление forsec-vpn¶
Для управления forsec-vpn используется утилита forsec-vpn. Её
нужно запускать от имени пользователя, входящего в группу
forsec-vpn, либо от суперпользователя (root).
$ forsec-vpn help
Usage:
forsec-vpn list
forsec-vpn enable [<connection name>]
forsec-vpn disable [<connection name>]
forsec-vpn gen-ac <Access key generation data path>
forsec-vpn store-ac [<Access key path>]
forsec-vpn load-ac [<Access key path>]
forsec-vpn clear-ac [<Access key path>]
forsec-vpn import-key <Key path>
forsec-vpn ac-state
forsec-vpn list-keys
forsec-vpn remove-key <key serial> <key local-cn>
forsec-vpn update-config
forsec-vpn check
forsec-vpn version
Команды forsec-vpn:
Команда |
Описание |
|---|---|
list |
Просмотр соединений |
enable |
Включение соединений |
disable |
Выключение соединений |
gen-ac |
Генерация ключа доступа |
store-ac |
Сохранение ключа доступа |
load-ac |
Загрузка ключа доступа |
clear-ac |
Очистка ключа доступа |
import-key |
Загрузка ключа |
ac-state |
Просмотр статуса ключа доступа |
list-keys |
Просмотр загруженных ключей |
remove-key |
Удаление ключа |
update-config |
Перезагрузка конфигурации |
check/version |
Проверка сервиса (контрольных сумм, ПДСЧ, криптографических функций), вывод версии и контрольной суммы Forsec-VPN |
2.2. Файл конфигурации¶
Для настройки forsec-vpn используется файл
/opt/forsec-vpn/forsec-vpn.conf. Он использует формат json.
Все соединения содержатся в массиве connections. Каждое соединение
состоит из следующих настроек:
Настройка |
Значение |
Аналог в Fortics |
Комментарий |
|---|---|---|---|
name |
название fortun-соединения |
||
id |
идентификатор туннеля |
|
|
autostart |
автозапуск соединения при запуске сервиса |
boolean (true/false); работает только при указании access-key-path на глобальном уровне |
|
mode-fortap |
режим fortap |
|
boolean (true/false) |
keepalive |
настройки keepalive |
|
Секция |
key |
настройки ключа |
|
Секция |
interface |
настройки виртуального интерфейса |
Секция |
|
udp |
настройки UDP-соединения |
Секция |
Секция keepalive состоит из следующих настроек:
Настройка |
Значение |
Аналог в Fortics |
Комментарий |
|---|---|---|---|
interval |
интервал keepalive |
|
|
retries |
количество попыток keepalive |
|
Секция key состоит из следующих настроек:
Настройка |
Значение |
Аналог в Fortics |
Комментарий |
|---|---|---|---|
serial |
серия ключа |
|
|
local-cn |
локальный криптономер |
|
|
remote-cn |
удалённый криптономер |
|
Секция interface состоит из следующих настроек:
Настройка |
Значение |
Аналог в Fortics |
Комментарий |
|---|---|---|---|
name |
имя виртуального интерфейса |
|
по умолчанию совпадает с названием fortun-соединения |
address |
адрес виртуального интерфейса |
|
На данный момент поддерживается только один адрес; можно вместо адреса указать |
routes |
список маршрутов |
Секция udp состоит из следующих настроек:
|remote-host|адрес удалённого конца
туннеля|<ipv4/ipv6> remote|по идее можно указывать не только
ip-адрес, но и доменное имя (например fortun.zts.ru)|
|remote-port|порт удалённого конца туннеля|encap dport||
|local-host|адрес локального конца
туннеля|<ipv4/ipv6> local|не рекомендуется к использованию; по
идее можно указывать не только ip-адрес, но и доменное имя|
|local-port|порт локального конца туннеля|encap sport|не
рекомендуется к использованию|
На глобальном уровне (для всех интерфейсов) доступны следующие настройки:
Настройка |
Значение |
Комментарий |
|---|---|---|
block-unencrypted |
блокировка незашифрованного трафика в системе |
boolean (true/false) |
access-key-path |
путь к КД |
указывается для автоматической загрузки КД; он должен быть сохранён по этому пути без пароля |
а настройка “block-unencrypted”, блокирующая незашифрованный трафик в системе.
После редактирования конфигурации нужно обновить её контрольную сумму:
$ forsec-vpn update-config
Configuration checksum is invalid; do you want to update it? (y/n)
y
2.3. Пример конфигурации¶
$ cat /opt/forsec-vpn/forsec-vpn.conf
{
"connections": [
{
"name": "conn1",
"id": 1,
"interface": {
"address": "192.168.10.2/24",
"dns": {
"server": "192.168.10.1",
"domain": [
"domain.int",
"domain2.int"
]
},
"routes": [
"10.0.0.0/24",
"10.0.10.0/24"
]
},
"udp": {
"remote-host": "12.34.56.78",
"remote-port": "505"
},
"keepalive": {
"interval": 5,
"retries": 2
},
"key": {
"serial": 100,
"local-cn": 2,
"remote-cn": 1
},
"autostart": true
}
],
"block-unencrypted": false,
"access-key-path": "/var/lib/forsec-vpn-ac"
}
2.4. Инициализация криптоподсистемы¶
Для генерации КД используется следующая команда:
$ forsec-vpn gen-ac <path-to-key>
Далее КД нужно сохранить:
$ forsec-vpn store-ac <path-to-ac>
Password:
Пароль должен быть либо пустым, либо от 8 символов. Также непустой пароль проходит проверку по словарю.
Все пути должны быть абсолютными. Директория <path-to-ac> должна
существовать.
Для загрузки ключа используется команда:
$ forsec-vpn import-key <path-to-key>
2.5. Запуск соединений¶
Для запуска соединений нужно загрузить КД, если он не был создан при этом запуске forsec-vpn:
$ forsec-vpn load-ac <path-to-ac>
Для запуска соединений используется команда:
$ forsec-vpn enable [имя соединения]
Если имя соединения не указано, запустятся все соединения.
2.6. Журнал¶
На данный момент используется стандартный системный журнал:
$ journalctl -u forsec-vpn