Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
serverguide-precise-ru.pdf
Скачиваний:
79
Добавлен:
03.05.2015
Размер:
1.86 Mб
Скачать

Сетевое окружение Windows

5. Samba в качестве контроллера домена

Несмотря на то, что Samba не может выступать в качестве первичного контроллера домена Active Directory, сервер может быть сконфигурирован как контроллер домена Windows NT4. Главным преимуществом этой конфигурации является возможность централизовать мандаты пользователей и компьютеров. Samba может хранить информацию о пользователе во множестве драйверов (бэкэндов).

5.1. Первичный контроллер домена

Этот раздел охватывает настройку Samba в качестве первичного контроллера домена с использованием встроенного драйвера smbpasswd.

1.Для начала установите Samba, а также libpam-smbpass для синхронизации бюджетов пользователей, введя в терминале:

sudo apt-get install samba libpam-smbpass

2.Затем настройте Samba, отредактировав файл /etc/samba/smb.conf. Режим security должен быть установлен в user, а строка workgroup должна соответствовать вашей организации:

workgroup = EXAMPLE

...

security = user

3.В закомментированной секции «Domains» добавьте или раскомментируйте следующее (последняя строка была разделена, чтобы соответствовать формату этого документа):

domain logons = yes

logon path = \\%N\%U\profile logon drive = H:

logon home = \\%N\%U logon script = logon.cmd

add machine script = sudo /usr/sbin/useradd -N -g machines -c Machine -d /var/lib/samba -s /bin/false %u

Если вы не хотите использовать Перемещаемые профили, оставьте опции logon home и logon path закомментированными.

domain logons: предоставляет сервис netlogon, заставляющий Samba работать как контроллер домена.

333

Сетевое окружение Windows

logon path: указывает на расположение профиля пользователя Windows в его домашнем каталоге. Также возможна настройка секции [profiles] для хранения всех профилей в одном каталоге.

logon drive: определяет локальный путь к домашнему каталогу.

logon home: определяет расположение домашнего каталога.

logon script: определяет скрипт, который будет выполняться локально один раз при входе пользователя в систему. Скрипт должен быть расположен в секции [netlogon].

add machine script: скрипт, который автоматически будет создавать Machine Trust Account, без которого рабочая станция не может вступить в домен.

В этом примере группа machines должна быть создана с использованием утилиты addgroup. Детальнее расписано тут:

Раздел 1.2, «Добавление и удаление пользователей» [173].

4.Раскомментируйте секцию [homes], чтобы разрешить подключать logon home.

[homes]

comment = Home Directories browseable = no

read only = no create mask = 0700 directory mask = 0700 valid users = %S

5.Для настройки контроллера домена необходимо настроить секцию [netlogon]. Для того, чтобы определить ресурс, раскомментируйте:

[netlogon]

comment = Network Logon Service path = /srv/samba/netlogon guest ok = yes

read only = yes share modes = no

Оригинальный путь к ресурсу netlogon /home/samba/netlogon, но, согласно Стандарту иерархии файловой системы

(FHS), правильным местом расположения информации, предоставляемой системой для сайта, является /srv20.

6.Теперь создайте каталог netlogon и пустой (пока) файл скрипта logon.cmd:

20 http://www.pathname.com/fhs/pub/fhs-2.3.html#SRVDATAFORSERVICESPROVIDEDBYSYSTEM

334

Сетевое окружение Windows

sudo mkdir -p /srv/samba/netlogon

sudo touch /srv/samba/netlogon/logon.cmd

Вы можете ввести любые скриптовые команды Windows в файле logon.cmd для настройки окружения клиента.

7.Перезапустим Samba, чтобы запустить контроллер нового домена:

sudo restart smbd sudo restart nmbd

8.Наконец, есть несколько дополнительных команд, необходимых для настройки соответствующих прав.

Поскольку пользователь root по умолчанию отключен, для вступления в домен системная группа должна быть отражена на группу Domain Admins в Windows. Сделайте это с помощью утилиты Domain Admins, введя в терминале:

sudo net groupmap add ntgroup="Domain Admins" unixgroup=sysadmin rid=512 type=d

Измените sysadmin на любую группу, которую вы предпочитаете. Кроме того, пользователь, который будет добавлять компьютер в домен, должен быть членом группы sysadmin и членом системной группы admin. Группа admin позволяет использовать sudo.

Если пользователь всё ещё не имеет полномочий Samba, вы можете добавить их с помощью утилиты smbpasswd, изменяя, соответственно, имя пользователя sysadmin:

sudo smbpasswd -a sysadmin

Также исключительные права должны быть предоставлены группе

Domain Admins для того, чтобы работал сценарий add machine script

(и другие функции администрирования). Это может быть достигнуто выполнением:

net rpc rights grant -U sysadmin "EXAMPLE\Domain Admins" SeMachineAccountPrivilege \ SePrintOpe

9.Теперь вы можете добавить Windows-клиентов в домен так же, как добавляли их в домен NT4 под управлением сервера Windows.

335

Сетевое окружение Windows

5.2. Резервный контроллер домена

Наряду с первичным контроллером домена (PDC) полезно иметь и резервный контроллер (BDC). Это позволит клиентам проходить аутентификацию, даже если PDC недоступен.

При настройке Samba в качестве BDC вам нужен механизм синхронизации информации об учетных записях с PDC. Существует много способов решить эту проблему: scp, rsync или использование LDAP в качестве драйвера passdb.

Использование LDAP — это самый разумный способ синхронизации информации об учетных записях, поскольку оба контроллера домена могут использовать одну и ту же информацию в реальном времени. Однако, настройка сервера LDAP может быть более сложной для небольшого количества учетных записей пользователей и компьютеров. Для более подробной информации смотрите Раздел 2, «Samba и LDAP» [135].

1.Для начала установите samba и libpam-smbpass. Введите в терминале:

sudo apt-get install samba libpam-smbpass

2.Теперь отредактируйте файл /etc/samba/smb.conf и раскомментируйте нижеследующее в секции [global]:

workgroup = EXAMPLE

...

security = user

3.В закомментированной секции Domains раскомментируйте или добавьте:

domain logons = yes domain master = no

4.Убедитесь, что пользователь имеет права читать файлы в /var/lib/samba. Например, для того, чтобы разрешить пользователям в группе admin выполнять команду scp для файлов, введите:

sudo chgrp -R admin /var/lib/samba

5.Затем синхронизируйте учетные записи пользователей, используя scp, чтобы скопировать каталог /var/lib/samba с PDC:

sudo scp -r username@pdc:/var/lib/samba /var/lib

336

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]