241
правка
Dkirienko (обсуждение | вклад) |
Dkirienko (обсуждение | вклад) |
||
| Строка 1: | Строка 1: | ||
<big>'''Это черновик статьи, он может содержать ошибки!'''</big> | <big>'''Это черновик статьи, он может содержать ошибки!'''</big> | ||
==Функционал системы== | ==Функционал системы== | ||
| Строка 290: | Строка 287: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
===Конфигурация /etc/krb5.conf | ===Конфигурация сервера Kerberos === | ||
Запишите в файл /etc/krb5.conf следующее. <syntaxhighlight lang="ini"> | |||
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] | [libdefaults] | ||
default_realm = SCH179.LOCAL | default_realm = SCH179.LOCAL | ||
| Строка 302: | Строка 306: | ||
[realms] | [realms] | ||
SCH179.LOCAL = { | SCH179.LOCAL = { | ||
kdc = | kdc = server.sch179.ru | ||
admin_server = | admin_server = server.sch179.ru | ||
} | } | ||
| Строка 309: | Строка 313: | ||
.sch179.local = SCH179.LOCAL | .sch179.local = SCH179.LOCAL | ||
sch179.local = SCH179.LOCAL | sch179.local = SCH179.LOCAL | ||
</syntaxhighlight> | </syntaxhighlight> | ||
===Создание базы данных=== | ===Создание базы данных=== | ||
<syntaxhighlight lang="bash"> | Выполните команду. Нужно будет установить мастер-пароль для базы Kerberos, сохраните этот пароль.<syntaxhighlight lang="bash"> | ||
kdb5_util create -s | kdb5_util create -s | ||
</syntaxhighlight> | </syntaxhighlight> | ||
===Конфигурация базы данных Kerberos=== | |||
Запишите в файл /var/kerberos/krb5kdc/kdc.conf следующий текст.<syntaxhighlight lang="ini"> | |||
===Конфигурация /var/kerberos/krb5kdc/kdc.conf | |||
<syntaxhighlight lang="ini"> | |||
[realms] | [realms] | ||
SCH179.LOCAL = { | SCH179.LOCAL = { | ||
| Строка 332: | Строка 335: | ||
default_principal_flags = +forwardable | default_principal_flags = +forwardable | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight>Запишите в файл /var/kerberos/krb5kdc/kadm5.acl следующий текст. | ||
<syntaxhighlight> | <syntaxhighlight> | ||
*/admin@SCH179.LOCAL * | */admin@SCH179.LOCAL * | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== | ===Включение и запуск служб=== | ||
<syntaxhighlight lang="bash"> | Выполните команду.<syntaxhighlight lang="bash"> | ||
systemctl enable --now krb5kdc | systemctl enable --now krb5kdc | ||
systemctl enable --now kadmin | systemctl enable --now kadmin | ||
</syntaxhighlight> | </syntaxhighlight> | ||
===Создание | ===Создание принципала kadmin/admin=== | ||
<syntaxhighlight lang="bash"> | В базе Kerberos хранятся "принципалы" (principals) - идентификаторы пользователей, сервисов, хостов. | ||
kadmin.local | |||
Утилита kdamin.local используется для управления базой Kerberos непосредственно на сервере Kerberos. Если запустить эту команду без параметров, то запустится оболочка, в которую можно вводить команды Kerberos. Например, команда "listprincs" выводит список всех принципалов. Команда "quit" завершает работу kdamin.local. | |||
Другой способ использования kadmin.local - это указать команду непосредственно в виде параметров при запуске kdamin.local. Например, вывести список всех принципалов можно командой<syntaxhighlight lang="bash"> | |||
kadmin.local listprincs | |||
</syntaxhighlight>Специальным принципалом является принципал с именем kadmin/admin. Этот принципал необходимо создать, если вы будете управлять базой Kerberos с другого компьютера. Если все команды администрирования Kerberos будут выводиться через kadmin.local, то, кажется, принципал kadmin/admin можно не создавать. | |||
Для создания этого принципала запустите kadmin.local и в его консоли введите команду.<syntaxhighlight lang="bash"> | |||
addprinc kadmin/admin | addprinc kadmin/admin | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Задайте пароль для этого принципала. Завершите работу kadmin.local командой quit. | |||
=== Создание принципалов для пользователей === | |||
Для каждого пользователя системы, необходимо создать принципал, например, принципалы teacher1, student1. | |||
Это можно сделать разными способами. Можно запустить kadmin.local и ввести команду addprinc для создания принципала каждого пользователя, например,<syntaxhighlight> | |||
addprinc teacher1 | |||
addprinc student1 | |||
</syntaxhighlight>Для каждого принципала необходимо будет два раза ввести пароль. | |||
Если вы создаёте много принципалов, удобно это делать не вводя пароль, сразу одной командой. Примеры таких команд: | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
kadmin.local addprinc -pw | kadmin.local addprinc -pw qwerty456 teacher1 | ||
</syntaxhighlight> | kadmin.local addprinc -pw qwerty789 student1 | ||
</syntaxhighlight>Параметр -pw задаёт пароль принципала, то есть эти команды создадут принципал teacher1 с паролем qwerrty456 и принципал student1 с паролем qwerty789. | |||
==Интеграция LDAP и Kerberos через SSSD== | ==Интеграция LDAP и Kerberos через SSSD== | ||