Домен/Windows: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
Нет описания правки
Строка 1: Строка 1:
{{Stub}}
{{Stub}}


Использование домена для аутентификации компьютеров с Windows. Предполагается, что [[Домен|домен ALT Linux]] создан должным образом и работает.
Использование домена для аутентификации компьютеров с Windows.
 
<div style="border: 1px solid red;padding: 5px">
'''Внимание!''' Данная инструкция позволяет настроить Samba в качестве NT Domain для аутентификации Windows XP. Использование Samba в качестве замены Active Direcory возможно после появления стабильной версии Samba 4.</div>
 
Предполагается, что [[Домен|домен ALT Linux]] создан должным образом и работает.
 
= Настройка сервера =
 
1. В секции {{term|[global]}} файла {{path|/etc/samba/smb.conf}} добавьте:
<source lang="ini">
workgroup = SCHOOL-5
local master = yes
preferred master = yes
domain master = yes
domain logons = yes
add machine script = /usr/sbin/ldap-useradd -w -i "%u"
ldap machine suffix = ou=Computers
encrypt passwords = yes</source>
 
2. Перезапустите службу smb и запустите службу nmb:
service smb restart
service nmb start
 
Службу nmb можно добавить в автоматический запуск:
chkconfig nmb on
 
3. Обновите ''ldap-user-tools'' до версии 0.8.0 или более позднее.


= Создание групп и выдача административных привилегий =
= Создание групп и выдача административных привилегий =
Строка 59: Строка 86:
  Joined domain SCHOOL-5.
  Joined domain SCHOOL-5.


Всё в порядке, можно вводить компьютеры с Winsows в наш домен.
Всё в порядке, можно вводить компьютеры с Windows в наш домен.


= Права доступа =
= Права доступа =
Строка 70: Строка 97:
Список входящих в эту группу:
Список входящих в эту группу:
  # net sam listmem 'Domain Users'
  # net sam listmem 'Domain Users'
= Ввод компьютера с Windows в домен =
{{todo|Сделать инструкцию со снимками экрана}}


= Решение проблем =
= Решение проблем =
Строка 92: Строка 123:
* [http://forum.altlinux.org/index.php/topic,3747.0.html Обсуждение ввода машин с Windows в домен ALT Linux]
* [http://forum.altlinux.org/index.php/topic,3747.0.html Обсуждение ввода машин с Windows в домен ALT Linux]
* [http://www.opennet.ru/base/net/samba_pdc_slackware.txt.html SAMBA PDC - установка, настройка, управление (Slackware)]
* [http://www.opennet.ru/base/net/samba_pdc_slackware.txt.html SAMBA PDC - установка, настройка, управление (Slackware)]


{{todo|# Разобрать и автоматизировать заведение дополнительных параметров Samba
{{todo|# Разобрать и автоматизировать заведение дополнительных параметров Samba
# Доработать ldap-useradd -w -i
# <s>Доработать ldap-useradd -w -i</s>
# Убрать создаваемые компьютеры в alterator-ldap-users
# <s>Убрать создаваемые компьютеры в alterator-ldap-users</s>
# Убрать создаваемые группы в alterator-ldap-users и alterator-ldap-groups
# Сделать скрипт по первичному заведению администраторов и групп
# Сделать скрипт по первичному заведению администраторов и групп
# Проверить на ввод компьютеры с Windows 7 и Windows 8
# Проверить на ввод компьютеры с Windows 7 и Windows 8

Версия от 14:55, 22 октября 2012

Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.


Использование домена для аутентификации компьютеров с Windows.

Внимание! Данная инструкция позволяет настроить Samba в качестве NT Domain для аутентификации Windows XP. Использование Samba в качестве замены Active Direcory возможно после появления стабильной версии Samba 4.

Предполагается, что домен ALT Linux создан должным образом и работает.

Настройка сервера

1. В секции [global] файла /etc/samba/smb.conf добавьте:

workgroup = SCHOOL-5
local master = yes
preferred master = yes
domain master = yes
domain logons = yes
add machine script = /usr/sbin/ldap-useradd -w -i "%u"
ldap machine suffix = ou=Computers
encrypt passwords = yes

2. Перезапустите службу smb и запустите службу nmb:

service smb restart
service nmb start

Службу nmb можно добавить в автоматический запуск:

chkconfig nmb on

3. Обновите ldap-user-tools до версии 0.8.0 или более позднее.

Создание групп и выдача административных привилегий

1. Сначала нужно назначить пользователя-администратора. Для прав на выдачу привилегий у него должен быть uid равный 0. Тогда он может назначать привилегии через net rpc rights. Заведите временно пользователя в LDAP (например, admin), задайте ему пароль и поменяйте uidNumber так:

echo "uidNumber:0" | ldap-usermod replace admin

2. В LDAP создайте группы через веб-интерфейс или из командной строки:

ldap-groupadd Admins
ldap-groupadd Users
ldap-groupadd Guests
ldap-groupadd Computers

Эти группы понадобятся для привязки к группам домена согласно таблице:

Группа LDAP Группа Windows Идентификатор в Windows
Admins Domain Admins 512
Users Domain Users 513
Guests Domain Guests 514
Computers Domain Computers 515

Добавьте туда пользователей через веб-интерфейс или из командной строки:

echo 'memberUid:cas' | ldap-groupmod add Admins

3. Привяжите группы LDAP к группам домена

net groupmap add rid=512 ntgroup="Domain Admins" unixgroup=Admins
net groupmap add rid=513 ntgroup="Domain Users" unixgroup=Users
net groupmap add rid=514 ntgroup="Domain Guests" unixgroup=Guests
net groupmap add rid=515 ntgroup="Domain Computers" unixgroup=Computers

Проверка:

# net rpc group members 'Domain Admins' -Uadmin%12345
SCHOOL-5\cas

Примечание: Обратите внимание, пароль можно указывать у имени пользоватeля через «%».

4. Выдайте привилегии для группы Domain Admins:

net rpc rights grant "Domain Admins" SeMachineAccountPrivilege SePrintOperatorPrivilege \
SeAddUsersPrivilege SeDiskOperatorPrivilege SeRemoteShutdownPrivilege -Uadmin%12345

Проверка (просмотр всех привилегий по группам):

net rpc rights list accounts -Uadmin

Примечание: обратите внимание, что для заведения компьютера в домен нужно входить в группу с привилегией SeMachineAccountPrivilege.

5. Чтобы не было коллизий с системным пользователем root, после операции по назначению группы и привилегий этого пользователя нужно удалить или поменять его UID на другой.

6. Проверяем вход в домен администратора cas:

# net join -Ucas%123
Joined domain SCHOOL-5.

Всё в порядке, можно вводить компьютеры с Windows в наш домен.

Права доступа

По умолчанию разрешено входить всех доступным пользователям. Посмотреть их список на сервере можно командой:

# net sam list users

Для пользователей, входящих в группу Domain Users (или группу Users в LDAP) имеется доступ на диск Z: (домашняя папка пользователя на сервере с создаваемым подкаталогом profile).

Список входящих в эту группу:

# net sam listmem 'Domain Users'

Ввод компьютера с Windows в домен

TODO:
Сделать инструкцию со снимками экрана


Решение проблем

Если что-то пошло не так...

Если в результате экспериментов сломались привилегии или что-нибудь ещё, нужно очистить внутренние базы Samba. Выполните

rm -f /var/lib/samba/*.tdb
service smb restart

Смена имени сервера Samba

Так как при создании нового пользователя в домене для него прописывается SID, при смене имени сервера серверная часть SID меняется и пользователи со старыми SID уже недоступны, показывается примерно такое

# pdbedit -L
sid S-1-5-21-694984405-1863599809-1435972588-11002 does not belong to our domain

При этом новые пользователи заводятся уже с правильным SID. Для исправления ситуации со старыми пользователями нужно выполнить следующий скрипт:

nsid=$(net getlocalsid | cut -f2 -d: | tr -d ' ')
ldap-getent passwd \* uid SambaSID | sed 's/:.*-/ /' | while read u id;do echo "SambaSID:$nsid-$id" | ldap-usermod replace "$u";done

После этого команда

pdbedit -L

должна показать имена всех пользователей.

Литература


TODO:
  1. Разобрать и автоматизировать заведение дополнительных параметров Samba
  2. Доработать ldap-useradd -w -i
  3. Убрать создаваемые компьютеры в alterator-ldap-users
  4. Убрать создаваемые группы в alterator-ldap-users и alterator-ldap-groups
  5. Сделать скрипт по первичному заведению администраторов и групп
  6. Проверить на ввод компьютеры с Windows 7 и Windows 8
  7. Документировать изменения