- Samba как контроллер домена
- Содержание
- Samba как контроллер домена
- Первичный контроллер домена
- Резервный контроллер домена
- Ссылки
- Операционные системы Astra Linux
- Samba сервер как домен windows
- Файловый сервер Samba в домене Windows
- Подготовка
- Установка Samba
- Настройка Samba
- Взаимодействие Samba с доменом Windows
- Дополнительно:
Samba как контроллер домена
Содержание
Samba как контроллер домена
Хотя он не может представлять из себя первичный контроллер домена (PDC) Active Directory, Samba сервер может быть настроен как контроллер домена Windows NT4. Основным преимуществом такой конфигурации является возможность централизовать учетные записи пользователей и машин. Кроме того Samba может использовать различные базы данных для хранения информации о пользователях.
Первичный контроллер домена
В этом разделе рассматривается настройка Samba в качестве первичного контроллера домена (PDC) с использованием smbpasswd в качестве хранилища данных.
1. Первым делом установим Samba и libpam-smbpass для синхронизации учетных записей пользователей, введя в терминале:
2. Далее настроим Samba редактированием /etc/samba/smb.conf. Режим безопасности следует установить user, а рабочую группу следует назвать в соответствии с именем вашей организации:
3. В закомментированной секции «Domains» добавьте или раскомментируйте следующее:
domain logons: заставляет сервис netlogon взаимодействовать с Samba как с контроллером домена.
logon path: помещает пользовательский профиль Windows в его домашний каталог. Также существует возможность настроить разделяемый ресурс [profiles], поместив все профили в один каталог.
logon drive: определяет локальный путь для домашнего каталога.
logon home: определяет местоположение домашнего каталога.
logon script: определяет сценарий, который должен быть выполнен один раз при входе пользователя. Сценарий должен быть помещен в разделяемый ресурс [netlogon].
add machine script: сценарий, который будет автоматически запущен при создании доверительной учетной записи машины при добавлении рабочей станции в домен.
В этом примере требуется создать группу machines с использованием утилиты addgroup. Подробности смотрите в разделе Добавление и удаление пользователей.
4. Раскомментируйте ресурс [homes] чтобы указать домашний каталог для входа:
5. При настройке Samba в качестве доменного контроллера требуется настроить ресурс [netlogon]. Для включения ресурса раскомментируйте:
6. Теперь создадим каталог netlogon и пустой (пока) файл сценария logon.cmd:
Вы можете ввести любые обычные команды сценария входа для Windows в logon.cmd чтобы настроить клиентское окружение.
7. Перезапустим Samba чтобы запустить контроллер нового домена:
8. Наконец существует немного дополнительных команд, требуемых для установки соответствующих прав.
С заблокированным по умолчанию суперпользователем (root), чтобы присоединить рабочую станцию к домену, системная группа должна отображаться на Windows группу Domain Admins. С использованием утилиты net в терминале введите:
Если пользователь пока не имеет учетных записей Samba, вы можете добавить их с помощью утилиты smbpasswd, заменив имя пользователя sysadmin на требуемое:
Также требуется явно предоставить права группе Domain Admins чтобы позволить выполнять сценарий добавления машин (и других административных функций). Это может быть достигнуто выполнением команды:
Теперь вы имеете возможность присоединять клиентов Windows к домену таким же образом, как присоединяли их к NT4 домену на Windows сервере.
Резервный контроллер домена
При наличии первичного контроллера домена (PDC) в сети лучше всего иметь также и резервный контроллер домена (BDC). Это позволяет авторизоваться клиентам когда PDC становится недоступен.
Когда вы настраиваете Samba в качестве BDC, вам требуется выбрать способ синхронизации учетных записей с PDC. Существует несколько вариантов достижения этого с помощью scp, rsync или использования LDAP в качестве базы passdb.
1. Сначала установим samba и libpam-smbpass. Введите в терминале:
2. Теперь отредактируем /etc/samba/smb.conf и снимем комментарий со следующих записей секции [global]:
3.В закомментированной секции Domains снимите комментарии или добавьте записи:
4. Убедитесь, что пользователь имеет права на чтение файлов в каталоге /var/lib/samba. Например, чтобы разрешить пользователям группы admin копировать файлы с помощью scp, введите:
5. Далее синхронизируйте учетные записи пользователей, используя scp для копирования каталога /var/lib/samba с PDC:
6. Наконец, перезапустим Samba:
Вам надо проверить, что ваш резервный контроллер домена работает, остановив сервис Samba на PDC, и затем попытаться авторизоваться на Windows клиенте, входящем в домен.
Другая вещь, о которой не стоит забывать: если вы настроили опцию logon home как каталог на PDC и он становится недоступен, доступ к домашнему каталогу пользователя также станет невозможным. Именно поэтому лучше настроить logon home расположенным на отдельном файловом сервере, отличном от PDC и BDC.
Ссылки
Для более глубокого изучения настроек Samba смотрите Коллекцию ЧаВо по Samba.
Это же руководство в печатном виде.
Хорошее руководство — Using Samba от O’Reilly.
4 глава Коллекции ЧаВо по Samba раскрывает настройки первичного контроллера домена.
5 глава Коллекции ЧаВо по Samba посвящена настройкам резервного контроллера домена.
Операционные системы Astra Linux
Операционные системы Astra Linux Common Edition и Astra Linux Special Edition разработаны коллективом открытого акционерного общества «Научно-производственное объединение Русские базовые информационные технологии» и основаны на свободном программном обеспечении. С 17 декабря 2019 года правообладателем, разработчиком и производителем операционной системы специального назначения «Astra Linux Special Edition» является ООО «РусБИТех-Астра».
Astra Linux Common Edition предназначена для автоматизации к оммерческих предприятий и органов государственного управления.
Astra Linux Special Edition предназначена для применения в автоматизированных системах в защищенном исполнении, обрабатывающих информацию ограниченного распространения, включая государственную тайну до степени секретности «особой важности» .
На сайте представлена подробная информация о разработанных операционных системах семейства Astra Linux, а также техническая документация для пользователей операционных систем и разработчиков программного обеспечения. Кроме того, предоставлена возможность скачать дистрибутивы и исходные тексты операционной системы Astra Linux Common Edition, а также задать интересующие вопросы разработчикам .
Мы будем признательны Вам за вопросы и предложения, которые позволят совершенствовать наши изделия в Ваших интересах и адаптировать их под решаемые Вами задачи!
Репозитория открытого доступа в сети Интернет для операционной системы Astra Linux Special Edition нет. Операционная система распространяется посредством DVD-дисков.
Информацию о сетевых репозиториях операционной системы Astra Linux Common Edition Вы можете получить на нашем сайте.
Samba сервер как домен windows
- Главная
- ТЕХНИЧЕСКАЯ
- LINUX
- Файловый сервер Samba в домене Windows
Файловый сервер Samba в домене Windows
В данной статье будет рассмотрен вариант развёртывания файлового сервера Samba на базе операционной системы UBUNTU и организация его взаимодействия с доменов Windows.
Для примера использован следующие исходные данные:
дистрибутив: UBUNTU 16.04.4
имя сервера Linux: 2UBUNTU-16
домен Windows: TESTDOMAIN.LOCAL
контроллеры домена: 2SRV1.TESTDOMAIN.LOCAL , 2SRV2.TESTDOMAIN.LOCAL
администратор контроллера домена: adm
Подготовка
После установки дистрибутива выполняем обновление информации о пакетах и сами пакеты:
sudo apt-get update
sudo apt-get upgrade
Для удобства работы с сервером можно дополнительно установить Webmin (систему управления сервером LINUX через web-интерфейс).
Если есть необходимость, то меняем имя сервера:
hostnamectl set-hostname 2UBUNTU-16
Добавляем доменное имя сервера в файл hosts
sudo nano /etc/hosts
127.0.0.1 localhost
127.0.1.1 2ubuntu-16 2ubuntu-16.testdomain.local
После этого перезагружаем сервер:
Установка Samba
Помимо установки Samba, так же устанавливаем пакеты Kerberos и Winbind (для возможности подключения и взаимодействия с доменом на Windows):
sudo apt install krb5-user winbind samba libnss-winbind libpam-winbind
При установке Kerberos будет запрошена область по умолчанию — нужно указать адрес домена (в нашем случае TESTDOMAIN.LOCAL)
Проверяем доступность контроллера домена:
ping -c 5 TESTDOMAIN.LOCAL
Для успешной работы с доменом нужно установить синхронизацию времени с контроллером домена.
sudo apt install ntp
Настраиваем файл конфигурации службы ntp
sudo nano /etc/ntp.conf
Нужно закомментировать все текущие указанные серверы проверки время и добавить свой домен ( pool TESTDOMAIN.LOCAL)
Перезапускаем службу времени и проверяем статус синхронизации:
sudo systemctl restart ntp
ntpq -p
Запрашиваем тикет у Kerberos у контроллера домена:
kinit Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.
Если не отобразилась информация об ошибке, то запрос прошёл верно и можно проверить результат:
Настройка Samba
Сохраним резервную копию файла конфигурации:
sudo cp /etc/samba/smb.conf /etc/samba/smb.default.conf
Далее редактируем файл конфигурации:
sudo nano /etc/samba/smb.conf
Пример заполнения раздела [global]
[global]
security = ADS
workgroup = TESTDOMAIN
realm = TESTDOMAIN.LOCAL
encrypt passwords = yes
# Default idmap config for local BUILTIN accounts and groups
idmap config * : backend = tdb
idmap config * : range = 3000-7999
# idmap config for the TESTDOMAIN domain
idmap config TESTDOMAIN : backend = rid
idmap config TESTDOMAIN : range = 10000-999999
winbind enum users = yes
winbind enum groups = yes
winbind use default domain = yes
После сохранения изменений в файле smb.conf выполняем проверку:
Взаимодействие Samba с доменом Windows
Если ошибок не обнаружено, то подключаем сервер к домену:
sudo net ads join -U Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.
В случае отсутствия ошибок проверяем наличия сервера в списке компьютеров домена на стороне контроллера.
Перезагружаем сервис Winbind:
service winbind restart
Проверяем связь с контроллером домена, а затем список пользователей и групп домена Windows:
wbinfo —ping-dc
wbinfo -u
wbinfo -g
Чтобы UBUNTU могла использовать не только локальные группы и пользователей, но и доменные данные, нужно отредактировать настройки диспетчера службы имен NSS (Name Services Switch)
sudo nano /etc/nsswitch.conf
Необходимо дописать следующие значения:
passwd: compat winbind
group: compat winbind
После этого можно проверить возможность просмотра пользователей и групп:
getent passwd adm
getent group «пользователи домена»
Добавляем папку общего ресурса:
sudo mkdir -p /srv/samba/public
Назначаем имя владельца и группу для созданной папки:
sudo chown «adm»:»пользователи домена» /srv/samba/public
Редактируем файл конфигурации Samba, чтобы добавить поддержку Windows ACLs и сетевую папку public
sudo nano /etc/samba/smb.conf
[global]
# Windows ACLs Support
vfs objects = acl_xattr
map acl inherit = yes
store dos attributes = yes
[Public]
path = /srv/samba/public/
read only = no
Перезапустим службу Samba (чтобы применить изменения):
service smbd restart && service nmbd restart
Для удобства удалённой настройки разрешений сетевых ресурсов добавим администраторам домена привилегию SeDiskOperatorPrivilege:
net rpc rights grant «TESTDOMAIN\администраторы домена» SeDiskOperatorPrivilege -U «TESTDOMAIN\adm»
Проверяем подключение привилегий:
net rpc rights list privileges SeDiskOperatorPrivilege -U «TESTDOMAIN\adm»
Теперь управлять разрешениями для общих ресурсов можно удалённо с сервера Windows. Для этого запускаем оснастку «Управление компьютером» от имени администратора домена, выбираем «Подключиться к другому компьютеру…» и выбираем имя сервера Linux ( 2UBUNTU-16.TESTDOMAIN.LOCAL)
В разделе «Служебные программы» — «Общие папки» — «Общие ресурсы» будут отображаться сетевые ресурсы, доступные на сервере Linux.
Дополнительно:
Дополнительно можно подключать «корзину» для отдельных ресурсов (чтобы сохранять удалённые файлы и папки).
Проверяем наличие соответствующего модуля:
dpkg -l |grep samba-vfs-modules
Устанавливаем, если он отсутствует:
apt install samba-vfs-modules
Добавляем поддержку корзины для общего ресурса Public
sudo nano /etc/samba/smb.conf
[Public]
path = /srv/samba/public/
read only = no
vfs object = recycle
recycle: repository = .recycle/%U
recycle: touch = yes
recycle: keeptree = yes
recycle: versions = yes
«vfs object = recycle» – включение корзины для общего ресурса;
«recycle: repository = .recycle/%U» – папка, куда будут перемещаться удаленные файлы;
«recycle: touch = yes» – обновлять дату при перемещении файла в корзину;
«recycle: keeptree = yes» – сохранять структуру каталогов удаленного файла;
«recycle: versions = yes» – при перемещении в корзину файла с существующим именем, добавлять к началу имени файла префикс «Copy #».