Управления доступом
Аутентификация
Аутентификация – это процесс проверки подлинности введённых пользователем имени и пароля. В ARMA Стена возможна аутентификация с использованием локальной или внешней БД пользователей. Для хранения УЗ пользователей по умолчанию применяется локальная БД. В качестве внешней БД служат различные внешние серверы авторизации.
В системе ARMA Стена предусмотрена учётная запись «admin», обладающая правами суперпользователя.
Локальные учётные записи
Просмотр локальных учётных записей
Система ARMA Стена предоставляет команды для просмотра информации о локальных учётных записях, включая их статус, тип, класс, данные о последнем входе и другие атрибуты.
Просмотр пользовательских учётных записей
Для отображения списка пользовательских учётных записей, созданных в системе, используется команда:
admin@ngfwos:~$ show system login users ngfwos [json] Username Full name Class Type Status From Last login ---------- ----------- ------------------------- ------ -------- ------------ ------------------------ admin NGFW_Super_Administrators ngfwos Normal 192.168.21.2 Mon Aug 18 11:28:11 2025 user1 test Security_Engineers ngfwos Normal 172.16.14.9 Fri Aug 15 14:42:44 2025 user2 test Network_Administrators ngfwos Normal 172.16.14.25 Fri Aug 15 14:40:47 2025 test1Опциональный параметр json позволяет вывести данные в формате JSON для программной обработки.
Формат вывода включает следующие поля:
Username - имя учётной записи пользователя, использованное при аутентификации в системе.
Full name - полное имя учётной записи пользователя.
Class - класс учётной записи.
Type - тип учётной записи.
Status - состояние учётной записи на момент последнего входа. Возможные значения:
Normal - учётная запись активна, ограничений нет;
Temporarily locked - учётная запись временно заблокирована вследствие превышения допустимого числа неудачных попыток аутентификации;
Locked - учётная запись заблокирована.
Tty - идентификатор терминала или псевдотерминала, выделённого сессии пользователя. Допустимые значения:
tty - физические или виртуальные консоли (tty1–tty6), доступные при локальном подключении (KVM, serial-порт);
pts/n - псевдотерминалы, используемые для сетевых сессий (SSH);
ttySn - последовательные терминалы (при использовании последовательной консоли).
From - IP-адрес хоста, с которого выполнен вход в систему.
Last login - дата и время последней успешной аутентификации в формате: ДеньНедели Месяц День ЧЧ:ММ:СС ГГГГ, представленные по локальному времени системы.
Просмотр всех учётных записей в системе
Для отображения полного списка всех локальных учётных записей, включая системные и служебные, используется команда:
admin@ngfwos:~$ show system login users all [json] Username Full name Class Type Status From Last login ---------------- ----------- ------------------------- ------ -------- ------------ ------------------------ root other Locked never logged in daemon other Locked never logged in bin other Locked never logged in sys other Locked never logged in sync other Locked never logged in games other Locked never logged in man other Locked never logged in lp other Locked never logged in mail other Locked never logged in news other Locked never logged in uucp other Locked never logged in proxy other Locked never logged in www-data other Locked never logged in backup other Locked never logged in list other Locked never logged in irc other Locked never logged in _apt other Locked never logged in nobody other Locked systemd-network other Locked never logged in salt other Locked never logged in telegraf other Locked never logged in drweb other Locked never logged in strongswan other Locked never logged in arma-lc other Locked never logged in zabbix other Locked never logged in uuidd other Locked never logged in messagebus other Locked never logged in tftp other Locked never logged in tss other Locked never logged in stunnel4 other Locked never logged in conservr other Locked never logged in frr other Locked never logged in ocserv other Locked never logged in pdns other Locked never logged in iperf3 other Locked never logged in _chrony other Locked never logged in haproxy other Locked never logged in Debian-snmp other Locked never logged in _dnsdist other Locked never logged in _lldpd other Locked never logged in owamp other Locked never logged in arpwatch other Locked never logged in avahi other Locked never logged in twamp other Locked never logged in tcpdump other Locked never logged in sshd other Locked never logged in sstpc other Locked never logged in polkitd other Locked never logged in minion other Locked never logged in openvpn other Locked never logged in tacacs0 other Locked never logged in tacacs1 other Locked never logged in tacacs2 other Locked never logged in tacacs3 other Locked never logged in tacacs4 other Locked never logged in tacacs5 other Locked never logged in tacacs6 other Locked never logged in tacacs7 other Locked never logged in tacacs8 other Locked never logged in tacacs9 other Locked never logged in tacacs10 other Locked never logged in tacacs11 other Locked never logged in tacacs12 other Locked never logged in tacacs13 other Locked never logged in tacacs14 other Locked never logged in tacacs15 other Locked never logged in radius_user other Locked never logged in radius_priv_user other Locked never logged in dhcpd other Locked never logged in admin NGFW_Super_Administrators ngfwos Normal 192.168.21.2 Tue Aug 19 06:12:15 2025 user1 test Security_Engineers ngfwos Normal 172.16.20.9 Fri Aug 15 14:42:44 2025 user2 test Network_Administrators ngfwos Normal 172.16.20.9 Fri Aug 15 14:40:47 2025 test Network_Administrators ngfwos Locked 192.168.21.2 Tue Aug 19 06:23:53 2025 test1 ngfwos Normal
Просмотр системных (служебных) учётных записей
Для фильтрации и отображения только технических учётных записей, используемых внутренними службами системы, применяется команда:
admin@ngfwos:~$ show system login users other [json] Username Full name Class Type Status From Last login ---------------- ----------- ------- ------ -------- ------ --------------- root other Locked never logged in daemon other Locked never logged in bin other Locked never logged in sys other Locked never logged in sync other Locked never logged in games other Locked never logged in man other Locked never logged in lp other Locked never logged in mail other Locked never logged in news other Locked never logged in uucp other Locked never logged in proxy other Locked never logged in www-data other Locked never logged in backup other Locked never logged in list other Locked never logged in irc other Locked never logged in _apt other Locked never logged in nobody other Locked systemd-network other Locked never logged in salt other Locked never logged in telegraf other Locked never logged in drweb other Locked never logged in strongswan other Locked never logged in arma-lc other Locked never logged in zabbix other Locked never logged in uuidd other Locked never logged in messagebus other Locked never logged in tftp other Locked never logged in tss other Locked never logged in stunnel4 other Locked never logged in conservr other Locked never logged in frr other Locked never logged in ocserv other Locked never logged in pdns other Locked never logged in iperf3 other Locked never logged in _chrony other Locked never logged in haproxy other Locked never logged in Debian-snmp other Locked never logged in _dnsdist other Locked never logged in _lldpd other Locked never logged in owamp other Locked never logged in arpwatch other Locked never logged in avahi other Locked never logged in twamp other Locked never logged in tcpdump other Locked never logged in sshd other Locked never logged in sstpc other Locked never logged in polkitd other Locked never logged in minion other Locked never logged in openvpn other Locked never logged in tacacs0 other Locked never logged in tacacs1 other Locked never logged in tacacs2 other Locked never logged in tacacs3 other Locked never logged in tacacs4 other Locked never logged in tacacs5 other Locked never logged in tacacs6 other Locked never logged in tacacs7 other Locked never logged in tacacs8 other Locked never logged in tacacs9 other Locked never logged in tacacs10 other Locked never logged in tacacs11 other Locked never logged in tacacs12 other Locked never logged in tacacs13 other Locked never logged in tacacs14 other Locked never logged in tacacs15 other Locked never logged in radius_user other Locked never logged in radius_priv_user other Locked never logged in dhcpd other Locked never logged in
Просмотр заблокированных учётных записей
Для отображения всех учётных записей, находящихся в состоянии блокировки, используется команда:
admin@ngfwos:~$ show system login users locked [json] Username Full name Class Type Status From Last login ---------------- ----------- ------- ------ -------- ------ --------------- root other Locked never logged in daemon other Locked never logged in bin other Locked never logged in sys other Locked never logged in sync other Locked never logged in games other Locked never logged in man other Locked never logged in lp other Locked never logged in mail other Locked never logged in news other Locked never logged in uucp other Locked never logged in proxy other Locked never logged in www-data other Locked never logged in backup other Locked never logged in list other Locked never logged in irc other Locked never logged in _apt other Locked never logged in nobody other Locked systemd-network other Locked never logged in salt other Locked never logged in telegraf other Locked never logged in drweb other Locked never logged in strongswan other Locked never logged in arma-lc other Locked never logged in zabbix other Locked never logged in uuidd other Locked never logged in messagebus other Locked never logged in tftp other Locked never logged in tss other Locked never logged in stunnel4 other Locked never logged in conservr other Locked never logged in frr other Locked never logged in ocserv other Locked never logged in pdns other Locked never logged in iperf3 other Locked never logged in _chrony other Locked never logged in haproxy other Locked never logged in Debian-snmp other Locked never logged in _dnsdist other Locked never logged in _lldpd other Locked never logged in owamp other Locked never logged in arpwatch other Locked never logged in avahi other Locked never logged in twamp other Locked never logged in tcpdump other Locked never logged in sshd other Locked never logged in sstpc other Locked never logged in polkitd other Locked never logged in minion other Locked never logged in openvpn other Locked never logged in tacacs0 other Locked never logged in tacacs1 other Locked never logged in tacacs2 other Locked never logged in tacacs3 other Locked never logged in tacacs4 other Locked never logged in tacacs5 other Locked never logged in tacacs6 other Locked never logged in tacacs7 other Locked never logged in tacacs8 other Locked never logged in tacacs9 other Locked never logged in tacacs10 other Locked never logged in tacacs11 other Locked never logged in tacacs12 other Locked never logged in tacacs13 other Locked never logged in tacacs14 other Locked never logged in tacacs15 other Locked never logged in radius_user other Locked never logged in radius_priv_user other Locked never logged in dhcpd other Locked never logged in test Network_Administrators ngfwos Locked 192.168.2.2 Tue Aug 19 06:23:53 2025
Добавление пользовательских учётных записей
Для создания локальной учётной записи необходимо в режиме конфигурирования ввести следующие команды:
set system login user <user> full-name <text> set system login user <user> authentication plaintext-password <password> commit saveгде:
<user> – имя пользователя (логин), используемое для аутентификации; максимальная длина — «32» символа;
<text> – отображаемое имя пользователя (полное имя); максимальная длина — «70» символов; при наличии пробелов значение должно быть заключено в двойные кавычки (например, "Иванов Иван");
<password> – пароль учётной записи в открытом виде.
При создании новой пользовательской учётной записи без установки пароля она по умолчанию переводится в заблокированное состояние и остаётся недоступной до назначения пароля. Блокировка автоматически снимается после установки пароля.
Для просмотра списка УЗ необходимо ввести следующую команду в конфигурационном режиме:
show system login user #Пример просмотра списка УЗ: user admin { authentication { encrypted-password $6$rounds=6560...30 } class NGFW_Super_Administrators } user test { authentication { encrypted-password $6$rounds=6560...j1 } } [edit] admin@ngfwos#
Политика паролей учётных записей
Команды конфигурации политики паролей УЗ:
Указать максимальную длину пароля:
set system login password maximum-length <max>где <max> - значение максимальной длины пароля. Возможно указать значение в диапазоне от «1» до «128». По умолчанию используется значение «128».
Указать минимальную длину пароля:
set system login password minimum-length <min>где <min> - значение минимальной длины пароля. Возможно указать значение в диапазоне от «1» до «64». По умолчанию используется значение «1».
Указать минимальное количество цифр в пароле:
set system login password minimum-numerics <number>где <number> - количество цифр в пароле. Возможно указать значение в диапазоне от «1» до «32». По умолчанию используется значение «0».
Указать минимальное количество специальных символов в пароле:
set system login password minimum-special <number>где <number> - количество специальных символов. Возможно указать значение в диапазоне от «1» до «32». По умолчанию используется значение «0».
В пароле допускается использовать следующие специальные символы: «!», «#», «%», «&», «(», «)», «*», «+», «,», «.», «/», «:», «;», «<», «=», «>», «@», «[», «]», «^», «_», «{», «|», «}», «~», «`», «$».
Указать минимальное количество букв в нижнем регистре в пароле:
set system login password minimum-lower-case <numberгде <number> - количество букв в нижнем регистре. Возможно указать значение в диапазоне от «1» до «32». По умолчанию используется значение «0».
Указать минимальное количество букв в верхнем регистре в пароле:
set system login password minimum-upper-case <number>где <number> - количество букв в верхнем регистре. Возможно указать значение в диапазоне от «1» до «32». По умолчанию используется значение «0».
Настройка временной блокировки УЗ
Система ARMA Стена поддерживает механизм временной блокировки учётных записей в случае превышения допустимого количества неудачных попыток аутентификации. Настройки применяются ко всем локальным учётным записям и действуют при аутентификации через локальный вход или SSH.
Настройка количества попыток ввода пароля до блокировки
Для задания максимального числа неудачных попыток аутентификации перед блокировкой учётной записи используется команда:
set system login retry-options attemps-before-block <number>где <number> - целочисленное значение в диапазоне от «1» до «100», определяющее количество допустимых неудачных попыток ввода пароля. Значение по умолчанию: «5» попыток.
Примечание
Для повышения безопасности и снижения эффективности брутфорс-атак рекомендуется ограничить количество попыток ввода пароля для учётных записей пользователей.
Настройка продолжительности временной блокировки
Время блокировки после превышения лимита попыток устанавливается следующими командами:
set system login retry-options lockout-period seconds <sec> set system login retry-options lockout-period minutes <min> set system login retry-options lockout-period hours <hour>где:
<sec> - количество секунд. Возможно указать значение в диапазоне от «0» до «60»;
<min> - количество минут. Возможно указать значение в диапазоне от «0» до «60»;
<hour> - количество часов. Возможно указать значение в диапазоне от «0» до «168».
Общая длительность блокировки вычисляется как сумма всех активных компонентов: секунд, минут и часов. По умолчанию УЗ блокируется на 10 минут.
Примечание
Настройки временной блокировки учётной записи в системе ARMA Стена действуют независимо от используемого метода аутентификации.
Назначение прав доступа пользовательским учётным записям
Для ограничения прав пользовательских учётных записей используются классы.
Класс представляет собой перечень разрешённых команд для использования в ARMA Стена.
В системе ARMA Стена по умолчанию предусмотрено четыре класса (см. Таблица «Список классов по умолчанию»).
Класс |
Описание |
Список разрешённых команд |
|---|---|---|
NGFW_Super_Administrators |
Специальный класс для встроенной УЗ admin |
ЭКСПЛУАТАЦИОННЫЙ РЕЖИМ:
КОНФИГУРАЦИОННЫЙ РЕЖИМ:
|
NGFW_Administrators |
Группа администраторов с полными правами |
ЭКСПЛУАТАЦИОННЫЙ РЕЖИМ:
КОНФИГУРАЦИОННЫЙ РЕЖИМ:
|
Network_Administrators |
Группа администраторов сети |
ЭКСПЛУАТАЦИОННЫЙ РЕЖИМ:
КОНФИГУРАЦИОННЫЙ РЕЖИМ:
|
Security_Engineers |
Группа инженеров безопасности |
ЭКСПЛУАТАЦИОННЫЙ РЕЖИМ:
КОНФИГУРАЦИОННЫЙ РЕЖИМ:
|
Примечание
Класс пользователя «NGFW_Super_Administrators» предназначен исключительно для встроенной учётной записи «admin». Добавление других учётных записей в этот класс не допускается.
Класс пользователя «NGFW_Super_Administrators» не может быть изменён или удалён.
Для настройки классов необходимо ввести следующую команду в конфигурационном режиме:
set system login class <name_class> <operational-command | configure-command> <team>где:
<name_class> - уникальное имя класса;
<operational-command> - установка прав на использование команд в эксплуатационном режиме;
<configure-command> - установка прав на использование команд в конфигурационном режиме;
<team> - разрешённая команда.
Для добавления описания класса следует ввести команду:
set system login class <name_class> description <text>где <text> - текстовое описание класса. Описание не должно превышать «255» символов. Если описание содержит пробелы или символ «#», то его необходимо заключить в двойные кавычки.
Для добавления класса к учётной записи пользователя необходимо ввести команду:
set system login user <name_user> class <name_class>где <name_user> - имя учётной записи пользователя.
Для каждой учётной записи пользователя возможно назначить только один класс.
Для просмотра списка разрешённых команд для класса необходимо в режиме конфигурации ввести команду:
show system login class [name_class] [operational-command | configure-command]
Для просмотра списка разрешённых команд для текущей учётной записи необходимо в эксплуатационном режиме ввести команду:
admin@ngfwos:~$ show permissionsПример вывода списка разрешённых команд для учётной записи test:
test@ngfwos:~$ show permissions ================================================== Current user permissions ================================================== Configuration commands ------------------------------ commit commit-check commit-confirm confirm discard exit run configure run exit run show permissions save Operational commands ------------------------------ configure exit show permissions ================================================== test@ngfwos:~$
Примечание
Встроенной учётной записи «admin» запрещено изменять класс, удалять или отключать её.
Примечание
При отсутствии назначенного класса доступа или наличии класса с пустым набором разрешённых команд, пользователь получает доступ к минимальному набору команд. Данный механизм обеспечивает необходимый минимум функционала для взаимодействия с системой в условиях отсутствия явных прав доступа.
Список разрешённых команд в эксплуатационном режиме:
configure - войти в режим настройки;
show permissions - вывести список разрешённых команд для данной УЗ;
exit - выйти из системы.
Список разрешённых команд в конфигурационном режиме:
commit - зафиксировать текущий набор изменений;
commit-check - команда, предназначенная для анализа текущих конфигурационных изменений с целью выявления потенциальных ошибок или противоречий перед их фактическим применением;
commit-confirm - зафиксировать текущий набор изменений с обязательным «подтверждением»;
confirm - подтвердить предыдущую фиксацию - подтвердить;
discard - отменить незафиксированные изменения;
exit - выход с этого уровня конфигурации;
run configure - выполнить команду эксплуатационного режима configure;
run exit - выполнить команду эксплуатационного режима exit;
run show permissions - выполнить команду эксплуатационного режима show permissions;
save - сохранить конфигурацию в файл.
Пример настройки прав учётной записи пользователя
В качестве примера приведён список команд для создания учётной записи «test» с паролем «Password» и разрешением прав на использование команд: ping, set service dns, delete service dns, show service dns.
set system login user test authentication plaintext-password Password set system login class c_dns set system login class c_dns operational-command ping set system login class c_dns operational-command configure set system login class c_dns configure-command "set service dns" set system login class c_dns configure-command "delete service dns" set system login class c_dns configure-command "show service dns" set system login user test class c_dns commit save
Тайм-аут пользовательской сессии
Для настройки периода бездействия, по истечении которого автоматически завершается сеанс локальной учётной записи, необходимо ввести в конфигурационном режиме следующую команду:
set system login timeout <time>где <time> - значение тайм-аута в секундах. Возможно указание значения в диапазоне от «5» до «604800» (7 суток). По истечении указанного интервала неактивности сеанс пользователя автоматически завершается. Отсчёт времени начинается с момента выполнения последней команды.
Примечание
На сессии, активные на момент применения данной конфигурации, новое значение тайм-аута не распространяется.
Блокировка пользователя
Система ARMA Стена поддерживает функцию блокирования локальных учётных записей с сохранением их конфигурационных параметров. Блокировка может быть выполнена немедленно или запланирована на заданное время, а также может быть ограничена определённым временным интервалом.
Немедленная блокирования УЗ
Для немедленного блокирования учётной записи используется команда:
set system login user <username> disable commit saveгде <username> — имя блокируемой учётной записи.
Отложенная блокировка УЗ
Для активации блокировки учётной записи в заданное время применяется команда:
set system login user <username> lockout startdate "YYYY-MM-DD HH:MM" commit saveгде YYYY-MM-DD HH:MM - дата и время начала блокировки в формате год-месяц-день часы:минуты, указываются в двойных кавычках.
Пример: блокировка учётной записи test, запланированная на 15 августа 2025 года, с момента 00:00:
set system login user test lockout startdate "2025-08-15 00:00" commit saveПосле наступления указанного времени доступ по данной учётной записи будет заблокирован.
Блокировка УЗ на заданный временной интервал
Для временной блокировки учётной записи в указанный период используются следующие команды:
set system login user <username> lockout startdate "YYYY-MM-DD HH:MM" set system login user <username> lockout stopdate "YYYY-MM-DD HH:MM" commit saveгде:
startdate "YYYY-MM-DD HH:MM"— дата и время начала блокировки;
stopdate "YYYY-MM-DD HH:MM" — дата и время окончания блокировки.
По истечении указанного периода учётная запись автоматически разблокируется.
При одновременном наличии параметров disable и lockout для одной учётной записи приоритет отдаётся состоянию, заданному параметром disable. Таким образом, если УЗ явно отключена с помощью параметра disable, она остаётся заблокированной независимо от настроек временной блокировки через lockout. Автоматическая разблокировка по достижению времени stopdate не выполняется, пока активна постоянная блокировка, установленная через disable.
Примечание
После применения блокировки учётной записи пользователь не сможет выполнить новый вход в систему. Однако, если пользователь уже авторизован и имеет одну или несколько активных сессий на момент активации блокировки, данные сессии не прерываются автоматически.
Пользователь сохраняет возможность продолжать работу в рамках существующих сессий до их естественного завершения (например, выхода из системы, истечения времени неактивности или ручного завершения сессии администратором).
Для немедленного прекращения доступа заблокированного пользователя необходимо вручную завершить его активные сессии (см. раздел Управление пользовательскими сессиями)
Управление пользовательскими сессиями
Данный раздел описывает процедуры просмотра и принудительного завершения активных пользовательских сессий в системе ARMA Стена, включая сессии в стандартной и последовательной консоли, а также сессии, установленные по протоколу SSH. Сессии пользователей, подключённых через веб-интерфейс, не отслеживаются.
Просмотр списка активных сессий
Для отображения списка активных пользовательских сессий используется команда:
admin@ngfwos:~$ show users sessions # Пример вывода: SESSION UID USER SEAT TTY 12177 1002 admin pts/0 12178 1002 admin 12203 1053 test pts/1 12205 1053 testПредусмотрен вывод в формате JSON:
admin@ngfwos:~$ show users sessions json [{'session': '12177', 'uid': 1002, 'user': 'admin', 'seat': '', 'tty': 'pts/0'}, {'session': '12178', 'uid': 1002, 'user': 'admin', 'seat': '', 'tty': ''}, {'session': '12203', 'uid': 1053, 'user': 'test', 'seat': '', 'tty': 'pts/1'}, {'session': '12205', 'uid': 1053, 'user': 'test', 'seat': '', 'tty': ''}]
Примечание
Сессии без указанного значения в поле TTY являются фоновыми и, как правило, используются системными службами (например, cron и другими демонами). Такие сессии не связаны с интерактивным входом пользователя.
Завершение пользовательской сессии.
Для завершения текущей сессии пользователя в эксплуатационном режиме следует выполнить команду:
admin@ngfwos:~$ exit
Принудительное завершение сессий
Система поддерживает принудительное завершение сессий по идентификатору сессии или по имени пользователя.
Завершение сессии по идентификатору
Для завершения конкретной сессии по её идентификатору используется команда:
admin@ngfwos:~$ reset sessions id <session>где <session> - числовой идентификатор сессии (значение из поля SESSION).
Завершение всех сессий пользователя
Для завершения всех активных сессий указанного пользователя используется команда:
admin@ngfwos:~$ reset sessions username <username>где <username> - имя пользователя, все сессии которого подлежат завершению.
Команда завершает все активные сессии, включая интерактивные и фоновые, ассоциированные с указанным пользователем.
Просмотр недавних сеансов входа
Для отображения списка пользователей, недавно выполнивших вход в систему ARMA Стена, используется команда:
admin@ngfwos:~$ show users recent [number]где <number> - необязательный параметр, указывающий количество выводимых записей. Значение параметра — целое положительное число. Если параметр [number] не указан, по умолчанию выводится 10 последних записей.
Записи отображаются в порядке убывания времени входа (начиная с самой последней).
Пример вывода списка сессий:
admin@ngfwos:~$ show users recent test pts/1 Tue Aug 19 06:23:53 2025 - Tue Aug 19 07:24:56 2025 (01:01) 192.168.21.2 admin pts/0 Tue Aug 19 06:12:15 2025 still logged in 192.168.21.2 admin pts/0 Mon Aug 18 11:28:11 2025 - Tue Aug 19 06:12:00 2025 (18:43) 192.168.21.2 admin pts/0 Mon Aug 18 10:19:51 2025 - Mon Aug 18 10:20:17 2025 (00:00) 192.168.21.2 admin pts/0 Mon Aug 18 10:17:23 2025 - Mon Aug 18 10:18:59 2025 (00:01) 192.168.21.2 admin pts/0 Mon Aug 18 06:01:23 2025 - Mon Aug 18 09:54:02 2025 (03:52) 172.16.10.9 user1 pts/1 Fri Aug 15 14:42:44 2025 - Fri Aug 15 14:43:14 2025 (00:00) 172.16.10.9 user3 pts/4 Fri Aug 15 14:42:19 2025 - Fri Aug 15 14:45:41 2025 (00:03) 172.16.10.9 user2 pts/3 Fri Aug 15 14:40:47 2025 - Fri Aug 15 14:44:51 2025 (00:04) 172.16.10.9 user4 pts/2 Fri Aug 15 14:30:39 2025 - Fri Aug 15 16:43:44 2025 (02:13) 172.16.10.9
Аутентификация RADIUS
RADIUS (Remote Authentication Dial-In User Service) — это сетевой протокол, который обеспечивает централизованную аутентификацию, авторизацию и учёт пользователей.
Система ARMA Стена поддерживает RADIUS-серверы в качестве серверной части для пользовательской аутентификации.
Атрибут «cisco-avpair = shell:priv-lvl» в Radius-сервере предназначен для определения уровня привилегий учётных записей. В системе ARMA Стена реализованы два уровня доступа для учётных записей Radius-сервера:
Полный доступ (priv-lvl=15) - предоставляет разрешение на выполнение всех команд системы, за исключением команды «sudo».
Ограниченный доступ (priv-lvl=0-14) - предоставляет разрешение на выполнение ограниченного набора команд, представленных таблице «Список разрешённых команд для УЗ RADIUS-сервера с ограниченным доступом).
Таблица «Список разрешённых команд для УЗ RADIUS-сервера с ограниченным доступом» Режим работы
Команда
Краткое описание
Эксплуатационный
exit
Выход из системы
Эксплуатационный
monitor
Мониторинг системной информации
Эксплуатационный
ping
Отправить запрос эха ICMP
Эксплуатационный
show
Просмотр настроек и журнала событий системы
Эксплуатационный
telnet
Telnet к узлу
Эксплуатационный
traceroute
Трассировка сетевого пути к узлу
Перед началом настройки внешнего Radius-сервера необходимо убедиться в наличии сетевого доступа к данному серверу.
Примечание
При обнаружении идентичных учётных записей в локальной базе данных пользователей и в Radius-сервере, система ARMA Стена осуществляет аутентификацию посредством локальной учётной записи. Данный механизм приоритезации не применяется в случае установки режима безопасности «mandatory», который принудительно использует аутентификацию через Radius-сервер, игнорируя наличие дублирующих учётных записей в локальной базе данных.
Добавление внешнего Radius-сервера
Для добавления внешнего Radius-сервера необходимо выполнить следующие настройки:
Указать IP-адрес Radius-сервера и общий ключ, который используется для шифрования обмена данными между ARMA Стена и Radius-сервером:
set system login radius server <address> key <secret>где:
<address> - IP-адрес Radius-сервера в формате <x.x.x.x> для IPv4 или <h:h:h:h:h:h:h:h> для IPv6;
<secret> - значение ключа, который используется для шифрования.
Указать порт, через который будет осуществляться доступ к Radius-серверу:
set system login radius server <address> port <port>где <port> - номер порта. Возможно указать значение в диапазоне от «1» до «65535». По умолчанию используется порт «1812».
Дополнительные команды настройки Radius-сервера
Указать приоритет Radius-серверу:
set system login radius server <address> priority <1-255>где <1-255> - номер приоритета для указанного Radius-сервера. Возможно указать значение в диапазоне от «1» до «255». По умолчанию используется значение «255». Чем ниже число, тем выше приоритет сервера.
Используется для определения порядка обращения к Radius-серверам при аутентификации.
Установить время ожидания для получения ответа от Radius-сервера:
set system login radius server <address> timeout <timeout>где <timeout> - время ожидания в секундах. Возможно указать значение в диапазоне от «1» до «50». По умолчанию используется значение «2».
Определяет, как долго ARMA Стена будет ожидать ответа от Radius-сервера. Помогает предотвратить зависание системы при недоступности сервера. При отсутствии ответа в течение заданного времени система перейдёт к локальной аутентификации или к другим настроенным Radius-серверам.
При настройке тайм-аута необходимо определить значение, которое обеспечит оптимальное соотношение между скоростью проверки подлинности и безопасностью. Слишком малое значение тайм-аута может привести к ложным отказам при нормальной работе сети, а слишком большое — к замедлению процесса аутентификации.
Временно отключить указанный Radius-сервера:
set system login radius server <address> disableКоманда временно отключает указанный Radius-сервер, в результате чего система перестаёт обращаться к нему при попытке аутентификации пользователей. Для отмены отключения сервера необходимо удалить данную настройку через команду «delete».
Установить IP-адрес источника, с которого будут отправляться запросы к Radius-серверам:
set system login radius source-address <address>где <address> - IP-адрес источника в формате <x.x.x.x> для IPv4 или <h:h:h:h:h:h:h:h> для IPv6.
Команда задаёт фиксированный IP-адрес, с которого ARMA Стена будет отправлять запросы ко всем настроенным Radius-серверам. Это особенно важно в случаях, когда Radius-серверы ограничивают доступ только с определённых IP-адресов.
Определить режим безопасности для аутентификации Radius:
set system login radius security-mode <mandatory | optional>
mandatory - вся аутентификация осуществляется исключительно через Radius-сервер. Локальная база пользователей отключается. При недоступности Radius-сервера доступ к устройству блокируется.
optional - осуществляется первичная попытка аутентификации через Radius-сервер, при неудаче производится попытка локальной аутентификации. Доступ к устройству сохраняется при недоступности Radius-сервера. По умолчанию установлен режим «optional».
Команда определяет порядок аутентификации пользователей на устройстве ARMA Стена. Режим «mandatory» обеспечивает максимальную безопасность, но несёт риски потери доступа. Режим «optional» предоставляет баланс между безопасностью и доступностью, но требует дополнительного администрирования.
Указать виртуальную сеть (VRF), через которую будет осуществляться подключение к Radius-серверу:
set system login radius vrf <vrf>где <vrf> - имя виртуальной сети vrf.
Команда используется для указания, что все подключения к Radius-серверам должны исходить из указанной виртуальной сети (vrf). Это позволяет изолировать трафик аутентификации RADIUS в определённой виртуальной сети, что может быть полезно в сложных сетевых конфигурациях, где требуется сегментация трафика.
Multifactor Radius Adapter
ARMA Стена предоставляет возможность проводить аутентификацию пользователей на удалённом Radius-сервере. В данном примере в качестве Radius-сервера будет использоваться Multifactor Radius Adapter, который доступен в двух версиях: для Windows и для Linux.
Multifactor Radius Adapter - Windows
В качестве примера настройки Multifactor Radius Adapter для Windows будет использоваться стенд представленный на рисунке (см. Рисунок – Схема стенда для настройки Multifactor Radius Adapter - Windows).
Рисунок – Схема стенда для настройки Multifactor Radius Adapter - Windows
Для получения доступа необходимо выполнить следующие шаги:
Настроить ARMA Стена.
Настроить Windows Server.
Проверка работы службы.
Настройка ARMA Стена
Настройка интерфейсов
На первом шаге необходимо предоставить ARMA Стена доступ к интернету. Для этого требуется подключить интерфейс «eth0» к корпоративной сети, назначить ему IP-адрес вручную или через DHCP-сервер и присвоить описание «WAN»:
set interfaces ethernet eth0 address <x.x.x.x/x | dhcp> set interfaces ethernet eth0 description "WAN" commit save
Далее необходимо назначить интерфейсу «eth1», направленному в локальную подсеть, IP-адрес и присвоить ему описание «LAN»:
set interfaces ethernet eth1 address 192.168.1.1/24 set interfaces ethernet eth1 description "LAN" commit save
Для просмотра информации о настройках интерфейсов необходимо ввести следующую команду в эксплуатационном режиме (см. Рисунок – Назначенные IP-адреса интерфейсам LAN и WAN):
admin@ngfwos:~$ show interfaces
Рисунок – Назначенные IP-адреса интерфейсам LAN и WAN
Настройка DHCP-сервера
Необходимо настроить DHCP-сервер на интерфейсе «eth1» для автоматической выдачи адресов устройствам в локальной сети:
set service dhcp-server shared-network-name LAN subnet 192.168.1.0/24 default-router 192.168.1.1 set service dhcp-server shared-network-name LAN subnet 192.168.1.0/24 name-server 192.168.1.1 set service dhcp-server shared-network-name LAN subnet 192.168.1.0/24 lease 86400 set service dhcp-server shared-network-name LAN subnet 192.168.1.0/24 range 0 start 192.168.1.100 set service dhcp-server shared-network-name LAN subnet 192.168.1.0/24 range 0 stop 192.168.1.150 commit saveгде:
LAN - имя пула;
192.168.1.1 - IP-адрес шлюза по умолчанию;
86400 - время аренды IP-адресов в секундах;
192.168.1.100 - начальный IP-адрес пула адресов;
192.168.1.150 - конечный IP-адрес пула адресов.
Настройка DNS-ретрансляции
Команды настройки DNS-ретрансляции:
set service dns forwarding cache-size 0 set service dns forwarding listen-address 192.168.1.1 set service dns forwarding allow-from 192.168.1.0/24 commit saveгде:
cache-size 0 - запись в кэш DNS-ретрансляции отключена;
192.168.1.1 - IP-адрес интерфейса, на котором прослушиваются запросы DNS;
192.168.1.0/24 - подсеть, на которой разрешён доступ к DNS-ретрансляции.
Настройка NAT
Для настройки правил NAT необходимо ввести следующие команды:
set nat source rule 11 outbound-interface name eth1 set nat source rule 11 source address 192.168.1.0/24 set nat source rule 11 translation address masquerade commit save
Добавление DNS-сервера
Для настройки DNS-сервера необходимо ввести следующие команды:
set system name-server 8.8.8.8 set system name-server 172.16.230.11 commit saveгде:
8.8.8.8 - публичный DNS-сервер google;
172.16.230.11 - DNS-сервер корпоративной сети.
Настройка маршрутизации
Для настройки шлюза по умолчанию необходимо ввести следующую команду:
set protocols static route 0.0.0.0/0 next-hop 172.16.230.1 commit save
Добавление Radius-server
Для добавления Radius-server необходимо ввести следующие команды:
set system login radius server <192.168.1.x> key <secretRadius> set system login radius server <192.168.1.x> port 1812 commit saveгде:
<192.168.1.x> - IP-адрес, который был выдан Windows Server;
<secretRadius> - секретный ключ, который был указан при конфигурировании Radius адаптера.
Настройка Windows Server
Первичная настройка
Перед началом работы необходимо, чтобы был настроен контроллер домена с установленными доменными службами Active Directory.
Настройка контроллера домена под Windows Server
Открыть окно «Сетевые подключения». Для этого необходимо нажать сочетание клавиш «Win+R» и в открывшемся окне «Выполнить» ввести команду «ncpa.cpl».
Нажать ПКМ по сетевому адаптеру, выбрать пункт меню «Свойства» и в открывшемся окне «Свойства» перейти в параметры «IP версии 4 (TCP/IPv4)» двойным нажатием ЛКМ (см. Рисунок – Окно свойств сетевого адаптера). Изменить динамические параметры IP и DNS на статические и ввести необходимые значения.
Рисунок – Окно свойств сетевого адаптера
Открыть окно «Свойство системы». Для этого необходимо нажать сочетание клавиш «Win+R» и в открывшемся окне «Выполнить» ввести команду «sysdm.cpl». Нажать кнопку «Изменить» и в окне «Изменение имени компьютера или домена» переименовать компьютер в «DC1» (см. Рисунок – Изменение имени хоста).
Рисунок – Изменение имени хоста
После применения настроек необходимо перезагрузить компьютер.
После перезагрузки компьютера необходимо открыть «Диспетчер серверов», выбрать опцию «Добавить роли и компоненты», указать сервер DC1 и нажать кнопку «Далее» (см. Рисунок – Выбор целевого сервера).
Рисунок – Выбор целевого сервера
В ролях выбрать «DNS-сервер» и «Доменные службы Active Directory», в компонентах оставить всё как есть и следовать мастеру установки (см. Рисунок – Роли сервера).
Рисунок – Роли сервера
Далее необходимо настроить Active Directory. Для этого требуется нажать на иконку флага с восклицательным знаком в Диспетчере устройств и выбрать «Повысить роль этого сервера до уровня контроллера домена» (см. Рисунок – Настройка Active Directory).
Рисунок – Настройка Active Directory
В открывшемся окне «Мастер настройки доменных служб Active Directory» выбрать «Добавить новый лес» и указать имя корневого домена. Имя «IW2FA.ru» указано в качестве примера (см. Рисунок – Конфигурация Active Directory).
Рисунок – Конфигурация Active Directory
На следующем шаге необходимо придумать пароль для службы восстановления каталогов (см. Рисунок – Пароль для службы восстановления каталогов).
Рисунок – Пароль для службы восстановления каталогов
Мастер настройки предложит создать делегирование DNS. Однако в данном случае это не требуется, поэтому можно пропустить этот этап.
На следующем этапе мастер настройки автоматически пропишет имя домена NetBIOS. При необходимости возможно изменить его (см. Рисунок – Имя домена NetBIOS).
Рисунок – Имя домена NetBIOS
Выполнить настройку доменных служб Active Directory в соответствии с инструкциями мастера, не изменяя параметры по умолчанию. По завершении настройки перезагрузить компьютер.
Создание пользователей и групп Active Directory
Перейти в диспетчер серверов, открыть вкладку «Средства» и выбрать «Пользователи и компьютеры Active Directory» (см. Рисунок – Настройка пользователей Active Directory).
Рисунок – Настройка пользователей Active Directory
В открывшемся окне «Active Directory - пользователи и компьютеры» перейти в лес «IW2FA.ru», нажать ПКМ по директории «Users» и выбрать «Создать». В меню «Создать» выбрать «Пользователь» (см. Рисунок – Добавление пользователя).
Рисунок – Добавление пользователя
Откроется окно «Новый объект - Пользователь». Заполнить поля: «Имя», в примере используется имя «User(6)01»; «Имя входа пользователя», в примере используется - «user01». По завершению ввода параметров, нажать кнопку «Далее». Ввести пароль для создаваемого пользователя и установить флажок в чекбокс «Срок действия пароля не ограничен».
По аналогии с созданием пользователей, для создания группы пользователей необходимо нажать ПКМ по директории «Users», выбрать «Создать», после чего выбрать «Группа».
В открывшемся окне «Новый объект - Группа» ввести название группы.
Для добавления пользователей в созданную группу необходимо нажать ПКМ по необходимой группе. В контекстном меню выберите пункт «Добавить в группу…» и в открывшемся окне найти и добавить требуемых пользователей.
Подготовка Radius адаптера
Необходимо скачать актуальную версию утилиты Radius адаптер с официального сайта https://multifactor.ru. Для этого в пункте «Теория» перейти во вкладку «RADIUS адаптер» и затем во вкладку «Windows версия», далее перейти по ссылке «сборка» (см. Рисунок – Документация Radius адаптера).
Рисунок – Документация Radius адаптера
После загрузки, распаковать скачанный архив и поместить его в корневую папку диска С в Windows Server.
Добавление Multifactor Radius Adapter
Перейти на сайт https://admin.multifactor.ru/account/login и зарегистрироваться (см. Рисунок – Регистрация на сайте Multifactor).
Рисунок – Регистрация на сайте Multifactor
После завершения регистрации будет запущен мастер настройки многофакторной аутентификации для административной панели. Будет предложено установить приложение Multifactor на смартфон для входа на сайт (см. Рисунок – Установка приложения Multifactor). Если необходимо выбрать другой способ аутентификации, требуется нажать на значок в виде шестерёнки в правом верхнем углу окна настройки, перейти в раздел «Расширенные настройки» и выбрать подходящий способ аутентификации (см. Рисунок – Расширенные настройки).
Рисунок – Установка приложения Multifactor
Рисунок – Расширенные настройки
После добавления способа аутентификации необходимо подтвердить вход в панель администратора с помощью выбранного ранее способа.
В панели администратора перейти в раздел «Ресурсы» и нажать кнопку «Добавить ресурсы» (см. Рисунок – Добавление ресурсов).
Рисунок – Добавление ресурсов
Выбрать добавление ресурса «Другое» и в открывшемся окне заполнить необходимые настройки (см. Рисунок – Настройка ресурса).
Рисунок – Настройка ресурса
После добавления ресурса откроется окно с его параметрами. Необходимо скопировать параметры «NAS Identifier» и «Shared Secret» (см. Рисунок – Параметры добавленного ресурса). Они необходимы для конфигурирования Radius адаптер на Windows Server и для добавления Radius-server в ARMA Стена.
Рисунок – Параметры добавленного ресурса
Конфигурирование Radius адаптера
Открыть директорию с ранее извлечёнными из архива файлами Radius адаптера. Скопировать файл «cisco with ad.config.template», расположенный в папке «Clients» и переименовать его в «arma with ad.config.template». Удалить расширение «.template», чтобы получилось «arma with ad.config». Таким образом, из предустановленного шаблона получится файл для конфигурации подключения адаптера к ARMA Стена.
Открыть полученный файл «arma with ad.config» для редактирования с помощью программы «Блокнот» и внести следующие изменения в файле (см. Рисунок – Исходный шаблон конфигурации):
установить IP-адрес ARMA Стена;
ввести придуманный секретный ключ, который будет использоваться при настройке Radius-сервера в ARMA Стена;
внести имя домена Active Directory, по которому будет проводиться аутентификация;
указать группу, которой предоставляется доступ без второго фактора аутентификации;
указать группу, у которой будет запрашиваться второй фактор аутентификации;
ввести NAS Identifier, полученный на сайте Multifactor;
ввести Shared Secret, полученный на сайте Multifactor.
Рисунок – Исходный шаблон конфигурации
Пример конфигурационного файла, в котором не предусмотрена поддержка группы без второго фактора аутентификации (см. Рисунок – Пример конфигурационного файла):
Рисунок – Пример конфигурационного файла
Запуск Radius адаптера
Компонент может работать как в режиме консоли, так и в качестве службы операционной системы Windows. Для запуска компонента в режиме консоли достаточно запустить приложение.
Для установки Radius адаптера в качестве службы Windows необходимо перейти в папку с файлами адаптера и выполнить команду с ключом «/i» от имени администратора: «MultiFactor.Radius.Adapter.exe /i».
Для удаления Radius адаптера необходимо выполнить команду от имени администратора: «sc delete MFRadiusAdapter».
Проверка работы службы
Примечание
Перед началом работы необходимо отключить брандмауэр Windows!
При входе в NGFW и аутентификации с использованием учётных данных из группы, указанной в поле «active_directory_2fa_group» при настройке адаптера, система предложит зарегистрировать второй фактор аутентификации для пользователя (если он ещё не был зарегистрирован). В случае, если второй фактор уже зарегистрирован, система проверит его (см. Рисунок – Аутентификация):
Рисунок – Аутентификация
Multifactor Radius Adapter - Linux
В качестве примера настройки Multifactor Radius Adapter для CentOS будет использоваться стенд представленный на рисунке (см. Рисунок – Схема стенда для настройки Multifactor Radius Adapter - Linux).
Рисунок – Схема стенда для настройки Multifactor Radius Adapter - Linux
Инструкции по настройке ARMA Стена и Multifactor Radius Adapter представлены в соответствующих разделах: «Настройка ARMA Стена» и «Добавление Multifactor Radius Adapter».
Настройка CentOS 7
Необходимо внести изменения в конфигурацию сетевого интерфейса CentOS. Для этого следует изменить параметр «ONBOOT» в файле «/etc/sysconfig/network-scripts/ifcfg-eth0» с «ONBOOT=no» на «ONBOOT=yes». После этого необходимо перезагрузить сетевую службу с помощью команды «systemctl restart network». Это позволит интерфейсу автоматически включаться при загрузке системы.
Для начала установки компонента Multifactor Radius Adapter необходимо обновить имеющиеся пакеты и проверить наличие доступа к репозиториям. Это осуществляется с помощью команды «yum -y update && yum -y upgrade». Однако при выполнении этой команды может возникнуть ошибка (см. Рисунок – Возможная ошибка).
Рисунок – Возможная ошибка
Это свидетельствует о том, что доменное имя зеркал репозиториев не разрешается по неизвестной причине. Данная проблема может быть решена путём настройки других репозиториев, которые находятся в каталоге «/etc/yum.repos.d/CentOS-Base.repo». Вот так выглядят репозитории по умолчанию (см. Рисунок – Репозитории по умолчанию):
Рисунок – Репозитории по умолчанию
Необходимо закомментировать имеющиеся зеркала и указать другие значения «baseurl» в каждом блоке. В данном примере используются архивы snapshot 2021 г. (см. Рисунок – Комментирование имеющихся зеркал):
Рисунок – Комментирование имеющихся зеркал
После этих действий команда «yum -y update && yum -y upgrade» выполнится без ошибок.
Далее необходимо установить среду выполнения APS.NET Core runtime версии 6:
sudo rpm -Uvh https: packages.microsoft.com/config/centos/7/packages- microsoft-prod.rpm sudo yum install aspnetcore-runtime-6.0
После этого необходимо сформировать каталог для файлов инструмента, скопировать сборку в созданную папку и создать учётную запись, под которой будет работать служба:
sudo mkdir /opt/multifactor /opt/multifactor/radius/opt/multifactor/radius/logs # создание папок для файлов адаптера sudo wget https: github.com/MultifactorLab/multifactor-radius-adapter/releases/latest/download/release_linux_x64.zip # клонирование сборки sudo unzip release_linux_x64.zip -d /opt/multifactor/radius # распаковка архива sudo useradd -r mfa # создание пользователя sudo chown -R mfa:mfa /opt/multifactor/radius/ # присвоение директорий пользователю sudo chown -R mfa:mfa /opt/multifactor/radius/clients sudo chmod -R 700 /opt/multifactor/radius/ # изменять директории может только пользователь sudo chmod -R 700 /opt/multifactor/radius/clients
Необходимо создать службу systemd для адаптера. Для этого сначала требуется создать файл службы с помощью команды «sudo vi /etc/systemd/system/multifactor-radius.service», а затем изменить его содержимое:
[Unit] Description=Multifactor Radius Adapter [Service] WorkingDirectory=/opt/multifactor/radius/ ExecStart=/usr/bin/dotnet /opt/multifactor/radius/multifactor-radius- adapter.dll Restart=always # Restart service after 10 seconds if the service crashes: RestartSec=10 KillSignal=SIGINT SyslogIdentifier=multifactor-radius User=mfa Environment=ASPNETCORE_ENVIRONMENT=Production Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false # How many seconds to wait for the app to shut down after it receives the initial interrupt signal. # If the app doesn't shut down in this period, SIGKILL is issued to terminate the app. # The default timeout for most distributions is 90 seconds. TimeoutStopSec=30 [Install] WantedBy=multi-user.target
После этого необходимо выполнить команду для запуска службы: «sudo systemctl enable multifactor-radius».
Затем приступить к редактированию конфигурации серверов Radius. Общие параметры работы компонента хранятся в файле «/opt/multifactor/radius/multifactor-radius-adapter.dll.config» в формате «xml»:
<!-- Адрес и порт (UDP), по которому адаптер будет принимать запросы на аутентификацию от клиентов --> <add key="adapter-server-endpoint" value="0.0.0.0:1812"/> <!-- Адрес API MULTIFACTOR --> <add key="multifactor-api-url" value="https: api.multifactor.ru"/> <!-- Доступ к API MULTIFACTOR через HTTP прокси (опционально) --> <!-- <add key="multifactor-api-proxy" value="http: login:password@proxy:3128"/> --> <!-- Уровень логирования: 'Debug', 'Info', 'Warn', 'Error' --> <add key="logging-level" value="Debug"/>
Шаблоны для настройки отдельных подключений находятся в каталоге «/opt/multifactor/radius/clients». Для создания необходимой конфигурации, требуется скопировать имеющийся шаблон «cisco with ad.config.template» с помощью команды «cp cisco/with/ad.config.template [указать имя].config». Таким образом, будет скопирован шаблон конфигурации для связи с Active Directory, содержащий следующие данные:
<?xml version="1.0" encoding="utf-8"?> <configuration> <configSections> <section name="RadiusReply" type="MultiFactor.Radius.Adapter.RadiusReplyAttributesSection, multifactor-radius-adapter"/> </configSections> <appSettings> <!-- cisco asa ip --> <add key="radius-client-ip" value="10.10.10.10"/> <!-- shared secret between this service and cisco --> <add key="radius-shared-secret" value="0000000000"/> <!-- One of: ActiveDirectory, ADLDS, Radius, None --> <add key="first-factor-authentication-source" value="ActiveDirectory"/> <!-- ActiveDirectory authentication settings: for example domain local on host 10.0.0.4 --> <add key="active-directory-domain" value="ldaps:10.0.0.4/DC=domain,DC=local"/> <!-- ActiveDirectory access group (optiona): --> <add key="active-directory-group" value="UPN Users"/> <!-- ActiveDirectory 2FA group (optional) --> <add key="active-directory-2fa-group" value="2FA Users"/> <!-- get it from multifactor management panel --> <add key="multifactor-nas-identifier" value="1"/> <!-- get it from multifactor management panel --> <add key="multifactor-shared-secret" value="2"/> </appSettings> <RadiusReply> <Attributes> <add name="Class" from="memberOf"/> </Attributes> </RadiusReply> </configuration>
Необходимо внести следующие изменения в файл шаблона конфигурации:
поле «radius-client-ip» должно быть изменено на 192.168.1.1, так как Radius-сервер находится в локальной сети, а клиентом является ARMA Стена;
поле «radius-shared-secret» должно содержать значение, которое было придумано при настройке аутентификации Radius на ARMA Стена;
поле «active-directory-domain» должно быть изменено в соответствии с доменом Active Directory, который присутствует в подсети;
поле «active-directory-group» должно быть удалено, чтобы всегда использовался второй фактор аутентификации, указанный в поле «active-directory-2fa-group»;
поля «multifactor-nas-identifier» и «multifactor-shared-secret» должны быть взяты из панели администратора при создании ресурса для аутентификации.
Необходимо перезагрузить подсистемы служб и созданную службу для применения изменений:
sudo systemctl daemon-reload sudo systemctl restart multifactor-radius
Возможные ошибки
В случае возникновения ошибки «Unable to load shared library „ldap.so.2“ or one of its dependencies», необходимо внести коррективы в цепочку таким образом, чтобы симлинк «libldap.so.2» в конечном итоге указывал на конкретную библиотеку «libldap-2.X.so.2.Y.Z».
Пример: libldap.so.2 * libldap-2.4.so.2 это симлинк libldap-2.4.so.2 * libldap_r-2.4.so.2 это симлинк libldap_r-2.4.so.2 * libldap_r-2.4.so.2.11.5 это симлинк libldap_r-2.4.so.2.11.5 это сама библиотека.
Проверка и исправление символических ссылок: для проверки символических ссылок необходимо определить местоположение библиотеки «libldap». Обычно она находится в каталоге «/usr/lib/x86_64-linux-gnu».
Далее необходимо выполнить команду «ls -la», чтобы просмотреть список всех файлов и символических ссылок. Необходимо найти информацию о том, как и кто ссылается на библиотеку «libldap», а также определить, каких ссылок не хватает.
Чаще всего отсутствует одна ссылка — с «libldap.so.2» на основную версию библиотеки. Команды создания недостающего симлинка:
Для Debian и Ubuntu: ln -s/usr/lib/x86_64-linux-gnu/libldap-2.4.so.2 /usr/lib/x86_64-linux- gnu/libldap.so.2 Для CentOS и REDOS: ln -s /usr/lib64/libldap_r-2.4.so.2.10.9 /usr/lib64/libldap.so.2 #Версии библиотек могут отличатьсяАналогичные действия выполняются с библиотекой «liblber».
В случае возникновения ошибки «Unable to start: Address already in use», существует два способа её устранения:
Если используете запуск адаптера через «/opt/multifactor/radius/multifactor-radius-adapter», то необходимо отключить адаптер как службу:
sudo systemctl stop multifactor-radius sudo systemctl disable multifactor-radius sudo rm /etc/systemd/system/multifactor-radius.service sudo systemctl daemon-reloadПерейти в «/opt/multifactor/radius/multifactor-radius-adapter.dll.config» используя команду «sudo nano /opt/multifactor/radius/multifactor-radius-adapter.dll.config» и изменить порт в поле «adapter-server-endpoint».