В этом разделе описан способ настройки управления доступом сетевых администраторов к CLI консолям управления устройств под управлением операционной системы JunOS. Это коммутаторы, межсетевые экраны, маршрутизаторы и некоторые другие изделия производства компании Juniper Networks.

Аутентификация доступа администратора производится как обычно.

JunOS использует нестандартный механизм авторизации команд. Большинство производителей оборудования отправляют запрос авторизации набранной команды сразу и при каждом её вводе в командную строку (CLI), и сервер WNAM 2 выдаёт ответ, базируясь на настроенных списках запрещенных/разрешенных команд и их группах. Однако JunOS выполняет запрос авторизации один раз, при логине администратора в CLI, ожидая передачи управляющих команд в наборе атрибутов.

Механизм работы JunOS подробно описан в следующей статье производителя: https://www.juniper.net/documentation/us/en/software/junos/user-access/topics/topic-map/user-access-tacacs-authentication.html. Пожалуйста, изучите её внимательно перед продолжением работы.

Минимальный набор команд устройства для включения работы с TACACS+ сервером (WNAM 2) сводится к:

 system {
    authentication-order [ tacplus password ];
    tacplus-server {
        172.16.133.12 secret "$9$EHdyvLdVYoaUdb4ZGDPf"; ## SECRET-DATA
    }
    login {
        user remote {
            uid 2001;
            class super-user;
        }
    }
}

или:

set system authentication-order tacplus
set system authentication-order password
set system tacplus-server 172.16.133.12 secret "$9$EHdyvLdVYoaUdb4ZGDPf"
set system login user remote uid 2001
set system login user remote class super-user

Не забываем про команду

commit

На стороне WNAM 2 создаётся Сетевое устройство производителя JUNIPER, указывается секретный ключ протокола TACACS+, и формируется правило:

В правиле, в виде индивидуальных атрибутов, либо ссылки на ранее созданный набор атрибутов, задаются различные разрешения, ограничения и настройки, как описано в вышеприведенном документе производителя, Juniper. Например:

Имя

Описание

Длина

Нить

local-user-name

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

≥3

Один или несколько октетов, содержащих печатные символы ASCII.

allow-commands

Содержит расширенное регулярное выражение, которое позволяет пользователю запускать команды в дополнение к тем командам, которые разрешены битами разрешений класса входа пользователя.

≥3

Один или несколько октетов, содержащих печатные символы ASCII, в форме расширенного регулярного выражения.

allow-commands-regexps

Содержит расширенное регулярное выражение, которое позволяет пользователю запускать команды в дополнение к тем командам, которые разрешены битами разрешений класса входа пользователя.

≥3

Один или несколько октетов, содержащих печатные символы ASCII, в форме расширенного регулярного выражения.

allow-configuration

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

≥3

Один или несколько октетов, содержащих печатные символы ASCII, в форме расширенного регулярного выражения.

allow-configuration-regexps

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

≥3

Один или несколько октетов, содержащих печатные символы ASCII, в форме расширенного регулярного выражения.

deny-commands

Содержит расширенное регулярное выражение, которое запрещает пользователю запускать команды, разрешенные битами разрешений класса входа пользователя.

≥3

Один или несколько октетов, содержащих печатные символы ASCII, в форме расширенного регулярного выражения.

deny-commands-regexps

Содержит расширенное регулярное выражение, которое запрещает пользователю запускать команды, разрешенные битами разрешений класса входа пользователя.

≥3

Один или несколько октетов, содержащих печатные символы ASCII, в форме расширенного регулярного выражения.

deny-configuration

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

≥3

Один или несколько октетов, содержащих печатные символы ASCII, в форме расширенного регулярного выражения.

deny-configuration-regexps

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

≥3

Один или несколько октетов, содержащих печатные символы ASCII, в форме расширенного регулярного выражения.

user-permissions

Содержит информацию, которую сервер использует для указания разрешений пользователя.

Примечание: 

Когда сервер TACACS+ определяет user-permissions атрибут для предоставления пользователю maintenance разрешения или разрешения, список членов групп пользователя не включает группу UNIX wheel автоматически. Некоторые операции, такие как запуск команды из локальной оболочки, требуют разрешений членства в группе wheel. Однако, когда сетевое устройство определяет локальную учетную запись пользователя с разрешениями или , пользователю автоматически предоставляется членство в группе UNIX wheel. Поэтому мы рекомендуем создать учетную запись шаблона пользователя с необходимыми разрешениями и связать отдельные учетные записи пользователей с учетной записью шаблона пользователя.

≥3

Один или несколько октетов, содержащих печатные символы ASCII.

См. Обзор уровней привилегий доступа .

authentication-type

Указывает метод аутентификации (локальная база данных или сервер TACACS+), используемый для аутентификации пользователя. Если пользователь аутентифицирован с использованием локальной базы данных, значение атрибута равно «local». Если пользователь аутентифицирован с использованием сервера TACACS+, значение атрибута равно «remote».

≥5

Один или несколько октетов, содержащих печатные символы ASCII.

session-port

Указывает номер исходного порта установленного сеанса.

размер целого числа

Целое число