Как настроить так, чтобы пользователь-принципал, добавленный в Kerberos, не мог получить доступ к определенному хосту-принципалу областей

Как настроить так, чтобы пользователь-принципал, добавленный в Kerberos, не мог получить доступ к определенному хосту-принципалу областей

Я установил Kerberos на CentOS 7 с помощью команды yum.

yum install krb5-server krb5-libs krb5-workstation pam_krb5 -y

Моя ситуация выглядит следующим образом:

  • Имеется 1 KDC.
  • Имеет 2 сервисных сервера.

Файл KDC krb5.conf настроен следующим образом.

# Configuration snippets may be placed in this directory as well
includedir /etc/krb5.conf.d/

[logging]
 default = FILE:/var/log/krb5libs.log
 kdc = FILE:/var/log/krb5kdc.log
 admin_server = FILE:/var/log/kadmind.log

[libdefaults]
 dns_lookup_realm = false
 ticket_lifetime = 24h
 renew_lifetime = 7d
 forwardable = true
 rdns = false
 pkinit_anchors = FILE:/etc/pki/tls/certs/ca-bundle.crt
 default_realm = MYREALM.NET
 default_ccache_name = KEYRING:persistent:%{uid}

[realms]
MYREALM.NET = {
 kdc = kdc.myrealm.net
 admin_server = kdc.myrealm.net
}

[domain_realm]
.myrealm.net = MYREALM.NET
myrealm.net = MYREALM.NET

И я добавил принципала хоста с помощью следующей команды.

# kadmin.local -q 'addprinc -randkey host/build.myrealm.net'
# kadmin.local -q 'ktadd -k /tmp/build.keytab host/build.myrealm.net'
# scp /tmp/build.keytab build.myrealm.net:/etc/krb5.keytab


# kadmin.local -q 'addprinc -randkey host/api.myrealm.net'
# kadmin.local -q 'ktadd -k /tmp/api.keytab host/api.myrealm.net'
# scp /tmp/api.keytab api.myrealm.net:/etc/krb5.keytab

И я добавил пользователя-принципала с помощью следующей команды.

# kadmin.local -q 'addprinc eric'

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

Кстати, я хочу управлять сервером служб, доступным пользователю-принципалу.

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

Подводя итог, я хотел бы получить совет о том, как сделать добавленного пользователя-принципала ericдоступным только для api.myrealm.netнекоторых серверов служб.

Я добавил принципала пользователя и принципала хоста и скопировал файл keytab принципала хоста на сервер службы.

Доступ к серверу службы в той же области осуществляется успешно без пароля.

Однако мне хочется управлять авторизацией для каждого пользователя-участника.

решение1

В качестве ответа на мой вопрос я рекомендую использовать FreeIPA. Создание политики в FreeIPA и ее применение на уровне пользователя решило мою предполагаемую проблему.

https://www.freeipa.org/page/Главная_страница

Связанный контент