
У бывшего тупого ИТ-специалиста, которого я сейчас заменяю, был настроен общий ресурс Samba на сервере Fedora, который использует наш сервер OpenLDAP для аутентификации пользователей, желающих войти в систему из Windows.
Недавно мы добавили нового сотрудника, и я проделал все эти процедуры с LDAP, чтобы добавить его в систему. Однако я не могу использовать его логин для доступа к ресурсу Samba. Я просматриваю настройки LDAP и группы, сравниваю новую учетную запись пользователя с существующими и не могу понять, какие настройки в LDAP требуются для того, чтобы этот пользователь мог получить доступ к ресурсу Samba.
Конечно, бывший идиот-айтишник ничего не задокументировал и имеет всевозможные странные настройки в сети. Так что я немного растерян, не зная, что здесь искать.
С чего начать?
На сервере, на котором размещен общий ресурс Samba, у него, очевидно, запущена Samba, но также загружены smbldap-tools.
решение1
Вы уверены, что он использует LDAP для аутентификации, а не только для авторизации? Если вы меняете пароль в LDAP, разрешает ли ресурс вход со старым или новым паролем? Это важный вопрос, на который нужно ответить: если вы меняете пароль, а сервер Samba его не распознает, возможно, сервер Samba использует локально настроенных пользователей Samba и проверяет их членство в группах в LDAP.
решение2
pdbedit
на контроллере Samba — хорошее место для начала. Появляется ли пользователь в pdbedit -L
? Вы также можете использовать net rpc users
, чтобы сделать что-то подобное, но это работает по сети, а не напрямую запрашивать базу данных паролей.
Если пользователь не отображается в выводе, это означает, что необходимые атрибуты отсутствуют. Мы не используем smbldap-tools, поэтому мы можем просто использовать smbpasswd -a $username
или pdbedit -a $username
, но это может быть не ваш случай.
Если пользователь появляется в выводе, то я бы начал искать выше по стеку. Можете ли вы войти как пользователь с net -U $username rpc share
?
Файлы журналов также часто полезны - наши находятся в /var/log/samba/ под именем машины и IP-адресом. Вы можете использовать smbcontrol smbd debug
для включения соответствующих разделов отладки, таких как passdb
.
решение3
Существует инструмент LDAP GUI для Windows, который называетсяldapadmin. Он представляет данные в каталоге LDAP, необходимые для samba, в простом, понятном для человека формате. Вы также можете просмотреть все мельчайшие подробности в записи.
Кроме того, вы смотрели настройки LDAP в smb.conf? Там будет указано, какие атрибуты LDAP используются, если они настроены.
решение4
Вам следует быть осторожными, если вы не знакомы с контроллерами домена Openldap / Samba. Вы можете остаться без возможности входа в домен, если что-то сломаете.
Обычно большинство людей используют smbldap-tools ... т.е. /opt/IDEALX/...smbldap-useradd -m -a имя_пользователя ; smbldap-passwd имя_пользователя ; smbpasswd имя_пользователя.
Существует множество инструментов для добавления пользователей в samba/openldap. Инструменты "net" включены в набор samba; они являются инструментами общего назначения и разработаны для использования, аналогичного инструментам Windows, доступным в dos.