Winbind/AD: локальные пользователи с одинаковыми именами пользователей AD
Мы готовимся добавить Winbind/Samba на некоторые серверы CentOS. Identity Management для UNIX работает на нашем контроллере домена и до сих пор хорошо тестирует. Есть один сценарий, с которым у меня проблемы, и я почти уверен, что он решен в /etc/pam.d/system-auth с диапазонами UID. Я не могу сосредоточиться на конкретных нужных строках. Вот сценарий:
- Мы развернем трех локальных пользователей через Puppet; они должны иметь возможность войти в систему, когда DC не работает. Они должны быть чисто локальными пользователями.
- Локальные имена пользователей для этих пользователей идентичны их аналогам в AD (например, jsmith - это имя локального пользователя CentOS, а jsmith - это также и имя пользователя AD того же пользователя)
- Когда jsmith входит в систему, он должен сначала искать этого пользователя локально.
- Локальные пользователи обычно> UID 500, а наши пользователи AD/Winbind> UID 10000.
2 ответа
У меня есть /etc/pam.d/system-auth, который был настроен для локальных пользователей, чтобы сначала пройти аутентификацию, а затем вернуться к kerberos (pam_krb5.so). Я приведу здесь pam_krb5.so, замененное pam_winbind.so, чтобы дать вам кое-что для начала. Это было вымощено пару лет назад, и, насколько я помню, потребовалось немного доработки, чтобы заставить его работать на нас.
account required pam_unix.so broken_shadow
account sufficient pam_localuser.so
account sufficient pam_succeed_if.so uid < 500 quiet
account [authinfo_unavail=ignore default=bad success=ok user_unknown=ignore] pam_winbind.so
account required pam_permit.so
password requisite pam_cracklib.so try_first_pass retry=3
password sufficient pam_unix.so md5 shadow nullok try_first_pass use_authtok
password sufficient pam_winbind.so use_authtok
password required pam_deny.so
session optional pam_keyinit.so revoke
session required pam_limits.so
session optional pam_mkhomedir.so umask=0077
session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session required pam_unix.so
session optional pam_winbind.so
Вы можете решить эту проблему путем кэширования учетных данных winbind. Другими словами, у вас есть только AD UID, но его учетные данные кэшируются, так что он может войти в систему, даже когда AD недоступен.
См. http://wiki.samba.org/index.php/PAM_Offline_Authentication для получения дополнительной информации.