smbldap-tools и Samba PDC

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
DJ Kill
мл. сержант
Сообщения: 83
Зарегистрирован: 2007-12-04 16:51:34

smbldap-tools и Samba PDC

Непрочитанное сообщение DJ Kill » 2007-12-05 13:10:17

Есть домен-контроллер Samba на FreeBSD 6.2
В конфиге самбы:

Код: Выделить всё

        add user script = /usr/local/sbin/smbldap-useradd -m "%u" -s "/bin/csh"
        delete user script = /usr/local/sbin/smbldap-userdel "%u"
        add group script = /usr/local/sbin/smbldap-groupadd "%g"
        delete group script = /usr/local/sbin/smbldap-groupdel "%g"
        add user to group script = /usr/local/sbin/smbldap-groupmod -m "%u" "%g"
        set primary group script = /usr/local/sbin/smbldap-usermod -g "%g" "%u"
        add machine script = /usr/local/sbin/smbldap-useradd -w "%u"
При добавлении машины в домен получается запись вида:

Код: Выделить всё

ldapsearch -x -LLL -b 'dc=gtss,dc=ru' 'uid=test1234$'

dn: uid=test1234$,ou=machines,dc=gtss,dc=ru
objectClass: top
objectClass: account
objectClass: posixAccount
cn: test1234$
uid: test1234$
uidNumber: 1166
gidNumber: 515
homeDirectory: /dev/null
loginShell: /bin/false
description: Computer
gecos: Computer
Это, естесственно, не работает. Корректная запись должна иметь samba3 поля:

Код: Выделить всё

dn: uid=test123$,ou=machines,dc=gtss,dc=ru
objectClass: top
objectClass: account
objectClass: posixAccount
objectClass: sambaSamAccount
cn: test123$
uid: test123$
uidNumber: 1165
gidNumber: 515
homeDirectory: /dev/null
loginShell: /bin/false
description: Computer
gecos: Computer
sambaDomainName: GTSS
sambaAcctFlags: [W          ]
displayName: test123$
sambaPrimaryGroupSID: S-1-5-21-...
sambaPwdLastSet: 1196846008
sambaSID: S-1-5-21-...
Объясните что я делаю не так? Туплю. :(
Последний раз редактировалось DJ Kill 2007-12-05 13:42:49, всего редактировалось 1 раз.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35465
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение Alex Keda » 2007-12-05 13:30:10

кнопочку code не юзаешь :)))
Убей их всех! Бог потом рассортирует...

Аватара пользователя
Dron
ст. сержант
Сообщения: 373
Зарегистрирован: 2007-08-15 13:36:28
Откуда: Днепропетровск
Контактная информация:

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение Dron » 2007-12-05 18:50:43

скрипт добавляет только posix аттрибуты...
SMB аттрибуты добавляет самба, она у тебя настроена до конца? Запущена? Работает? В логи не ругается?
Та Да...

DJ Kill
мл. сержант
Сообщения: 83
Зарегистрирован: 2007-12-04 16:51:34

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение DJ Kill » 2007-12-05 21:11:51

Запущена. Работает. Уже года полтора.

В логах вроде ничего особенного нет....

Причём если после добавления компьютера в домен войти в LDAP Account Manager и вручную создать Samba3 параметры - то всё ок.

Какая часть самбы за это отвечает?

Аватара пользователя
Dron
ст. сержант
Сообщения: 373
Зарегистрирован: 2007-08-15 13:36:28
Откуда: Днепропетровск
Контактная информация:

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение Dron » 2007-12-06 13:34:10

дай конфиги smbldap-tools и smb.conf
а то с потолка не разборчиво ;)
Та Да...

DJ Kill
мл. сержант
Сообщения: 83
Зарегистрирован: 2007-12-04 16:51:34

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение DJ Kill » 2007-12-06 13:59:15

smbldap.conf

Код: Выделить всё

SID="S-1-5-21-..."
sambaDomain="GTSS"
slaveLDAP="127.0.0.1"
slavePort="389"
masterLDAP="127.0.0.1"
masterPort="389"
ldapTLS="0"
verify=""
cafile=""
clientcert=""
clientkey=""
suffix="dc=gtss,dc=ru"
usersdn="ou=users,${suffix}"
computersdn="ou=machines,${suffix}"
groupsdn="ou=groups,${suffix}"
idmapdn="ou=idmap,${suffix}"
sambaUnixIdPooldn="sambaDomainName=GTSS,${suffix}"
scope="sub"
hash_encrypt="SSHA"
crypt_salt_format=""
userLoginShell="/bin/csh"
userHome="/home/%U"
userHomeDirectoryMode="700"
userGecos="System User"
defaultUserGid="513"
defaultComputerGid="515"
skeletonDir="/etc/skel"
defaultMaxPasswordAge="45"
userSmbHome="\\geo-samba\%U"
userProfile="\\geo-samba\profiles\%U"
userHomeDrive="U:"
userScript="start.bat"
mailDomain="gtss.ru"
with_smbpasswd="0"
smbpasswd="/usr/local/bin/smbpasswd"
with_slappasswd="0"
slappasswd="/usr/local/sbin/slappasswd"
smb.conf

Код: Выделить всё

[global]
        dos charset = 866
        unix charset = KOI8-R
        display charset = KOI8-R
        workgroup = GTSS
        server string = Primary Domain Controller (Samba %v)
        interfaces = 192.168.100.0/24, 192.168.0.0/24, 127.0.0.1
        bind interfaces only = Yes
        passdb backend = ldapsam:ldap://127.0.0.1
        log level = 3
        log file = /var/log/samba/%m.log
        max log size = 1000
        time server = Yes
        max open files = 1000000
        load printers = No
        add user script = /usr/local/sbin/smbldap-useradd -m "%u" -s "/bin/csh"
        delete user script = /usr/local/sbin/smbldap-userdel "%u"
        add group script = /usr/local/sbin/smbldap-groupadd "%g"
        delete group script = /usr/local/sbin/smbldap-groupdel "%g"
        add user to group script = /usr/local/sbin/smbldap-groupmod -m "%u" "%g"
        set primary group script = /usr/local/sbin/smbldap-usermod -g "%g" "%u"
        add machine script = /usr/local/sbin/smbldap-useradd -w "%u"
        logon script = start.bat
        logon path = \\geo-samba\profiles\%U
        domain logons = Yes
        os level = 250
        preferred master = Yes
        domain master = Yes
        dns proxy = No
        wins support = Yes
        ldap admin dn = "uid=root,ou=users,dc=gtss,dc=ru"
        ldap delete dn = Yes
        ldap group suffix = ou=groups
        ldap idmap suffix = ou=idmap
        ldap machine suffix = ou=machines
        ldap suffix = dc=gtss,dc=ru
        ldap ssl = no
        ldap user suffix = ou=users
        idmap uid = 10000-20000
        idmap gid = 10000-20000
        winbind cache time = 1200
        winbind use default domain = Yes
        winbind trusted domains only = Yes
        admin users = root, pirate, lva, denja, admin, dj_kill
        acl group control = Yes
        acl map full control = No
        force create mode = 0755
        force directory mode = 06755
        hosts allow = 192.168.100.0/24, 127.0.0.1, 192.168.0.0/24
        hosts deny = all
        profile acls = Yes
        map acl inherit = Yes
        browseable = No

DJ Kill
мл. сержант
Сообщения: 83
Зарегистрирован: 2007-12-04 16:51:34

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение DJ Kill » 2007-12-07 11:54:34

Хм. Вообще изыскания зашли в тупик. :(
Даже при добавлении Samba3 параметров в LAM не работает. :(

Код: Выделить всё

dn: uid=geo-ronzhina$,ou=machines,dc=gtss,dc=ru
objectClass: sambaSamAccount
objectClass: posixAccount
objectClass: account
sambaDomainName: GTSS
sambaAcctFlags: [W          ]
displayName: geo-ronzhina$
sambaPrimaryGroupSID: S-1-5-21-...
sambaPwdLastSet: 1197016305
sambaSID: S-1-5-21-...
gidNumber: 515
loginShell: /bin/false
gecos: geo-ronzhina$
homeDirectory: /dev/null
uid: geo-ronzhina$
cn: geo-ronzhina$
uidNumber: 50022
description: geo-ronzhina$

Аватара пользователя
Dron
ст. сержант
Сообщения: 373
Зарегистрирован: 2007-08-15 13:36:28
Откуда: Днепропетровск
Контактная информация:

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение Dron » 2007-12-07 12:12:51

а

Код: Выделить всё

smbpasswd -W
делал?
Та Да...

DJ Kill
мл. сержант
Сообщения: 83
Зарегистрирован: 2007-12-04 16:51:34

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение DJ Kill » 2007-12-07 12:21:45

_Dron_ писал(а):а

Код: Выделить всё

smbpasswd -W
делал?
Конечно.
Не добавляются только компьютеры. Остальное в самбе работает абсолютно нормально.
Причём в какой момент перестали добавлятся компы я не знаю. До этого всё работало отлично. Люди которые эту самбу держали говорят что ничего не меняли. :(

Аватара пользователя
Dron
ст. сержант
Сообщения: 373
Зарегистрирован: 2007-08-15 13:36:28
Откуда: Днепропетровск
Контактная информация:

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение Dron » 2007-12-07 12:29:47

ок
давай loglevel = 5
добавляй машину и смотри, что валить будет...
Та Да...

DJ Kill
мл. сержант
Сообщения: 83
Зарегистрирован: 2007-12-04 16:51:34

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение DJ Kill » 2007-12-07 15:29:42

Пока вижу только это:

Код: Выделить всё

[2007/12/07 15:25:54, 0] passdb/pdb_interface.c:pdb_default_create_user(329)
  _samr_create_user: Running the command `/usr/local/sbin/smbldap-useradd -w "geo-rmarina$"' gave 9
:(

Аватара пользователя
Dron
ст. сержант
Сообщения: 373
Зарегистрирован: 2007-08-15 13:36:28
Откуда: Днепропетровск
Контактная информация:

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение Dron » 2007-12-07 15:52:49

Код: Выделить всё

if ($rc and defined($dn)) {
    print "$0: user $userName exists\n";
    exit (9);
Собственно такая учетка уже есть в LDAP
Та Да...

zg
полковник
Сообщения: 5845
Зарегистрирован: 2007-12-07 13:51:33
Откуда: Верх-Нейвинск

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение zg » 2007-12-07 16:19:48

_Dron_ писал(а):

Код: Выделить всё

if ($rc and defined($dn)) {
    print "$0: user $userName exists\n";
    exit (9);
если это пхп, то defined проверяет "объявленность" константы, обычно юзают isset, которая проверяет "установленность" переменных... там должно быть точно defined?

Аватара пользователя
Dron
ст. сержант
Сообщения: 373
Зарегистрирован: 2007-08-15 13:36:28
Откуда: Днепропетровск
Контактная информация:

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение Dron » 2007-12-07 16:20:51

это не php :)
Та Да...

DJ Kill
мл. сержант
Сообщения: 83
Зарегистрирован: 2007-12-04 16:51:34

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение DJ Kill » 2007-12-07 16:53:08

Хм. Очень мне не нравится вот это:

Код: Выделить всё

ldapsearch -LLL -x -b 'dc=gtss,dc=ru' 'ou=domains,dc=gtss,dc=ru'
ldap_initialize( <DEFAULT> )
filter: ou=domains,dc=gtss,dc=ru
requesting: All userApplication attributes
И тишина... Не находит ничего. :(

И вот это:

Код: Выделить всё

 net getlocalsid
[2007/12/07 16:52:58, 0] lib/smbldap_util.c:smbldap_search_domain_info(304)
  smbldap_search_domain_info: Got too many (2) domain info entries for domain GTSS
[2007/12/07 16:52:58, 0] utils/net.c:net_getlocalsid(622)
  Can't fetch domain SID for name: GEO-SAMBA
Причём когда через LAM смотришь то всё есть и в единственном экземпляре. Если удалить в LAM, то net getlocalsid выдаёт корректную информацию, но LAM добавляет пользователей некорректно. :(

Где это ещё может быть зарыто кроме как в дереве LDAP? Почему запись дублируется, хотя в LDAP она одна?

DJ Kill
мл. сержант
Сообщения: 83
Зарегистрирован: 2007-12-04 16:51:34

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение DJ Kill » 2007-12-07 18:45:38

Фишку net getlocalsid пофиксил.

Осталась только одна ерунда (которая лечится добавлением вручную параметров через LAM):

Код: Выделить всё

[2007/12/07 18:32:58, 3] passdb/pdb_interface.c:pdb_default_create_user(329)
  _samr_create_user: Running the command `/usr/local/sbin/smbldap-useradd -w "geo-rmarina$"' gave 0
[2007/12/07 18:32:58, 3] passdb/pdb_interface.c:pdb_default_create_user(354)
  pdb_default_create_user: failed to create a new user structure: NT_STATUS_NO_SUCH_USER
Компьютер в домене создаётся. Но Samba3 параметров у него нет. :(

В логе самбы полезного ничего не нашёл. :(
Последний раз редактировалось DJ Kill 2007-12-07 18:58:07, всего редактировалось 1 раз.

fr33man
сержант
Сообщения: 218
Зарегистрирован: 2006-09-04 17:41:27
Откуда: Москва
Контактная информация:

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение fr33man » 2007-12-07 18:53:57

А если использовать ldapscripts? У меня с ними все ок. )
WBR Озеров Василий aka fr33man

DJ Kill
мл. сержант
Сообщения: 83
Зарегистрирован: 2007-12-04 16:51:34

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение DJ Kill » 2007-12-07 19:01:09

Поднимал как раз по Вашей статье это в первый раз. Но, почему-то, решил через smbldap-tools.

Причём оно работало (и на двух других домен-контроллерах работает до сих пор).

Хочется так и оставить.

Кстати, если на них переходить - LAM это нормально обрабатывает?

Аватара пользователя
Dron
ст. сержант
Сообщения: 373
Зарегистрирован: 2007-08-15 13:36:28
Откуда: Днепропетровск
Контактная информация:

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение Dron » 2007-12-07 19:15:41

включай debug запросов LDAP и смотри что пишет скрипт и чт опытается прочитать самба и в итоге не находит...
Та Да...

DJ Kill
мл. сержант
Сообщения: 83
Зарегистрирован: 2007-12-04 16:51:34

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение DJ Kill » 2007-12-07 19:22:10

Что не находит скрипт я и так понимаю. :) Samba3 параметры.

Не понятно почему они не создаются. :(

DJ Kill
мл. сержант
Сообщения: 83
Зарегистрирован: 2007-12-04 16:51:34

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение DJ Kill » 2007-12-07 20:09:26

Решение таки нашлось.

в /etc/ldap.conf надо было поменять

Код: Выделить всё

nss_base_shadow         ou=users,dc=gtss,dc=ru?one
nss_base_passwd         ou=users,dc=gtss,dc=ru?one
nss_base_group          ou=groups,dc=gtss,dc=ru?one
на

Код: Выделить всё

nss_base_shadow         dc=gtss,dc=ru?sub
nss_base_passwd         dc=gtss,dc=ru?sub
nss_base_group          ou=groups,dc=gtss,dc=ru?one
Вот теперь бы заставить это логинится в систему доменными пользователями и будет счастье. :)

Аватара пользователя
Dron
ст. сержант
Сообщения: 373
Зарегистрирован: 2007-08-15 13:36:28
Откуда: Днепропетровск
Контактная информация:

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение Dron » 2007-12-09 19:30:26

Прикольно, а ты писал
Остальное в самбе работает абсолютно нормально.
соответственно я решил что с юзерами проблем нет и не подумал об nss_ldap

А какие проблемы с пользователями?
Вгоняешь машину в домен и логонишься доменным юзером... делов-то :)
Та Да...

DJ Kill
мл. сержант
Сообщения: 83
Зарегистрирован: 2007-12-04 16:51:34

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение DJ Kill » 2007-12-09 20:34:21

_Dron_ писал(а):соответственно я решил что с юзерами проблем нет и не подумал об nss_ldap
nss_ldap вроде работает. То есть is user информацию выдаёт. И работал всегда.
Ну, собственно, это понятно. Ибо он машину искал в ou=users и не находил её, а пользователей находил всегда. Я ступил просто.
А какие проблемы с пользователями?
Пользователь из LDAP не может войти на машину по SSH, допустим.
Хотя, как сказано выше, система о нём знает. :)

В логах: invalid credentials. В логах самого LDAP никаких явных ошибок не вижу. :(

Аватара пользователя
Dron
ст. сержант
Сообщения: 373
Зарегистрирован: 2007-08-15 13:36:28
Откуда: Днепропетровск
Контактная информация:

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение Dron » 2007-12-10 11:04:18

А...
Так чтобы локально пользователей пускало, авторизуя их через LDAP, надо добавить к этой связке pam_ldap ;)
Та Да...

DJ Kill
мл. сержант
Сообщения: 83
Зарегистрирован: 2007-12-04 16:51:34

Re: smbldap-tools и Samba PDC

Непрочитанное сообщение DJ Kill » 2007-12-10 12:07:18

_Dron_ писал(а):А...
Так чтобы локально пользователей пускало, авторизуя их через LDAP, надо добавить к этой связке pam_ldap ;)
Я знаю. Он у меня стоит. И даже как-то (по статье на этом сайте) настроен. Но не работает.