LINUX.ORG.RU
решено ФорумAdmin

Samba PDC - Как сделать членов определённой unix-группы локальными администраторами всех машин домена?


0

0

Самба хранит всё в LDAP'е, там же системные пользователи и группы. Есть группа smb-builtin-admins, в которую входят пользователи, которым я хочу дать права администраторов на всех машинах, входящих в домен. Насколько я понял (см. таблицу), для этого нужно сопоставить эту группу виндовой группе «Builtin Admins» (RID == 544). Но это никак не получается:

# net groupmap add unixgroup=smb-builtin-admins ntgroup="Builtin Admins" rid=544 type=domain
adding entry for group Builtin Admins failed!
Что означает поле type я так и не понял, но перепробовал все варианты (domain, local, builtin) - результат один. Причём эту группу я могу замапить на любую NT-группу с RID <= 520, например:
# net groupmap add unixgroup=smb-builtin-admins ntgroup="Domain Schema Admins" rid=518 type=domain
Successfully added group Domain Schema Admins to the mapping db as a domain group

# net groupmap list
Domain Admins (S-1-5-21-4021166249-3650273621-3840635728-512) -> smb-domain-admins
Domain Computers (S-1-5-21-4021166249-3650273621-3840635728-515) -> smb-domain-computers
Domain Users (S-1-5-21-4021166249-3650273621-3840635728-513) -> smb-domain-users
Domain Guests (S-1-5-21-4021166249-3650273621-3840635728-514) -> smb-domain-guests
Domain Schema Admins (S-1-5-21-4021166249-3650273621-3840635728-518) -> smb-builtin-admins
Как видно, так всё работает. В чём проблема? Подохреваю, что я что-то недопонимаю в работе самбы и виндового домена.

Пользователи группы smb-domain-admins (NT «Domain Admins», RID == 512) тоже являются локальными администраторами на машинах домена, но они также являются и администраторами домена, что мне не подходит. Нужны только права администратора на машинах.

Вот конфиг самбы, если это важно:

[global]
	# Main settings
	netbios name = Server
	workgroup = CALOCAL
	server string =

	interfaces = lo, brlan
	bind interfaces only = Yes

	socket options = IPTOS_LOWDELAY TCP_NODELAY

	wins support = Yes
	dns proxy = No

	time server = Yes

	domain logons = Yes
	preferred master = Yes

	utmp = Yes

	logon home =
	logon path =
	template homedir =

	logon script = logon.bat

	load printers = No

	passdb backend = ldapsam:ldapi://%2fvar%2frun%2fopenldap%2fslapd.sock
	ldap admin dn = cn=ldapadmin,dc=calocal
	ldap suffix = dc=calocal
	ldap user suffix = ou=Users
	ldap group suffix = ou=Groups
	ldap machine suffix = ou=Machines
	ldap idmap suffix = ou=Idmaps
	ldap passwd sync = Only

	add machine script = /usr/sbin/ldapaddmachine '%u' smb-domain-computers
	add user script = /usr/sbin/ldapadduser '%u' smb-domain-users
	add group script = /usr/sbin/ldapaddgroup '%g'
	add user to group script = /usr/sbin/ldapaddusertogroup '%u' '%g'
	delete user script = /usr/sbin/ldapdeleteuser '%u'
	delete group script = /usr/sbin/ldapdeletegroup '%g'
	delete user from group script = /usr/sbin/ldapdeleteuserfromgroup '%u' '%g'
	set primary group script = /usr/sbin/ldapsetprimarygroup '%u' '%g'
	rename user script = /usr/sbin/ldaprenameuser '%uold' '%unew'

	# Global share settings
	write list = @smbadmin @ftpadmin

[netlogon]
	path = /home/ftp/netlogon
	
	browseable = No
	read only = Yes

[pub]
	path = /home/ftp/pub

	browseable = Yes
	read only = Yes

Прошу помощи.

Deleted

Вообще, сопоставление с таблицей как бы говорит нам, что buildin группы map'ить и modify'ить нельзя.

zgen ★★★★★
()

Поэтому, используя гугл (Люк знает, что это такое?) находим https://bugzilla.samba.org/attachment.cgi?id=3369&action=view, где видим, что если создать группу в LDAP с соотв. SSID'ом grouptype'ом, а в нее добавить нужных пользователей - то все должно прокатить

Группу по-правильному должон создать smbldap-populate. (по крайней мере посмотреть, что он делает - стоит).

zgen ★★★★★
()
Ответ на: комментарий от zgen

В общем, сам уже разобрался. Ошибка при добавлении привязки UNIX-группы к NT-группе появлялась из-за того, что у меня в LDAP'е после вчерашних экспериментов остался кое-какой мусор. После его удаление - привязка добавилась нормально.

Но задачу (см. $TOPIC) это не решило. Оказывается Builtin-группы работают не так как я ожидал. На самом деле - это те же самые группы, которые находятся локально на машинах, но локальные для машины с самбой. Использовать их есть смысл только когда самба является не контроллером домена, а входит в домен, контроллером которого является сервер с виндоусом.

В моём случае эффект от добавления пользователей в группу smb-builtin-admins получался прямо противоположный нужному: пользователи получали права администратора контроллера домена (т.е. могли добавлять и удалять машины в домен, а так же удалённо рулить самбой), но не получали права администратора на машинах в домене, в отличие от группы «Domain Admins».

На опеннете есть тема о похожей проблеме: http://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi?az=printer_format&om=1880&forum=vsluhforumID14. Там же возможное решение (не совсем так как хотелось бы, но хоть что-то).

Deleted
()
Ответ на: комментарий от Deleted

В моём случае эффект от добавления пользователей в группу smb-builtin-admins получался прямо противоположный нужному: пользователи получали права администратора контроллера домена (т.е. могли добавлять и удалять машины в домен, а так же удалённо рулить самбой), но не получали права администратора на машинах в домене, в отличие от группы «Domain Admins».

Сейчас выяснилось, что это тоже был мой косяк =). Я во время экспериментов я дал группе smb-builtin-admins право SeMachineAccountPrivilege. После

# net -U mironov_ia rpc rights revoke smb-builtin-admins SeMachineAccountPrivilege
Password:
Successfully revoked rights.
членство в группе вообще перестало что-либо давать, как и должно быть.

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.