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

Аутентификация Samba с использованием LDAP только для чтения

У нас есть доступ только для чтения OpenLDAP сервер, который используется для различных служб аутентификации. Я сейчас пытаюсь добавить (автономный) samba server в этот список, который будет использоваться только как место для хранения резервных копий. Нет необходимости ни в чем, кроме базовой аутентификации имени пользователя и пароля.

Невероятно длинный список руководств и практических рекомендаций предполагает наличие недавно настроенного LDAP сервер с полным доступом. Хотя у меня есть учетные данные администратора для сервера, и он уже содержит всех пользователей и заполненную схему самбы, LDAP сервер - это просто зеркало только для чтения.

В настоящее время моя конфигурация ...

# LDAP Settings
   passdb backend = ldapsam:ldap://192.168.100.11
   ldap suffix = dc=our-domain,dc=de
   ldap user suffix = ou=people
   ldap admin dn = cn=adminacc,ou=daemonadmins,dc=our-domain,dc=de
   ldap ssl = no
   ldap passwd sync = yes

... не работает с:

smbd version 4.2.14-Debian started.
  Copyright Andrew Tridgell and the Samba Team 1992-2014
[2017/01/13 12:52:49.367065,  0] ../source3/passdb/pdb_ldap_util.c:313(smbldap_search_domain_info)
  smbldap_search_domain_info: Adding domain info for SBACKUP failed with NT_STATUS_UNSUCCESSFUL
[2017/01/13 12:52:49.367106,  0] ../source3/passdb/pdb_ldap.c:6534(pdb_ldapsam_init_common)
  pdb_init_ldapsam: WARNING: Could not get domain info, nor add one to the domain. We cannot work reliably without it.
[2017/01/13 12:52:49.367116,  0] ../source3/passdb/pdb_interface.c:179(make_pdb_method_name)
  pdb backend ldapsam:ldap://192.168.100.11 did not correctly init (error was NT_STATUS_CANT_ACCESS_DOMAIN_INFO)

что, конечно, не удивительно. Этот сервер не известен LDAP и поскольку он доступен только для чтения, новая запись не может быть создана. Я не понимаю, зачем вообще нужно добавлять какую-либо информацию о машине. Нужно ли каким-то образом настроить smb, чтобы справиться с доступом только для чтения к LDAP?

Если я явно установил netbios name в моем smb.conf что соответствует одной существующей записи на LDAP на сервере все работает нормально. Но это несколько похоже на взлом, и я бы предпочел не менять netbios name


Это несколько похоже на этот что, к сожалению, охватывает только возможность использования сервера только для чтения, но не его реализацию.

samba НУЖНО читать-писать LDAP для добавления / изменения машин, доверенных учетных записей и нескольких локальных пользователей, которые действительно необходимы для работы домена (администратор, никто, администраторы домена и другие подобные группы).

Обходной путь: установите OpenLDAP на PDC samba, создайте реплицированную ветку (скажем: ou=people) от вас мастер LDAP только для чтения; использовать glue оверлей, чтобы применить эту ветвь под деревом чтения-записи с ветвями ou=users (локальные пользователи), ou=groups, ou=computers (говорит само за себя).

ldap machine suffix = ou=computers
ldap suffix = dc=our-domain,dc=de
# do not set the following; OpenLDAP is
#  able to sort out if a user is a replicated user in 'ou=people'
#  or a local user in 'ou=users'
# ldap group suffix = ou=groups
# ldap user suffix = ou=people