.. _nacmgl: Ролевая модель ============== Управление учётными записями ---------------------------- Все действия, связанные с использованием учётных записей администраторов, записываются в системный журнал. Создание и удаление учётных записей ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Для создания учётной записи применяется команда: :: # set system login account uid |noindent| где - ```` – строка длиной от 1 до 64 символов; - ```` – число от 1001 до 64000. Если значение уникального числового идентификатора (````) учётной записи в данной системе не имеет значения, вместо вышеуказанной команды применяется следующая: :: # setup login |noindent| где ```` – строка длиной от 1 до 64 символов. При использовании данной команды формируется элемент на уровне конфигурации ``[edit system login account ]`` с использованием незанятого числового идентификатора. Для удаления учётной записи применяется команда: :: # del system login account |noindent| где ```` – имя существующей учётной записи. Удаление учётной записи администратора root невозможно. Создание пароля учётной записи ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ В ПАК “Фортикс” предусмотрено два способа установки пароля учётной записи: - в интерактивном режиме; - в виде хэшированного пароля. В ПАК “Фортикс” принимается хэш пароля, вычисленный с помощью функции PBKDF2, описанной в рекомендациях Р 1323565.1.040-2022 с использованием хэш-функции, описанной в ГОСТ Р 34.11-2012. Для указания пароля в интерактивном режиме применяется команда: :: # setup login password |noindent| где ```` – имя существующей учётной записи. Пример установки пароля данным способ подробно описан в подразделе :numref:`{number} {name} `. Для установки хэшированного пароля учётной записи, отличной от учётной записи администратора root, применяется команда: :: # set system login account passwd-hash |noindent| где - ```` – имя существующей учётной записи; - ```` – строка в формате crypt(5). Для установки хэшированного пароля учётной записи администратора root применяется команда: :: # set system login root passwd-hash |noindent| где ```` – строка в формате crypt(5). .. _nacmkeys: Настройка ключевой информации для учётной записи ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ В ПАК “Фортикс” реализована возможность аутентификации учётной записи с использованием ключевой информации (без пароля) при использовании протокола SSH для подключения к системе. Для аутентификации по SSH-ключам создаётся пара криптографических ключей: закрытый ключ, хранящийся на устройстве администратора, и открытый ключ для проверки подлинности, размещаемый на удалённом устройстве, к которому необходим доступ. Для генерации ключевой пары в ПАК “Фортикс” используется команда: :: > ssh key generate [ecdsa|rsa] [comment ] |noindent| где - ``ecdsa|rsa`` – криптографический алгоритм формирования ключа, по умолчанию – RSA; - ```` – слово. По умолчанию в качестве идентификатора используется имя администратора. Полученные ключи хранятся в домашнем каталоге администратора в директории ``ssh/``. Пример применения команд для генерации и просмотра ключевой пары в ПАК “Фотрикс”: :: > ssh key generate rsa comment ident The rsa key was successfully created > ls /home/root/ssh 03.09.2025 20:15:57 ../ 04.09.2025 00:37:08 id_rsa 2.5K 04.09.2025 00:37:08 id_rsa.pub 558 В данном примере для администратора ``root`` создана ключевая пара с закрытым ключом ``id_rsa`` и открытым ключом ``id_rsa.pub``. Для просмотра содержимого файла с открытым ключом применяется команда: :: > cat |noindent| где ```` – полное имя файла с открытым ключом или имя файла относительно домашней директории пользователя. Пример применения команды для просмотра содержимого файла с открытым ключом: :: > cat /home/root/ssh/id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC5AsjWL3H8aEzykgV2hHutYg6PNTQ/z+oL8jMi/OaFXpyyNjZIqKt3cOMij5zBJ8My8uy6J/X/NONjGsZ5A+QJ28kUrHCa5Tjdb2X9PfNgddtFWbH/yuha67qieOy0Tnr1LDI7J66K9f7Lmhaal5pMoJd7N93PQvqAJJtq1ksO9e125o+hRr1PnH2bq/JzUExluL8SPJMBshcbFA5UbRwGVggRb5JaG8WLNLb/exVi+nItAoPUcXydgFck3ymdkFOFRmp/efbyn3Ab17RyLyfOfRWRSXFLXkelcabBML88rGXRhQCG9EsInz85opnruBVUOeh/BSP/iB/lCFffW7ed0PAcNAU1DxhR781heX6JsEAx3+UkFDpBLaE/t9NyBByo3NjXLkAORV3+zR1QqmyMm+hDlm9FlV8I5Y1KvOhHUrYpYSP6WpFyhALZ9wvLQmhNN/n6whaPBuobnZHnK/qRsTr+BoLxmJMUyJd9F+wupdVGbOdzFXHClj0ofvnbLp8= ident Файл, содержащий открытый ключ, состоит из трёх значений: алгоритм формирования ключа (в данном примере ``ssh-rsa``), сам ключ (``AAAAB3N ... vnbLp8=``) и идентификатор ключа (``ident``). После создания ключевой пары необходимо добавить открытый SSH-ключ на удалённое устройство, к которому настраивается беспарольный доступ. Настройка доступа к устройству без пароля зависит от учётной записи и осуществляется одной из следующих команд: 1) Для настройки аутентификации учётной записи администратора ``root`` применяется команда: :: # set system login root ssh-pubkey key |noindent| где - ```` – слово; - ```` – строка в формате ``алгоритм_формирования_ключа значение_ключа``, где указываются алгоритм формирования ключа и значение ключа в одну строку подряд через один пробел. Например: :: # set system login root ssh-pubkey ident key "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC5AsjWL3H8aEzykgV2hHutYg6PNTQ/z+oL8jMi/OaFXpyyNjZIqKt3cOMij5zBJ8My8uy6J/X/NONjGsZ5A+QJ28kUrHCa5Tjdb2X9PfNgddtFWbH/yuha67qieOy0Tnr1LDI7J66K9f7Lmhaal5pMoJd7N93PQvqAJJtq1ksO9e125o+hRr1PnH2bq/JzUExluL8SPJMBshcbFA5UbRwGVggRb5JaG8WLNLb/exVi+nItAoPUcXydgFck3ymdkFOFRmp/efbyn3Ab17RyLyfOfRWRSXFLXkelcabBML88rGXRhQCG9EsInz85opnruBVUOeh/BSP/iB/lCFffW7ed0PAcNAU1DxhR781heX6JsEAx3+UkFDpBLaE/t9NyBByo3NjXLkAORV3+zR1QqmyMm+hDlm9FlV8I5Y1KvOhHUrYpYSP6WpFyhALZ9wvLQmhNN/n6whaPBuobnZHnK/qRsTr+BoLxmJMUyJd9F+wupdVGbOdzFXHClj0ofvnbLp8=" Для настройки аутентификации учётной записи, отличной от администратора root, применяется команда: :: # set system login account ssh−pubkey key |noindent| где - ```` – имя существующей учётной записи; - ```` – слово; - ```` – строка в формате ``алгоритм_формирования_ключа значение_ключа``, где указываются алгоритм формирования ключа и значение ключа в одну строку подряд через один пробел. 2) Настройка ключевой информации учётной записи с помощью команды ``setup`` и значений открытого ключа: :: # setup login ssh-pubkey text # commit |noindent| где - ```` – имя существующей учётной записи; - ```` – строка в формате ``алгоритм_формирования_ключа значение_ключа идентификатор_ключа``, где указываются алгоритм формирования ключа, значение ключа и идентификатор ключа в одну строку подряд через один пробел. 3) Настройка ключевой информации учётной записи с помощью команды ``setup`` и файла, содержащего значение открытого ключа: :: # setup login ssh-pubkey file |noindent| где - ```` – имя существующей учётной записи; - ```` – полное имя файла с открытым ключом или имя файла относительно домашней директории пользователя. Настройка времени активности сессии ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Для настройки тайм-аута активности сессии, по истечении которого при отсутствии каких-либо действий администратора в системе сессия его учётной записи автоматически завершается, применяется команда: :: # set system login session-timeout |noindent| где ```` – число секунд от 0 до 4294967295, по умолчанию – 0. Для удаления тайм-аута активности сессии применяется одна из следующих команд: :: # del system login session-timeout |noindent| или :: # set system login session-timeout 0 Блокировка учётных записей ~~~~~~~~~~~~~~~~~~~~~~~~~~ Блокировка учётной записи позволяет запретить доступ учётной записи к системе. Для блокировки учётной записи применяется команда: :: # set system login account locked |noindent| где ```` – имя существующей учётной записи. Блокировка учётной записи администратора root невозможна. Для снятия блокировки учётной записи применяется команда: :: # del system login account locked |noindent| где ```` – имя существующей учётной записи. Автоматическая блокировка учётных записей ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Для предотвращения несанкционированного доступа посредством подбора пароля к учётной записи администратора в ПАК “Фортикс” реализована временная блокировка учётной записи, которая осуществляется по следующему сценарию: если за определённый промежуток времени (по умолчанию – 15 минут) последовательно осуществляется несколько (по умолчанию – 3) неудачных попыток аутентификации учётной записи, данная учётная запись временно блокируется (отключается). Время блокировки по умолчанию составляет 10 минут. По истечении указанного промежутка времени учётная запись становится доступной. При перезагрузке системы блокировка учётных записей снимается. Для снятия блокировки всех учётных записей без перезагрузки системы применяется команда: :: > clear system auth faillock Данная команда снимает блокировку всех ранее заблокированных учётных записей. Для разблокировки заданной учётной записи применяется команда: :: > clear system auth faillock account |noindent| где ```` – имя существующей учётной записи. Для просмотра информации о попытках аутентификации применяется команда: :: > show system auth faillock [brief] |noindent| где ``[brief]`` – параметр, при указании которого информация отображается в сжатом виде. Команды настройки автоматической блокировки ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Для изменения количества допустимых последовательно неудачных попыток аутентификации учётной записи применяется команда: :: # set system auth faillock deny |noindent| где ```` – число от 0 до 100, по умолчанию – 3. Для изменения времени блокировки учётной записи по истечение допустимого количества неудачных попыток аутентификации применяется команда: :: # set system auth faillock unlock-time |noindent| где ```` – число секунд от 0 до 65535, по умолчанию – 600. При использовании значения 0 указанной настройки автоматическая разблокировка учётной записи отключается. При этом активация учётной записи осуществляется только по команде ``clear system auth faillock`` или после перезагрузки системы. Для изменения интервала времени, за который учитываются попытки аутентификации, применяется команда: :: # set system auth faillock fail-interval |noindent| где ```` – число секунд от 0 до 65535, по умолчанию – 900. Ролевая модель в механизме NACM ------------------------------- Предустановленные ролевые группы ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ В заводской конфигурации ПАК “Фортикс” определены следующие ролевые группы: - группа adm; - группа netadm; - группа oper. Учётные записи, добавленные в одну из данных ролевых групп, наделяются соответствующими полномочиями. Если созданная учётная запись не добавлена ни в одну из групп, при включённом механизме NACM (см. подраздел :numref:`{number} {name} `) данная учётная запись не имеет никаких полномочий. Группа adm ^^^^^^^^^^ Группа adm представляет собой группу учётных записей администраторов, обладающих следующими ограничениями полномочий относительно учётной записи администратора root: - не могут просматривать/администрировать настройки NACM (права доступа); - не могут просматривать/администрировать учётные записи (настройки уровня конфигурации ``system login`` и ``system auth``, команды уровня ``clear system auth``); - не могут администрировать установленные образы (команды уровней ``system software`` и ``system data-slot``); - не могут обращаться к директории ``/config``. Группа netadm ^^^^^^^^^^^^^ Группа netadm представляет собой группу учётных записей администраторов, обладающих следующими ограничениями полномочий относительно учётных записей администраторов группы adm: - не могут выполнять команды и администрировать настройки СКЗИ (команды и настройки уровня ``crypto``); - не могут выполнять команды диагностики СКЗИ, в том числе просматривать журнал событий СКЗИ (команды уровня ``show crypto``); - не могут обращаться к директориям ``/share``, ``/system``, ``/crypto``. Группа oper ^^^^^^^^^^^ Группа oper представляет собой группу учётных записей администраторов, обладающих следующими ограничениями полномочий относительно учётных записей администраторов группы netadm: - не могут менять конфигурацию системы; - не могут выполнять действия, меняющие состояние узла; - не могут менять состояние системы, в том числе: - не могут перезагружать/выключать систему; - не могут выключать сигнал на события уровня ALERT; - не имеют доступа к внешним носителям (директория ``/media``). Управление членством учётных записей в группах ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Для добавление учётной записи в существующую группу применяется команда: :: # set nacm groups group user-name |noindent| где - ```` – имя существующей группы; - ```` – имя существующей учётной записи. Для удаления учётной записи из группы применяется команда: :: # del nacm groups group user-name |noindent| где - ```` – имя существующей группы; - ```` – имя существующей учётной записи. Для удаления всех учётных записей из группы применяется команда: :: # del nacm groups group user-name |noindent| где ```` – имя существующей группы. Пример применения команд для создания учётной записи администратора группы adm с именем ``alex``: :: > configure # setup login alex # setup login alex password Change password for alex Password: Retype password: # set nacm groups group adm user-name alex # commit После добавления учётной записи администратора в группу adm целесообразно отключить удалённый доступ по протоколу SSH для учётной записи администратора root. Для отключения удалённого доступа по протоколу SSH учётной записи администратора root применяется команда: :: # del service ssh access root-login .. _nacmmechanism: Механизм NACM ~~~~~~~~~~~~~ В ПАК “Фортикс” контроль доступа и полномочий учётных записей основан на механизме NACM (Network Configuration Access Control Model), который представляет собой модель управления доступом к элементам конфигурации и операциям системы (см. RFC 8341). В настройки механизма NACM ПАК “Фортикс” добавлены дополнительные опции, обеспечивающие управление доступом к командам режима администрирования. Включённый механизм NACM позволяет контролировать каждую попытку администратора изменить конфигурацию через консоль, сессию SSH или протокол NETCONF: для каждого действия администратора осуществляется проверка на наличие прав у его учётной записи на изменения (создание, удаление, модификацию). Механизм NACM используется в системе по умолчанию. Для отключения механизма NACM применяется команда: :: # set nacm enable-nacm false .. warning:: Не рекомендуется отключать механизм NACM, так как при отключённом механизме NACM все учётные записи получают полный доступ ко всей конфигурации и RPC-операциям протокола NETCONF. Для включения механизма NACM применяется одна из следующих команд: :: # del nacm enable-nacm |noindent| или :: # set nacm enable-nacm true Учётная запись администратора root обладает полным набором полномочий, механизм NACM на неё не влияет. Предусмотрена возможность редактирования настроек механизма NACM для существующих ролевых групп или создание новых групп со специфическими наборами полномочий. Изменение/просмотр настроек механизма NACM доступны учётной записи администратора root и учётным записям администраторов группы adm. В настоящем руководстве приводится краткое описание стандартных настроек механизма NACM. Далее по тексту пометка (``Фортикс``) соответствует настройкам, специфичным для механизма NACM ПАК “Фортикс”. Глобальные настройки механизма NACM ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Настройка механизма NACM осуществляется на следующем уровне конфигурации: :: [edit nacm] На данном уровне конфигурации доступны следующие настройки: - ``enable-nacm true|false`` – включить/выключить использование механизма NACM, по умолчанию – ``true``; - ``read-default permit|deny `` – разрешить/запретить чтение узла конфигурации, если для него не найдено иных правил, где ```` – строка в формате интерфейса командной строки; - ``write-default permit|deny `` – разрешить/запретить изменение узла конфигурации, если для него не найдено иных правил, где ```` – строка в формате интерфейса командной строки; - ``exec-default permit|deny `` – разрешить/запретить выполнение RPC-операций над узлом конфигурации, если для него не найдено иных правил, где ```` – строка в формате интерфейса командной строки; - ``groups`` – перейти на уровень конфигурации ролевых групп (см. ниже); - ``rule-list`` – перейти на уровень конфигурации именованных наборов правил (см. ниже). Для редактирования настроек механизма NACM применяется команда: :: [edit nacm] # set |noindent| где ```` – строка. Настройки групп ^^^^^^^^^^^^^^^ Настройка групп осуществляется на следующем уровне конфигурации: :: [edit nacm groups] На данном уровне конфигурации доступны настройки именованных списков правил ``match``/``exclude`` и настройки групп. Настройка именованных списков правил ``match``/``exclude`` осуществляется на следующем уровне конфигурации: :: [edit nacm groups match-list ] |noindent| где ```` – строка. На данном уровне конфигурации доступны следующие настройки: - ``match *|`` (``Фортикс``) – указать шаблон команд режима администрирования, разрешённых данной группе (``*`` – все команды, ```` – шаблон команд (строка)), возможно определение нескольких настроек данного уровня конфигурации; - ``exclude `` (``Фортикс``) – указать шаблон команд, попадающих в шаблон настройки ``match``, но подлежащих запрету (```` – шаблон команд (строка)), возможно определение нескольких настроек данного уровня конфигурации. Настройка групп осуществляется на следующем уровне конфигурации: :: [edit nacm groups group ] |noindent| где ```` – строка. На данном уровне конфигурации доступны следующие настройки: - ``user-name `` – указать имя учётной записи, входящей в группу, где ```` – имя существующей учётной записи, возможно определение нескольких настроек данного уровня конфигурации; - ``match *|`` (``Фортикс``) – указать шаблон команд режима администрирования, разрешённых данной группе, где ``*`` – любые команды, ```` – строка, возможно определение нескольких настроек данного уровня конфигурации; - ``exclude `` (``Фортикс``) – указать шаблон команд, попадающих в шаблон настройки ``match``, но подлежащих запрету, где ```` – строка, возможно определение нескольких настроек данного уровня конфигурации; - ``match-list `` (``Фортикс``) – указать именованный список правил ``match``/``exclude``, применяемый к данной группе, где ```` – имя существующего списка правил, возможно определение нескольких настроек данного уровня конфигурации; - ``fs-crypto-access`` (``Фортикс``) – разрешить группе доступ к области ``/crypto``; - ``fs-media-access`` (``Фортикс``) – разрешить группе доступ к внешним носителям ``/media``; - ``fs-system-access`` (``Фортикс``) – разрешить группе доступ к директории ``/system``; - ``fs-config-access`` (``Фортикс``) – разрешить группе доступ к директории ``/config``; - ``fs-share-access`` (``Фортикс``) – разрешить группе доступ к директории ``/share``. Настройки групп позволяют определять полномочия данной группы только в режиме администрирования. Полномочия группы в режиме конфигурации определяются с помощью других настроек механизма. Шаблоны команд режима администрирования представляют собой указанный в кавычках набор слов, с которых начинаются команды. Шаблону соответствуют все команды, начинающиеся с указанного набора слов. Символ ``*`` подразумевает множество всех команд. По умолчанию для учётной записи, созданной вне предустановленных групп, все команды режима администрирования запрещены. Команда считается разрешённой, если она соответствует хотя бы одному шаблону настройки ``match`` хотя бы одной группы, в которую входит данная учётная запись, при этом не соответствует ни одному шаблону настройки ``exclude`` данной группы. Примеры применения шаблонов: - ``match *`` – разрешить все команды; - ``match "crypto matrix"`` – разрешить все команды, начинающиеся с ``crypto matrix``; - ``exclude "crypto matrix operate"`` – запретить команды, начинающиеся с ``crypto matrix operate``. Настройки наборов правил ^^^^^^^^^^^^^^^^^^^^^^^^ Настройка наборов правил осуществляется на следующем уровне конфигурации: :: [edit nacm rule-list ] |noindent| где ```` – строка. На данном уровне конфигурации доступны следующие настройки: - ``group `` – указать имя группы, для которой применяется данный набор правил, где ```` – имя существующей группы, возможно определение нескольких настроек данного уровня конфигурации; - ``rule `` – указать имя правила, входящего в данных набор правил, где ```` – имя существующего правила, возможно определение нескольких настроек данного уровня конфигурации. Порядок указания наборов правил при настройке определяет их приоритет (см. подпункт :numref:`{number} {name} `). Настройка именованных правил осуществляется на следующем уровне конфигурации: :: [edit nacm rule-list rule ] |noindent| где - ```` – имя существующего набора правил; - ```` – строка. На данном уровне конфигурации доступны следующие настройки: - ``comment `` – указать описание правила, где ```` – строка; - ``path `` – указать путь к узлу конфигурации, к ветвям и элементам которого применимо правило, где ```` – строка в формате XPath; - ``module-name `` – указать имя YANG-модуля, к членам которого применимо правило, где ```` – строка; - ``rpc-name *|`` – указать имя RPC-операции, к которой применимо правило, где ``*`` – любые операции, ```` – строка; - ``access-operations *|`` – указать список действий над элементом/RPC-операций, к которым применимо правило, где ``*`` – любые действия/операции, ```` – строка в формате списка действий/операций; - ``action permit|deny`` – разрешить/запретить запрашиваемое действие в случае срабатывания правила. В качестве параметра ```` настройки ``access-operations *|`` указывается строка, содержащая перечисление через пробел каких-либо из следующих операций: - ``read``; - ``create``; - ``update``; - ``delete``; - ``exec``. Порядок указания именованных правил при настройке определяет их приоритет (см. подпункт :numref:`{number} {name} `). .. _nacmalg: Алгоритм работы механизма NACM ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ При поступлении исходящей от учётной записи попытки изменения конфигурации или выполнения RPC-операции через протокол NETCONF (при включённом механизме NACM) выполняется следующий алгоритм их обработки: 1) Формируется список групп, членом которых является данная учётная запись, согласно настройкам уровня конфигурации ``[edit nacm groups]``. 2) Осуществляется обработка наборов правил (``rule-list``) в том порядке, в котором они объявлены в конфигурации. 3) Если набор правил неприменим к группе(ам) учётной записи (то есть нет пересечения с группами настройки ``nacm rule-list group``), набор правил пропускается. 4) Если набор правил применим к группе(ам) учётной записи, рассматриваются правила (``rule``) одно за другим в порядке их определения в конфигурации. 5) Проверяется применимость правила согласно установленным критериям по принципу логического “И”. 6) Если все критерии выполняются, применяется действие, установленное в настройке ``action`` (то есть операция либо разрешается, либо запрещается). В случае применимости дальнейшие правила и наборы не рассматриваются. 7) Если не сработало ни одно правило в текущем наборе правил, осуществляется переход к следующему набору правил (п. 3). 8) Если не сработало ни одно правило ни в одном наборе правил, действие применяется согласно глобальным настройкам ``read-default``, ``write-default``, ``exec-default``.чё В случае наличия настройки ``read-default true`` при операции чтения узла конфигурации с установленным YANG-атрибутом ``nacm:default-deny-all`` операция запрещается. Предустановленные настройки механизма NACM ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ В заводской конфигурации ПАК “Фортикс” определены следующие настройки механизма NACM: :: nacm { enable-nacm true read-default permit write-default deny exec-default deny groups { group adm { match * exclude "clear system auth" exclude "system data-slot" exclude "system software" fs-crypto-access fs-media-access fs-system-access fs-share-access } group netadm { match-list adm-common match-list oper-common match-list show-common match "clear conntrack" match "clear firewall" match "clear neighbor" match "clear router" match "clear vrf" match dnssec match firewall match interface match "service captive-portal" match "service conntrack" match "service dhcp" match "service dns" match "service wcf" match ssl fs-media-access } group oper { match-list oper-common match-list show-common } match-list adm-common { match "clear alert" match "clear ssh known-hosts" match clock match configure match poweroff match reboot match "service journal" } match-list oper-common { match @ match archive match arping match cat match compare match copy match curl match echo match edit match exit match gosthash match iftop match iperf match ls match mkdir match mv match nslookup match ping match rm match scp match "service journal verify" match ssh match sysmon match tail match tcpdump match telnet match traceroute match who match whois match write } match-list show-common { exclude "show crypto" match show } } rule-list deny-account-mgmt-rules { group adm group netadm group oper rule deny-account-mgmt { path /fx-system:system/fx-login:login access-operations * action deny } rule deny-auth-mgmt { path /fx-system:system/fx-auth:auth access-operations * action deny } rule deny-nacm { path /ietf-netconf-acm:nacm access-operations * action deny } } rule-list adm-rules { group adm rule allow-all { access-operations * action permit } } rule-list netadm-rules { group netadm rule deny-crypto { path /fx-crypto:crypto access-operations "create update delete exec" action deny } rule allow-rest { access-operations "create update delete" action permit } rule allow-keystore-rpc { module-name ietf-keystore rpc-name * action permit } } rule-list netconf-rpc-admins-rules { group netadm rule allow-commit { module-name ietf-netconf rpc-name commit action permit } rule allow-edit-config { module-name ietf-netconf rpc-name edit-config action permit } rule allow-copy-config { module-name ietf-netconf rpc-name copy-config action permit } rule deny-delete-config { module-name ietf-netconf rpc-name delete-config action deny } rule allow-lock { module-name ietf-netconf rpc-name lock action permit } rule allow-unlock { module-name ietf-netconf rpc-name unlock action permit } rule deny-kill-session { module-name ietf-netconf rpc-name kill-session action deny } rule allow-discard-changes { module-name ietf-netconf rpc-name discard-changes action permit } rule allow-cancel-commit { module-name ietf-netconf rpc-name cancel-commit action permit } rule allow-validate { module-name ietf-netconf rpc-name validate action permit } rule allow-get-schema { module-name ietf-netconf-monitoring rpc-name get-schema action permit } rule allow-edit-data { module-name ietf-netconf-nmda rpc-name edit-data action permit } rule allow-establish-subscription { module-name ietf-subscribed-notifications rpc-name establish-subscription action permit } rule allow-modify-subscription { module-name ietf-subscribed-notifications rpc-name modify-subscription action permit } rule allow-delete-subscription { module-name ietf-subscribed-notifications rpc-name delete-subscription action permit } rule deny-kill-subscription { module-name ietf-subscribed-notifications rpc-name kill-subscription action deny } rule allow-resync-subscription { module-name ietf-yang-push rpc-name resync-subscription action permit } rule allow-create-subscription { module-name notifications rpc-name create-subscription action permit } } rule-list oper-rpc-rules { group netadm group oper rule allow-exec-script { module-name fx-system rpc-name exec-script access-operations exec action permit } rule allow-get-uptime { module-name fx-system rpc-name get-uptime access-operations exec action permit } rule allow-get-interface-info { module-name fx-interface rpc-name get-interface-info access-operations exec action permit } } } Удалённая аутентификация учётных записей по протоколу RADIUS ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ПАК “Фортикс” поддерживает механизм аутентификации через удалённый сервер по протоколу RADIUS, который позволяет централизованно настраивать и администрировать множество учётных записей для различных систем в одном месте на удалённом сервере. Для подключения удалённой аутентификации учётной записи по протоколу RADIUS необходимо: 1) Активировать механизм удалённой аутентификации учётных записей с помощью команды: :: # set system auth radius enable # commit 2) Выполнить настройку механизма удалённой аутентификации по протоколу RADIUS. Обязательной настройкой является определение IP-адреса RADIUS-сервера и установка пароля для подключения к данному серверу. Данные настройки осуществляются с помощью команды: :: # set system auth radius server secret # commit |noindent| где - ```` – IP-адрес или DNS-имя, которое автоматически трансформируется в IP-адрес; - ```` – строка. Для указания нескольких RADIUS-серверов, имеющих различные адреса, необходимо выполнить данную команду несколько раз с указанием адреса и пароля для каждого сервера (при удалённой аутентификации осуществляются поочередные попытки подключения ко всем указанным серверам). При необходимости для указания номера порта подключения сервера применяется команда: :: # set system auth radius server port # commit |noindent| где - ```` – IP-адрес или DNS-имя, которое автоматически трансформируется в IP-адрес; - ```` – число от 1 до 65535, по умолчанию – 1812. При необходимости для настройки тайм-аута подключения применяется команда: :: # set system auth radius server timeout # commit |noindent| где - ```` – IP-адрес или DNS-имя, которое автоматически трансформируется в IP-адрес; - ```` – число секунд, по умолчанию – 60. 3) Создать учётную запись (достаточно без пароля) и добавить её в список учётных записей, которым разрешена удалённая аутентификации по протоколу RADIUS, с помощью команд: :: # setup login # set system auth radius allow-login # commit |noindent| где ```` – имя существующей учётной записи. После выполнения вышеописанных настроек на RADIUS-сервере возможно определение неограниченного количества пользователей и ассоциирование с ними атрибута ``Juniper-Local-User-Name`` (26.2636.1), содержащего имя учётной записи на узле. Пользователь, успешно аутентифицированный на RADIUS-сервере, получает доступ к ПАК “Фортикс” со всеми полномочиями согласно настройкам его учётной записи. Данный механизм работает как при входе с консоли, так и при соединении по протоколам SSH, Telnet и NETCONF.