Я пытаюсь подключить свой файловый сервер (FreeNAS 8.0.1 / 8.2-RELEASE-p7) к открытому каталогу Mac OS X 10.7 Lion Directory Server ... Я знаю, что Mac OS X предоставляет службу LDAP, через которую другие серверы могут аутентифицироваться против, но мне очень трудно заставить FreeNAS аутентифицироваться в Mac OS X Open Directory.
Как подключить файловый сервер FreeNAS к серверу каталогов Mac OS X?
После нескольких часов поиска в Google и тестирования мне наконец удалось интегрировать FreeNAS 8 с Mac OS X Open Directory. Вот что нужно для этого:
Обратите внимание База поиска LDAP и Kerberos Realm.
diradmin
пользователь, но это может быть ненужным ...)uid=diradmin,
затем базовое DNdiradmin
пользователь. Опять же, это может быть ненужным, я не уверенcrypt
cn=users
cn=groups
cn=users
cn=computers
Off
Вспомогательные параметры:
ldap_version 3
timelimit 30
bind_timelimit 30
bind_policy soft
pam_ldap_attribute uid
sasl-host *your.open.directory.server.ip.or.hostname*
sasl-realm *YOUR.KERBEROS.REALM.FROM.FIRST.STEP*
Вспомогательные параметры являются ключевыми, особенно sasl-host
и sasl-realm
. Очевидно, заменить *your.open.directory.server.ip.or.hostname*
и *YOUR.KERBEROS.REALM.FROM.FIRST.STEP*
с информацией из первого шага (см. первый снимок экрана)
При сохранении изменений LDAP должен начать работать для всех служб. Кроме Samba / CIFS. Часть борьбы заключалась в том, как исправить Samba: после первоначальной настройки службы LDAP на FreeNAS я обнаружил, что ни один пользователь не мог подключиться через Samba, даже пользователей, локально определенных на машине FreeNAS.
В журнале Samba ошибок не было, просто на клиентских машинах ошибки запрещены. Дополнительные исследования показали, что мне пришлось включить сервер FreeNAS Samba для аутентификации в Mac OS X Open Directory с помощью SASL. по отдельности из конфигурации LDAP.
Важно отметить, что база данных LDAP Mac OS X не содержит паролей.. Аутентификация доступна только через SASL / Kerberos. Цитата Дэвид Колвилл1 на форумах Apple:
В отличие от некоторых других каталогов LDAP, OS X не хранит пароль внутри записи LDAP - он использует механизм «SASL» - он запрашивает атрибут «AuthenticationAuthority», чтобы указать место, где можно получить пароль пользователя.
Пароли хранятся внутри PasswordServer (SASL Server), в CRAM-MD5, Digest-MD5, DHX и т. Д. (См. Стр. 50 Руководства по администрированию Open Directory).
Вот почему sasl-host
так важен в конфигурации LDAP.
ОБНОВЛЕНИЕ 2012-12-31: это больше не работает для меня. Я часами пытался определить, почему, но пока не могу.
В веб-интерфейсе FreeNAS настройте службу CIFS следующим образом:
(Экран конфигурации CIFS очень длинный, я совместил самый верх и низ для наглядности)
Local User
Вспомогательные параметры:
password server = *YOUR.KERBEROS.REALM.FROM.FIRST.STEP*
client ntlmv2 auth = yes
После сохранения этих изменений проверьте подключение к Samba с пользователем, указанным в Open Directory, и убедитесь, что вы можете подключиться. Кроме того, проверьте с помощью AFP / SSH, чтобы убедиться, что они также проходят аутентификацию в Open Directory.
Есть несколько вещей, которые мне не удалось решить:
Домашние каталоги пользователей на LDAP-сервере Mac OS X имеют вид /Network/Servers/some.server/some.directory/username
. Однако FreeNAS не имеет /Network/Servers
каталог. Было бы очень просто mkdir -p /Network/Servers
и домашние каталоги пользователей символических ссылок, однако /
монтируется только для чтения, поэтому я не могу этого сделать. Следовательно, пользователи LDAP не могут .AppleVolumes
файлы для пользовательских общих ресурсов AFP.
ОБНОВЛЕНИЕ 2012-12-31: Я обнаружил, что Mac OS X разрешает домашние каталоги в форме /mnt/somewhere/someuser
, позволяя домашнему каталогу пользователя Mac OS X соответствовать файловой системе FreeNAS, решая эту проблему.