Scroll to navigation

AUTHSELECT-MIGRATIO(7)   AUTHSELECT-MIGRATIO(7)

NAME

authselect-migration - руководство по переходу с authconfig на authselect.

ОПИСАНИЕ

На этой странице руководства объясняется разница между authconfig, предыдущим инструментом настройки источников аутентификации и идентификации системы, и authselect, который замещает его. Здесь также объясняется, какие действия необходимы для перехода от authconfig к authselect.

ОСНОВНЫЕ РАЗЛИЧИЯ

У authselect совершенно другой подход к настройке системы, чем у предыдущего инструмента, у authconfig.

Authconfig изо всех сил старается сохранять изменения пользователя, сделанные вручную, в создаваемых файлах. Он создает не только файлы конфигурации PAM и nsswitch.conf (для настройки модулей аутентификации и источников идентичности), но и простые файлы настроек для некоторых служб, например, LDAP и Kerberos.

Authselect не делает такого. Он не создает файлов настроек, за исключением PAM и nsswitch.conf, и он строго запрещает любые изменения созданных настроек вручную. Он предоставляет набор файлов, называемых профилями. В каждом профиле описывается, как должна выглядеть итоговая конфигурация, и он может быть слегка изменен включением или выключением определенных дополнительных функций. Если возникает необходимость в другом профиле, отличном от того, что поставляется с authselect, администратор может создать совсем новый профиль и использовать его с authselect. См. authselect-profiles(5) для получения дополнительных сведений.

Это может показаться большим недостатком, но на самом деле все наоборот. Authconfig - очень старый инструмент, а приложения, предоставляющие необходимые возможности, быстро менялись с годами. Как правило, больше нет необходмости иметь несколько модулей аутентификации в PAM и nsswitch.conf, поскольку подавляющее большинство сценариев использования покрывается SSSD. Следовательно, нет необходимости специально добавлять или удалять их. Существуют также более совершенные инструменты создания конфигурации для системных служб, которые могут помочь автоматизировать процесс присоединения к удаленному домену, например, «realm». Кроме того, поставляемые профили дают нам исчерпывающую и детерминированную конфигурацию системы, которая может быть полностью протестирована и гораздо менее подвержена ошибкам. Также намного проще распределять такую конфигурацию по многим системам.

Вероятно, самым спорным изменением является то, что authselect предоставляет профили только для поставщиков sssd и winbind. Эти два поставщика охватывают все современные варианты использования, от обеспечения локальных пользователей и устаревших доменов LDAP до сложных конфигураций с серверами IPA или Active Directory. Профили больше не поддерживают nss-pam-ldapd, и пользователям рекомендуется перейти на sssd.

ПРИСОЕДИНЕНИЕ К УДАЛЕННЫМ ДОМЕНАМ

Можно воспользоваться «ipa-client-install» или «realm», чтобы присоединиться к домену IPA domain, и «realm», чтобы присоединиться к домену Active Directory. Эти инструменты гарантируют, что выбран правильный профиль authselect, и все демоны и службы правильно настроены.

ПРЕОБРАЗОВАНИЕ СКРИПТОВ

Если для присоединения к домену используется «ipa-client-install» или «realm», можно просто удалить любой вызов authconfig в своих скриптах. Если это не подходит, необходимо заменить каждый вызов authconfig на его эквивалентный вызов authselect, чтобы выбрать правильный профиль с нужными функциями. Затем вам также необходимо написать файл конфигурации для необходимых сервисов.

Table 1. Связь параметров authconfig с профилями authselect

Параметры authconfig Профиль authselect
--enableldap --enableldapauth sssd
--enablesssd --enablesssdauth sssd
--enablekrb5 sssd
--enablewinbind --enablewinbindauth winbind
--enablenis nis

Table 2. Связь параметров authconfig с функциями профиля authselect

Authconfig options Authselect profile feature
--enablesmartcard with-smartcard
--enablefingerprint with-fingerprint
--enablemkhomedir with-mkhomedir
--enablefaillock with-faillock
--enablepamaccess with-pamaccess
--enablewinbindkrb5 with-krb5
--enableshadow none
--passalgo none


Note

Параметры Authconfig --enableshadow и`--passalgo=sha512` часто использовались, чтобы гарантировать хранение паролей в / etc / shadow с использованием алгоритма`sha512`. Профили authselect теперь используют метод хеширования sha512, и его нельзя изменить с помощью параметра (только путем создания пользовательского профиля). Вы можете просто опустить эти параметры.

Примеры.

authconfig --enableldap --enableldapauth --enablefaillock --updateall
authselect select sssd with-faillock
authconfig --enablesssd --enablesssdauth --enablesmartcard --smartcardmodule=sssd --updateall
authselect select sssd with-smartcard
authconfig --enablepamaccess --updateall
authselect select sssd with-pamaccess
authconfig --enablewinbind --enablewinbindauth --winbindjoin=Administrator --updateall
realm join -U Administrator --client-software=winbind WINBINDDOMAIN

КОНФИГУРАЦИОННЫЕ ФАЙЛЫ

В этом разделе собраны фрагменты для минимальной настройки различных сервисов.

LDAP

Даже если LDAP не используется напрямую через «pam_ldap» и «nss_ldap», все равно полезно настроить ldap.conf, чтобы настроить openldap-libs и, косвенно, например, инструменты LDAP, такие, как «ldapsearch».

/etc/openldap/ldap.conf.

# Установить стандартный базовый dn
BASE   dc=example,dc=com
# Установить стандартный сервер LDAP
URI    ldap://ldap.example.com ldap://ldap-master.example.com:666

KERBEROS

Если вы используете Kerberos, необходимо настроить область Kerberos по умолчанию, чтобы библиотеки krb5 и, следовательно, такие инструменты, как «kinit», работали без дополнительной настройки.

/etc/krb5.conf.

[libdefaults]

default_realm = MYREALM [realms]
MYREALM = {
kdc = kdc.myrealm.org
} [domain_realm]
myrealm.org = MYREALM
.myrealm.org = MYREALM

SSSD

Authselect рекомендует пользователям использовать SSSD везде, где можно. Есть много вариантов конфигурации, см. sssd.conf (5). Это минимальная конфигурация, которая создает один домен LDAP с именем «default». Сервер LDAP обнаруживается автоматически при поиске в DNS.

/etc/sssd/sssd.conf.

[sssd]
config_file_version = 2
domains = default
[domain/default]
id_provider = ldap
ldap_uri = _srv_
dns_discovery_domain = myrealm

А вот фрагмент конфигурации для того же домена, но теперь аутентификация выполняется через Kerberos. Сервер KDC автоматически обнаруживается при поиске в DNS.

/etc/sssd/sssd.conf.

[sssd]
config_file_version = 2
domains = default
[domain/default]
id_provider = ldap
auth_provider = krb5
ldap_uri = _srv_
krb5_server = _srv_
krb5_realm = MYREALM
dns_discovery_domain = myrealm

Если вы хотите настроить SSSD для домена IPA или Active Directory, используйте инструмент «realm». Это выполнит начальную настройку, которая включает в себя создание keytab-файла Kerberos и генерацию базовой конфигурации SSSD. Затем вы можете настроить его, изменив /etc /sssd/sssd.conf.

WINBIND

Если вы хотите настроить компьютер для использования Winbind, используйте «realm». Это выполнит начальную настройку, которая включает в себя создание keytab-файла Kerberos и запуск «adcli» для присоединения к домену. Это также вносит изменения в «smb.conf». Затем вы можете настроить его, редактируя /etc/samba/smb.conf.

NIS

В нескольких местах необходимо сделать настройку, чтобы работала аутентификация NIS. Во-первых, нужно настроить домен NIS и, при необходимости, еще и сервер NIS в /etc/yp.conf.

/etc/yp.conf.

domain mydomain broadcast
# или
# domain mydomain server myserver

Домен NIS также должен быть настроен в конфигурации сети системы.

/etc/sysconfig/network.

NISDOMAIN=mydomain

Теперь можно установить доменное имя с помощью командной строки, поэтому перезагружать систему не нужно. Кроме того, может потребоваться включить NIS в selinux.

$ domainname mydomain
$ setsebool -P allow_ypbind 1

КАЧЕСТВО ПАРОЛЯ

Authselect включает модуль «pam_pwquality» для применения требования к качеству пароля. Этот модуль активируется только для локальных пользователей. Удаленные пользователи должны использовать политику паролей, которая применяется на соответствующем удаленном сервере.

Модуль «pam_pwquality» можно настроить в /etc/security/pwquality.conf. Его параметры конфигурации и значения по умолчанию см. pam_pwquality(8).

ЗАПУСК СЛУЖБ

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

•SSSD

systemctl enable sssd.service ; systemctl start sssd.service

•Winbind

systemctl enable winbind.service ; systemctl start winbind.service

•NIS

systemctl enable rpcbind.service ; systemctl start rpcbind.service
systemctl enable ypbind.service ; systemctl start ypbind.service

•Если функция mkhomedir включена,

systemctl enable oddjobd.service ; systemctl start oddjobd.service

ИНСТРУМЕНТЫ AUTHCONFIG

Authconfig поставляется с инструментом под названием cacertdir_rehash. Если вы полагаетесь на этот инструмент, перейдите на исходную команду openssl: * openssl rehash <directory> *, которая служит той же цели.

СМОТРИТЕ ТАКЖЕ

authselect(8), authselect-profiles(5), realm(8), ipa-client-install(1), sssd.conf(5), smb.conf(5), ldap.conf(5), krb5.conf(5)

2021-06-05