Страница 1 из 1
Сопоставления идентификаторов SID UID
Добавлено: 2009-05-08 10:18:57
slonkv
Добрый день
Помогите решить проблему с назначением прав (ACL) в самбе. Сейчас работает winbind делает сопоставление SID (мелкософтного) с UID (freebsd) в файл /var/db/samba/winbindd_idmap.tdb записи имеют примерно такую
Код: Выделить всё
# net idmap dump /var/db/samba/winbindd_idmap.tdb
UID 10612 S-1-5-21-1783438889-225775317-794563710-4502
На другом файловом сервере (freebsd) уже другой UID для того же сида
Код: Выделить всё
# net idmap dump /var/db/samba/winbindd_idmap.tdb
UID 10345 S-1-5-21-1783438889-225775317-794563710-4502
Естественно копировать файлы с одного на другой с правами не получится, а хочется
Читал есть решение UID представлять в виде идентификаторов RID idmap_rid но работет если один домен.
Re: Сопоставления идентификаторов SID UID
Добавлено: 2009-05-08 13:34:21
D_CPU350
копировать через самбу;)
Re: Сопоставления идентификаторов SID UID
Добавлено: 2009-05-08 14:53:23
slonkv
D_CPU350 писал(а):копировать через самбу;)
ну скопировать можно и через третью виндовозную, а вот с синхронизацией (rsync) не слаживается из-за разных UID. Как можно вообще без них.
Re: Сопоставления идентификаторов SID UID
Добавлено: 2009-05-08 15:07:48
D_CPU350
Re: Сопоставления идентификаторов SID UID
Добавлено: 2009-05-08 15:24:38
slonkv
спасибо
пробую
но не пойму самой теории как он должен хранить эти UID вернее где и с какими правами на сервере win2003 (AD) Может в доп. поле у каждого пользователя тогда не убьет ли он мне все акаунты. И не прийдется ли их заводить с самбы.
Re: Сопоставления идентификаторов SID UID
Добавлено: 2009-05-08 15:29:42
D_CPU350
Я сам правда не настраивал, но думаю, что через ldap будет просто еще одно хранилище (не связанное с AD) со своей схемой и там все будет лежать. ИМХО
Re: Сопоставления идентификаторов SID UID
Добавлено: 2009-05-12 14:59:45
slonkv
Что то с этим Ldap совсем не получется. Так и не могу понять надо ли иметь права Enterprise Admins или нет ?
может у кого есть примеры конфигов ?
Re: Сопоставления идентификаторов SID UID
Добавлено: 2009-05-12 15:59:54
Dorlas
В текущих версиях Samba-серверов есть специальные параметры idmap, которые позволяют, используя компонент winbind, интегрировать Samba-сервер в AD. Всего методов интеграции 4 - т.е. столько видов Backend-ов можно использовать:
Winbind TDB (метод по умолчанию) - используется для интеграции в домены класса NT4.0 (PDC или BDC), а также в домены с AD (Windows 200x ADS). Настройка данного метода описана в большинстве примеров в Интернете и хорошо подходит в ситуации, когда Samba-сервер один. Проблему IDMAP между несколькими Samba-серверами он не решает.
IDMAP_RID - метод получения уникального Uid из SID - путем обрезания SID-а и суммирования его с определённым значением. Т.к. SID в пределах одного домена уникален, это решает проблему IDMAP в пределах одного домена и позволяет однозначно проецировать пользователей на любое число Samba-серверов. К сожалению, метод не уникален и не сработает, когда доменов несколько с различными доверительными отношениями (в этом случае SID-ы будут пересекаться и опять будет зоопарк.
IDMAP с хранилищем в LDAP - является более совершенным методом, но довольно труден в настройке + появляется еще один узел, который должен постоянно работать (помимо AD-controller).
IDMAP с backend-ом AD - является самым лучших вариантом использования Winbind - дает возможность использовать как сервера AD с поддержкой RFC2307 (это версия Windows 2003 R2), так и без поддержки RFC2307 (за счет установки пакета: MS_SFU - который расширяет схему AD и добавляет дополнительные поля для описания Uid/Gid/LoginShell/HomeDir) - именно этот метод и считается самым удачным

Re: Сопоставления идентификаторов SID UID
Добавлено: 2009-05-12 19:07:25
slonkv
Dorlas спасибо за подробное описание
Dorlas писал(а):
IDMAP с хранилищем в LDAP - является более совершенным методом, но довольно труден в настройке + появляется еще один узел, который должен постоянно работать (помимо AD-controller)
100%
Dorlas писал(а):
IDMAP с backend-ом AD - является самым лучших вариантом использования Winbind - дает возможность использовать как сервера AD с поддержкой RFC2307 (это версия Windows 2003 R2), так и без поддержки RFC2307 (за счет установки пакета: MS_SFU - который расширяет схему AD и добавляет дополнительные поля для описания Uid/Gid/LoginShell/HomeDir) - именно этот метод и считается самым удачным

буду пробывать. Можно еще теории ? А доп. поля заполняются как ? При запуске самбы, или при созданнии пользователей ? Надо делигировать права на доп. поля ? И возможно ли с доменном 2000 ?
Re: Сопоставления идентификаторов SID UID
Добавлено: 2009-05-12 19:25:34
Dorlas
буду пробывать. Можно еще теории ? А доп. поля заполняются как ? При запуске самбы, или при созданнии пользователей ? Надо делигировать права на доп. поля ? И возможно ли с доменном 2000 ?
После расширения схемы (двумя методами - установкой SFU или установкой доп-компонента в Windows 2003 R2), в настройках пользователей и компьютеров появляется дополнительная вкладка (Unix-атрибуты - примерно так).
В них можно каждому пользователю указать уникальный Uid/Gid, home dir, shell и gecos

Т.е. эти параметры вбиваешь через MMC-консоль, Users & Computers

Права на доп поля делегировать не нужно - AD это ведь тоже LDAP, поэтому просто добавляются атрибуты, доступные по чтению всем.
С 2000-м не пробовал - и думаю, что не получится - помоему нету SFU-пака для этой "очень устаревшей" операционки (кстати, MS_SFU качается с сайта MS - где то 200 Мб - но устанавливать от него нужно только компонент с NFS(или NIS - точно не помню) (там содержится пакет, расширяющий схему AD)). Еще учтите, что в MS схема может только расширяться (обратно нельзя)
http://technet.microsoft.com/en-us/inte ... 80242.aspx
А вообще в Вашей задачке можно и с помощью RID решить - один же домен.
Еще моменты - Samba собирайте с: LDAP, ADS, WINBIND, EXT_MODULES (последний обязательно). И после сборки /usr/libexec/locate.updatedb и ищите файлики: ad.so и rid.so

Сам в свое время накололся

Re: Сопоставления идентификаторов SID UID
Добавлено: 2009-05-12 21:03:43
slonkv
Dorlas писал(а):
А вообще в Вашей задачке можно и с помощью RID решить - один же домен.
домен один xxx.yyy.com
но надо дать права на пару папок пользователям из домена yyy.com. Может их группу доменна xxx.yyy.com запихнуть и тогда получать доступ ? не хочется давать права для other.
Dorlas писал(а):EXT_MODULES (последний обязательно). И после сборки /usr/libexec/locate.updatedb и ищите файлики: ad.so и rid.so

Сам в свое время накололся

отдельное спасибо за подводные камни.Собирал из портов наверно без этой галочки (завтра на работе посмотрю).