Назад | Перейти на главную страницу

Ubuntu LDAP Создать домашний каталог

Я недавно спросил вопрос здесь о том, как заставить Ubuntu аутентифицироваться через LDAP на сервере OS X. Хорошая новость в том, что у меня все заработало, и теперь клиенты проходят аутентификацию, но теперь моя проблема в том, что pam_mkhomdir.so, похоже, не выполняет свою работу. Вот мой файл общей сессии:

session sufficient pam_ldap.so
session [default=1]                     pam_permit.so
session requisite                       pam_deny.so
session required                        pam_permit.so
session required        pam_unix.so
session required pam_mkhomedir.so skel=/etc/skel/
session optional                        pam_ldap.so
session optional                        pam_ck_connector.so nox11
session optional pam_foreground.so

Из-за этого каждый раз, когда пользователь LDAP пытается войти в систему, gdm сообщает им, что их домашний каталог установлен на /Network/[Servername]/User/[username]. Основываясь на этой ошибке, я предполагаю, что pam_mkhomedir.so переопределяется домашним путем, предоставленным LDAP, поэтому мой вопрос: есть ли способ создать домашний каталог пользователя LDAP локально, когда они входят в систему, вместо того, чтобы пытаться использовать /Volumes/[Servername]/...?

заранее спасибо

Обновить: Ответ Камила, похоже, помог добиться некоторого прогресса, но вместо того, чтобы gdm сообщал, что домашний каталог установлен на /Network/etc..., он говорит, что настроен на '' (ноль). Я пробовал использовать

nss_map_attribute homeDirectory "/home/$username"

но это дало мне ту же ошибку. Любые идеи?

Мы решили эту проблему, добавив в LDAP еще один атрибут, например linuxHomeDirectory . Затем вы можете создать сопоставление в ldap.conf:

nss_map_attribute homeDirectory linuxHomeDirectory

Для каждого пользователя вы устанавливаете атрибут в LDAP на путь, который вы хотите для их домашнего каталога Linux, например /home/$username или еще много чего.

Если у вас есть домашние каталоги, обслуживаемые сервером OS X, вы можете смонтировать их с помощью автомонтирования в /Volumes/$servername/$path иерархии в Linux, и тогда вам не нужно изменять какие-либо атрибуты LDAP.

Больше информации: Вот статья, как расширить схему LDAP в OpenDirectory: http://www.afp548.com/article.php?story=20060228230005854

Чтобы заполнить атрибуты пользователя, вы можете использовать ldapadd и ldapmodify инструменты.