Jump to content

Recommended Posts

Posted

Использую этот сервер: http://www.pro-bono-publico.de/projects/tac_plus.html

Есть странность, которую я никак не пойму.

 

Есть такая конфигурация:

       acl = office {
               nac = 10.1.144.3
       }
       group = monitor {
               acl = office
               message = "Login as @monitor (status and audit), username %%u\n"
               default service = deny
               enable = permit
               service = shell {
                       default command = deny
                       default attribute = deny
                       set priv-lvl = 1
                       set orign-priority = 1
                       cmd = show { permit .* }
                       cmd = search { permit .* }
                       cmd = test { permit .* }
                       cmd = ping { permit .* }
                       cmd = enable { permit .* }
               }
       }
       user = check {
               login = clear "password"
               member = monitor@access
       }

 

Не могу выполнить вход под логином check.

В логах такое:

2016-09-23 14:56:33 +0300       10.1.13.127     check    tty1           shell login denied by ACL

Но я выполняю вход из 10.1.144.3.

И если ACL выключить, перезапустить сервис и попытаться войти повторно, то вход под логином check выполняется и в логах вот что:

2016-09-23 14:48:54 +0300       10.1.13.127     check    tty1   10.1.144.3      start   task_id=47      zonelist=UTC    service=shell   priv-lvl=1

Posted

 

 

#!/usr/local/sbin/tac_plus

syslog default = deny

id = spawnd {
       listen = { port = 49 }
       spawn = {
               instances min = 1
               instances max = 4
       }
}

id = tac_plus {
       debug = ACL PACKET AUTHEN AUTHOR

       authentication log = /store/mgmt/logs/tacacs-access.log
       authorization log  = /store/mgmt/logs/tacacs-author.log
       accounting log     = /store/mgmt/logs/tacacs-account.log

       host = world {
               key = "no-access"
               address = 0.0.0.0/0
       }

       host = access {
               key = secret
               address = 10.1.10.0/24
               address = 10.1.11.0/24
               address = 10.1.12.0/24
               address = 10.1.13.0/24
               address = 10.1.14.0/24
#               single-connection may-close = yes
               prompt = "\n(access level)\n\n"
               welcome banner = "\nUnauthorized access is prohibited.\n Host %%r, client %%c (logged)\n"
               motd banner = "Welcome, %%u. Date is %F, clock is %T (%Z %:z)\n"
       }

       acl = special {
#               nac = 10.1.0.0/16
       }
       acl = special {
               port = tty0
       }

       acl = backbone {
#               nac = 10.1.0.0/16
       }

       acl = office {
#               nac = 10.1.144.3
       }

       acl = local {
               port = tty0
       }

       group = admin {
               acl = special
               message = "Login as @admin (full access), username %%u\n"
               default service = permit
               service = shell {
                       default command = permit
                       default attribute = permit
                       set priv-lvl = 15
               }
       }

       group = service {
               acl = special
               message = "Login as @service (service and maintenance), username %%u\n"
               default service = permit
               service = shell {
                       default command = permit
                       default attribute = permit
                       set priv-lvl = 15
               }
       }

       group = support {
               acl = office
               message = "Login as @support (support and port control), username %%u\n"
               default service = permit
               service = shell {
                       default command = permit
                       default attribute = permit
                       set priv-lvl = 15
               }
       }

       group = monitor {
               acl = office
               message = "Login as @monitor (status and audit), username %%u\n"
               default service = deny
               enable = permit
               service = shell {
                       default command = deny
                       default attribute = deny
                       message permit = "Permitted '%c %a'"
                       message deny = "Denied '%c %a'"
                       set priv-lvl = 1
                       set orign-priority = 1
                       cmd = show { permit .* }
                       cmd = search { permit .* }
                       cmd = test { permit .* }
                       cmd = ping { permit .* }
                       cmd = enable { permit .* }
                       set autocmd = "show version"
               }
       }

       user = admin {
               login = clear "pwd"
               member = admin@access
       }

       user = oper {
               login = clear "pwd"
               member = service@access
       }

       user = check {
               login = clear "pwd"
               member = monitor@access
       }

       user = user1 {
               login = clear "pwd"
               member = support@access
       }

}

 

 

В ходе экспериментов обнаружилось, что ACL, в которых используется nac или port, работают неадекватно.

То работают, то не работают, чаще не работают, закономерности никакой нет.

Posted

В ходе экспериментов обнаружилось, что ACL, в которых используется nac или port, работают неадекватно.

Глючит случайно не ACL?

        acl = special {
               port = tty0
       }

Posted

Не уверен, но с тас+ скакал по граблям из-за несинхронности времени на нас и такаксе, там типа члючи шифрования уезжали от несинхрона. Но это было давно.... Смутно помню, что если нас отставал во времени и впадал в 1970г, то тас+ не авторизовывал вообще никого, на диалапе еще дело было...

Posted

Часы я проверял, они синхронизированы.

Там что-то другое.

Включил дебаг и в дебаге он явно писал, что NAC != 10.1.144.3.

А вот почему - непонятно, в дебаге полученное значение NAC я не нашел.

Posted

Удаленное устройство это NAS, по нему ACL срабатывают успешно.

А вот по NAC то работают, то не работают.

Скорей всего проблема может быть в том что свич не в верном формате передает ip address компьютера, который на него подключается или не передает вовсе.

 

P.S. Имеет ли вообще смысл ограничивать входы с определенных IP адресов?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.