Поднял PDC на samba+ldap на linux. Делал все по официальному how-to. Остался непонятным вопрос: Вот собственно подключаю я тачку winxp в домен, логинюсь под root из ldap (пользователь с uid=0), все тачка в домене. Перегружаюсь вхожу под root, и получаю привилегии уровня пользователя или даже гостя а не администратора компьютера!!! вот собственно это и есть загвоздка!!!
Xотя в локальной группе Администраторы присутствует группа Domain Admins, а в Пользователи - Domain Users. При этом если смотреть на getenv group и getenv passwd, на PDC, то все кажется нормальным:
(примечание то что у рута из ldap группа не 0 а 512 так счас правильно делать!)
root:x:0:512:Netbios Domain Administrator:/root:/bin/bash
nobody:x:999:514:nobody:/dev/null:/bin/false
max:x:1000:513:System User:/home/max:/bin/bash
pdc$:*:1001:515:Computer:/dev/null:/bin/false
ivan-winxp-vm1$:*:1002:515:Computer:/dev/null:/bin/false
Domain Admins:*:512:root
Domain Users:*:513:max
Domain Guests:*:514:
Domain Computers:*:515:
Administrators:*:544:
Account Operators:*:548:
Print Operators:*:550:
Backup Operators:*:551:
Replicators:*:552:
[root@pdc profiles]# net rpc rights list accounts -Uroot%XXXXXX
BUILTIN\Print Operators
No privileges assignedBUILTIN\Account Operators
No privileges assignedBUILTIN\Backup Operators
No privileges assignedBIT\max
No privileges assignedBUILTIN\Server Operators
No privileges assignedBIT\Domain Admins
No privileges assignedBUILTIN\Administrators
SeMachineAccountPrivilege
SeTakeOwnershipPrivilege
SeBackupPrivilege
SeRestorePrivilege
SeRemoteShutdownPrivilege
SePrintOperatorPrivilege
SeAddUsersPrivilege
SeDiskOperatorPrivilegeEveryone
No privileges assigned
[root@pdc profiles]# net groupmap list
Domain Admins (S-1-5-21-2041454016-2207556900-4205629940-512) -> Domain Admins
Domain Users (S-1-5-21-2041454016-2207556900-4205629940-513) -> Domain Users
Domain Guests (S-1-5-21-2041454016-2207556900-4205629940-514) -> Domain Guests
Domain Computers (S-1-5-21-2041454016-2207556900-4205629940-515) -> Domain Computers
Administrators (S-1-5-32-544) -> Administrators
Account Operators (S-1-5-32-548) -> Account Operators
Print Operators (S-1-5-32-550) -> Print Operators
Backup Operators (S-1-5-32-551) -> Backup Operators
Replicators (S-1-5-32-552) -> Replicators
Users (S-1-5-32-545) -> 10000
[root@pdc profiles]# pdbedit -Lv -uroot
WARNING: The "printer admin" option is deprecated
Unix username: root
NT username: root
Account Flags: [U ]
User SID: S-1-5-21-2041454016-2207556900-4205629940-500
Primary Group SID: S-1-5-21-2041454016-2207556900-4205629940-513
Full Name: root
Home Directory: \\PDC\root
HomeDir Drive: H:
Logon Script: scripts\logon.bat
Profile Path: \\PDC\profiles\root
Domain: BIT
Account desc:
Workstations:
Munged dial:
Logon time: 0
Logoff time: never
Kickoff time: never
Password last set: Sun, 04 Oct 2009 15:59:36 MSD
Password can change: Sun, 04 Oct 2009 15:59:36 MSD
Password must change: never
Last bad password : 0
Bad password count : 0
Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFПри чем если в локальную группу Администраторы прописать вручную BIT\root, то зайдя под ним работаешь как админ, не понятно почему группа BIT\Domain Admins не работает :(, когда как root находится в ней.
Конфиги samba приводит не буду там все стандартно.samba - 3.0.33-3.7.el5_3.1
ldap - 2.3.43
smbldap-tools 0.9.5
nss_ldap-17.el5система centos 5.2 2.6.18-92.el5
>Поднял PDC на samba+ldap на linux. Делал все по официальному how-to. Остался
>непонятным вопрос: Вот собственно подключаю я тачку winxp в домен,
>логинюсь под root из ldap (пользователь с uid=0), все тачка в
>домене. Перегружаюсь вхожу под root, и получаю привилегии уровня пользователя или
>даже гостя а не администратора компьютера!!! вот собственно это и есть
>загвоздка!!!1. Какая аутентификация для root - в ldap, unix или еще что.
2. Что значит, не получаете прав рута, что конкретно Вы не можето сделать как рут?
3. Вообще вся иерархия самбовых групп нужна для сетевого доступа по самбе. Зачем менять группу локального рута, не понимаю, равно как и вводить лдапного, разве что для путаницы. Пусть рут и остается (0:0) и аутефинцируется на локальном компе. Если хотите права по сети, создайте в лдапе какого-нибудь winadmin и пропишите во все нужные группы.
А можно ли в самбе в группу включать другие группы, как Вы делаете - не знаю, ведь могут с маппингом быть проблемы, в юниксе такого чуда нет.>Xотя в локальной группе Администраторы присутствует группа Domain Admins, а в Пользователи
>- Domain Users. При этом если смотреть на getenv group и
>getenv passwd, на PDC, то все кажется нормальным:
>
>(примечание то что у рута из ldap группа не 0 а 512
>так счас правильно делать!)
Добавить привелигии группе Domain Admins
smb.conf
[global]
enable priveleges = yes
> Добавить привелигии группе Domain Admins
> smb.conf
> [global]
> enable priveleges = yesВот вроде все стоит:
[global]
unix charset = LOCALE
workgroup = BIT
netbios name = PDC
interfaces = eth0, lo
bind interfaces only = Yes
passdb backend = ldapsam:ldap://localhost
enable privileges = Yes
username map = /etc/samba/smbusers
log level = 1
syslog = 0
log file = /var/log/samba/%m
max log size = 50
smb ports = 139
name resolve order = wins bcast hosts
time server = Yes
printcap name = CUPS
show add printer wizard = No
add user script = /usr/sbin/smbldap-useradd -m "%u"
delete user script = /usr/sbin/smbldap-userdel "%u"
add group script = /usr/sbin/smbldap-groupadd -p "%g"
delete group script = /usr/sbin/smbldap-groupdel "%g"
add user to group script = /usr/sbin/smbldap-groupmod -m "%u" "%g"
delete user from group script = /usr/sbin/smbldap-groupmod -x "%u" "%g"
set primary group script = /usr/sbin/smbldap-usermod -g "%g" "%u"
add machine script = /usr/sbin/smbldap-useradd -w "%u"logon script = scripts\logon.bat
logon path = \\%L\profiles\%U
logon drive = X:
domain logons = Yes
preferred master = Yes
wins support = Yes
ldap suffix = dc=pdc,dc=bit
ldap machine suffix = ou=Computers
ldap user suffix = ou=Users
ldap group suffix = ou=Groups
ldap idmap suffix = ou=Idmap
ldap admin dn = cn=Manager,dc=pdc,dc=bit
idmap backend = ldap:ldap://localhost
idmap uid = 10000-20000
idmap gid = 10000-20000
map acl inherit = Yes
printing = cups
printer admin = root[pidata]
comment = Property Insurance Files
path = /data/pidata
read only = No
[homes]
comment = Home Directories
valid users = %S
read only = No
browseable = No
[printers]
comment = SMB Print Spool
path = /var/spool/samba
guest ok = Yes
printable = Yes
browseable = No
[netlogon]
comment = Network Logon Service
path = /var/cache/samba/netlogon
guest ok = Yes
locking = No
browseable = No
[profiles]
comment = Profile Share
path = /var/cache/samba/profiles
read only = No
profile acls = Yes
[profdata]
comment = Profile Data Share
path = /var/cache/samba/profdata
read only = No
profile acls = Yes
[print$]
comment = Printer Drivers
path = /var/cache/samba/drivers
browseable = No
guest ok = No
read only = yes
write list = rootЯ имею ввиду то, что член группы администраторов домена не имеет административных прав на windows машине, включенной в домен! Административные права появляются только после того как добавить вручную (под локальным администратором) пользователя "BIT\root" в группу Администраторы локальной машины windows.
Присоединяюсь. Проблема аналогичная. Debian 5
рад что хоть не один такой, но что-то я пришел к выводу, что так и должно быть (по теме).
>рад что хоть не один такой, но что-то я пришел к выводу,
>что так и должно быть (по теме).Сомневаюсь. У меня был PDC на openSUSE. Подобной проблемы не было. Я вот тут нарыл в шаблонах безопасности в ХР, что после ввода машины в домен в "Группы с ограниченным доступом" попали администраторы и администраторы домена. Каким боком только...
>>рад что хоть не один такой, но что-то я пришел к выводу,
>>что так и должно быть (по теме).
>
>Сомневаюсь. У меня был PDC на openSUSE. Подобной проблемы не было. Я
>вот тут нарыл в шаблонах безопасности в ХР, что после ввода
>машины в домен в "Группы с ограниченным доступом" попали администраторы
>и администраторы домена. Каким боком только...вот там я как раз не смотрел, а просто глянул в локальные группы. С виду кстати все нормально:
Администраторы <-- Domain Admins
Пользователи <-- Domain Usersно права у всех пользовательские или даже гостевые!
У меня подозрение что какае-то новая фича появилась в samba и она почти не где не объясняется, Хотя я ставил по официальному how-to от той версии которую юзал.ЭЙ SAMBA-ГУРУ где вы?
и кстати idmap - реально для чего нужен?
а то чет в openldap каталоге только одна запись
>но права у всех пользовательские или даже гостевые!
>У меня подозрение что какае-то новая фича появилась в samba и она
>почти не где не объясняется, Хотя я ставил по официальному how-to
>от той версии которую юзал.А очень даже возможно. В прошлый раз я поднимал на 3.0.30 и больше самбу не обновлял...
>>но права у всех пользовательские или даже гостевые!
>>У меня подозрение что какае-то новая фича появилась в samba и она
>>почти не где не объясняется, Хотя я ставил по официальному how-to
>>от той версии которую юзал.
>
>А очень даже возможно. В прошлый раз я поднимал на 3.0.30 и
>больше самбу не обновлял...я на 3.0.33 пробовал на centos и gentoo, результат идентичен:(
А мне кажется у вас root в Ldap'e и root в системе различные учетные записи...
> А мне кажется у вас root в Ldap'e и root в
>системе различные учетные записи...uid рута - 0 и в ldap и в passwd
к тому же функции администратора домена он может выполнять
>> А мне кажется у вас root в Ldap'e и root в
>>системе различные учетные записи...
>
>uid рута - 0 и в ldap и в passwd
>к тому же функции администратора домена он может выполнятьУ вас самба идет напрямую к LDAP, а в базе Ldap'а первичная группа у рута Domain Users, а не Domain Admins, попробуйте дать id root, getenv passwd, getenv group и посмотреть что они дадут...
>>> А мне кажется у вас root в Ldap'e и root в
>>>системе различные учетные записи...
>>
>>uid рута - 0 и в ldap и в passwd
>>к тому же функции администратора домена он может выполнять
>
> У вас самба идет напрямую к LDAP, а в базе Ldap'а
>первичная группа у рута Domain Users, а не Domain Admins, попробуйте
>дать id root, getenv passwd, getenv group и посмотреть что они
>дадут...getent passwd
root:x:0:512:Netbios Domain Administrator:/root:/bin/bash
nobody:x:999:514:nobody:/dev/null:/bin/false
max:x:1000:1004:System User:/home/max:/bin/bash
vlad:x:1004:1003:System User:/home/vlad:/bin/bash
pdc$:*:1001:515:Computer:/dev/null:/bin/false
ivan-winxp-vm1$:*:1002:515:Computer:/dev/null:/bin/false
getent group
Domain Admins:*:512:root
Domain Users:*:513:max,vlad
Domain Guests:*:514:
Domain Computers:*:515:
Administrators:*:544:
Account Operators:*:548:
Print Operators:*:550:
Backup Operators:*:551:
Replicators:*:552:
Highload_BIT:*:1001:
Weddev_BIT:*:1002:
Game_BIT:*:1003:vlad
Designer_BIT:*:1004:max
pdbedit -Lc root
[root@pdc ~]# pdbedit -Lv root
WARNING: The "printer admin" option is deprecated
Unix username: root
NT username: root
Account Flags: [U ]
User SID: S-1-5-21-2041454016-2207556900-4205629940-500
Primary Group SID: S-1-5-21-2041454016-2207556900-4205629940-513
Full Name: root
Home Directory: \\PDC\root
HomeDir Drive: H:
Logon Script: scripts\logon.bat
Profile Path: \\PDC\profiles\root
Domain: BIT
Account desc:
Workstations:
Munged dial:
Logon time: 0
Logoff time: never
Kickoff time: 0
Password last set: Sun, 04 Oct 2009 15:59:36 MSD
Password can change: Sun, 04 Oct 2009 15:59:36 MSD
Password must change: never
Last bad password : 0
Bad password count : 0
Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFPrimary Group SID: S-1-5-21-2041454016-2207556900-4205629940-513
это сид действительно не от Domain Admins, а Domain Users (я заметил это и раньше), но он собака не меняется!
-G SID|rid
This option can be used while adding or modifying a user account. It will specify the users´ new primary group SID (Security Identifier) or rid.Example: -G S-1-5-21-2447931902-1787058256-3961074038-1201
не рабоатет!!!
>[оверквотинг удален]
>-G SID|rid
> This
>option can be used while adding or modifying a user account.
>It will specify the users´ new primary group SID (Security Identifier)
>or rid.
>
> Example:
>-G S-1-5-21-2447931902-1787058256-3961074038-1201
>
>не рабоатет!!!Ну у меня, допустим, рут никогда административных привилегий и не имел. У него было ТОЛЬКО право вводить машины в домен. Я его и не трогаю =) Добавлял себя с правами админа - и все. А в этом случае, у меня никто из группы Domain Admins не имеет привилегий. Сейчас я тут с делами немного с утра разгребусь, выложу конфиги работающего ПДЦ на openSUSE, где проблема отстутствует. Может совместными усилиями быстрее разберемся...
>Primary Group SID: S-1-5-21-2041454016-2207556900-4205629940-513
>это сид действительно не от Domain Admins, а Domain Users (я заметил
>это и раньше), но он собака не меняется!а насчет сида - похоже на правду. с действующего ПДЦ:
server2003:/ # pdbedit -Lv root
Unix username: root
NT username: root
Account Flags: [U ]
User SID: S-1-5-21-3665451093-4203827586-2656080559-500
Primary Group SID: S-1-5-21-3665451093-4203827586-2656080559-513
Full Name: root
Home Directory: \\server2003\root
HomeDir Drive: H:
Logon Script: logon.bat
Profile Path: \\server2003\profiles\root
Domain: CULTURE
Account desc:
Workstations:
Munged dial:
Logon time: 0
Logoff time: never
Kickoff time: never
Password last set: Sat, 16 Feb 2008 17:19:12 MSK
Password can change: Sat, 16 Feb 2008 17:19:12 MSK
Password must change: never
Last bad password : 0
Bad password count : 0
Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFКак я и говорил, у рута у меня админских привилегий и не было
А вот это админ
server2003:/ # pdbedit -Lv ivan
Unix username: ivan
NT username: ivan
Account Flags: [UX ]
User SID: S-1-5-21-3665451093-4203827586-2656080559-21018
Primary Group SID: S-1-5-21-3665451093-4203827586-2656080559-512
Full Name: Назаров Иван Владимирович
Home Directory: \\server2003\ivan
HomeDir Drive: U:
Logon Script: logon.bat
Profile Path: \\server2003\profiles\ivan
Domain: CULTURE
Account desc:
Workstations:
Munged dial:
Logon time: 0
Logoff time: never
Kickoff time: Tue, 01 Jan 2030 00:00:00 MSK
Password last set: Mon, 09 Jun 2008 19:32:28 MSD
Password can change: Mon, 09 Jun 2008 19:32:28 MSD
Password must change: never
Last bad password : 0
Bad password count : 0
Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFА вот тут были и есть.
Интересно, а почему ж тогда в последний раз он так вольно с сидами обошелся...
тут конфиги с действующего
http://dump.ru/file/3583284
Я у себя решил проблему =) Вот в чем оказалась, как говорится, фича:
в smbldap.conf есть такая строчка
# Default User (POSIX and Samba) GID
defaultUserGid="513"т.е. если мы делаем 'smbldap-useradd -m "new_user"' он автоматом попадает в группу пользователей по дефолту, и не, как выяснилось, в какую группу его потом не влючай - толку нет. он юзер. Я попробовал создать пользователя с нуля при помощи Ldap Account Manager с включением его сразу в группу Domain Admins, и о чудо:
aliot:~# pdbedit -Lv test2
WARNING: The "write cache size" option is deprecated
smbldap_search_domain_info: Searching for:[(&(objectClass=sambaDomain)(sambaDomainName=ECRB))]
smbldap_open_connection: connection opened
ldap_connect_system: successful connection to the LDAP server
init_sam_from_ldap: Entry found for user: test2
init_group_from_ldap: Entry found for group: 512
init_group_from_ldap: Entry found for group: 512
Unix username: test2
NT username: test2
Account Flags: [UX ]
User SID: S-1-5-21-720366892-2946242136-2517375487-21062
Primary Group SID: S-1-5-21-720366892-2946242136-2517375487-512
Full Name: test two
Home Directory:
HomeDir Drive: U:
Logon Script:
Profile Path:
Domain: ECRB
Account desc:
Workstations:
Munged dial:
Logon time: 0
Logoff time: never
Kickoff time: never
Password last set: Thu, 15 Oct 2009 10:25:38 MSD
Password can change: Thu, 15 Oct 2009 10:25:38 MSD
Password must change: never
Last bad password : 0
Bad password count : 0
Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFТак что, как я понимаю, если юзеру нужны административные привилегии, добавлять его в список надо сразу с группой Domain Admins, а все остальные уже потом навешивать.
И что он получает локальные права админа windows?можешь где нибудь ldif выложить?
я чет раз попробовал, вроде получилось, потом удалил этого пользователя так же делаю и не получается.:(
>И что он получает локальные права админа windows?
>
>можешь где нибудь ldif выложить?
>
>я чет раз попробовал, вроде получилось, потом удалил этого пользователя так
>же делаю и не получается.:(Да, права локального админа получает. В понедельник выложу.
>>И что он получает локальные права админа windows?
>>
>>можешь где нибудь ldif выложить?
>>
>>я чет раз попробовал, вроде получилось, потом удалил этого пользователя так
>>же делаю и не получается.:(
>
>Да, права локального админа получает. В понедельник выложу.эй, забыл про меня :)
>>>И что он получает локальные права админа windows?
>>>
>>>можешь где нибудь ldif выложить?
>>>
>>>я чет раз попробовал, вроде получилось, потом удалил этого пользователя так
>>>же делаю и не получается.:(
>>
>>Да, права локального админа получает. В понедельник выложу.
>
>эй, забыл про меня :)Сорри, приболел слегка. Завтра в контору пойду - скину.