tacacs+ для аутентификации / авторизации в Linux с использованием pam_tacplus

Я использую TACACS+ для аутентификации пользователей Linux с помощью модуля PAM pam_tacplus.so, и он работает без проблем.

Я изменил модуль pam_tacplus, чтобы удовлетворить некоторые из моих пользовательских требований.

Я знаю, что по умолчанию TACACS+ не имеет никаких средств для поддержки групп linux или контроля уровня доступа к командам linux bash, однако мне было интересно, есть ли способ передать некоторую информацию со стороны сервера TACACS+, чтобы модуль pam_tacplus.so который можно использовать для разрешения / запрета или изменения группы пользователей на лету [из самого модуля pam].

Пример: если бы я мог передать число priv-lvl с сервера клиенту и который мог бы использоваться для принятия некоторых решений в модуле PAM.

PS: Я бы предпочел метод, который не требует модификации на стороне сервера [код], все модификации должны быть сделаны на стороне Linux, т.е. модуль pam_tacplus.

Спасибо за любую помощь.

1 ответ

Решение

В конце концов я получил это работает.

Выпуск 1:

Проблема, с которой я столкнулся, заключалась в том, что документации по настройке сервера TACACS+ для устройств, не принадлежащих к CISCO, очень мало.

Выпуск 2:

Версия tac_plus, которую я использую

tac_plus -v
tac_plus version F4.0.4.28

не похоже на поддержку

service = shell protocol = ssh 

опция в файле tac_plus.conf.

Так что в конце концов я использовал

service = system  {
                default attribute = permit
                priv-lvl = 15
        }

На стороне клиента (pam_tacplus.so),

Я отправил службу AVP = система на этапе авторизации (pam_acct_mgmt), которая вынудила службу вернуть priv-lvl, определенный в файле конфигурации, который я использовал для уровня привилегий устройства пользователя.

ПРИМЕЧАНИЕ. В некоторых документах упоминается, что service=system больше не используется. Так что эта опция может не работать с устройствами CISCO.

НТН

Другие вопросы по тегам