домен контроллер на linux

Поднимаем контроллер домена на Ubuntu Server

Этот вариант может быть полезен для небольших организаций с компьютерами под управлением Windows.
Нет необходимости приобретать недешевую Windows Server для организации AD и CAL лицензии для доступа к контроллеру домена.
В конечном итоге имеем плюшки AD: групповые политики, разграничение прав доступа к ресурсам и т.д.

Я попытался написать подробный алгоритм действий необходимых для организации Active Directory (AD) Domain Controller (DC) на базе Ubuntu Server.

Рассмотрим настройку контроллера домена на примере Ubuntu Server 12.04.4 LTS или Ubuntu Server 13.10, инструкция подходит для обоих вариантов без дополнительных изменений

1. Установка Ubuntu

Думаю установка Ubuntu-server не вызовет проблем даже у большинства пользователей компьютеров.
Желательно при установке ОС сразу правильно указать название машины в сети (hostname) с указанием домена (для примера использую dc1.domain.local), чтобы в дальнейшем меньше надо было править конфигурацию в файлах.
Если в сети не присутствует DHCP-сервер, установщик предложит ввести IP-адрес, маску сети, шлюз и DNS.
Во время установки, также желательно установить OpenSSH server, чтобы иметь удаленный доступ к серверу, а также правильно указать часовой пояс, в котором находится машина.

2. Настройка параметров сетевого адаптера

Настройки сети хранятся в файле /etc/network/interfaces
Редактируем его на свой вкус. В качестве редактора можно использовать nano, vi и т.п.
Для редактирования файлов понадобятся root права, их можно получить например командой после этого, Вы будете работать из под пользователя root.
О том что Вы работаете с правами root пользователя свидетельствует знак # в приглашении командной строки
Либо Вы можете перед каждой командой, которая требует root доступа, приписывать sudo

В конфигурации Вашего сетевого интерфейса, скорее всего, будет

auto eth0
iface eth0 inet static
address 192.168.10.1
netmask 255.255.255.0
gateway 192.168.10.10
dns-nameservers 192.168.10.10
dns-search domain.local domain

После изменения сетевых настроек необходимо перезапустить сетевой сервис

3. Установка необходимых пакетов

Если Вы все же не установили OpenSSH server на первом этапе, это можно сделать командой
Перед установкой чего либо, лучше сначала обновить систему и пакеты командой
Для того, чтобы компьютеры сети сверяли время по нашему серверу установим ntp-сервер

Samba4 будем использовать последней версии и собирать из исходников, так что нам понадобятся пакеты для её сборки и корректной работы.

4. Сборка Samba4

/dev/mapper/dc1—vg-root / ext4 user_xattr,acl,barrier=1,errors=remount-ro 0 1

после чего необходимо перезагрузить компьютерНе забываем про root права
Скачиваем последнюю стабильную версию Samba из GIT репозитария
конфигурируем, компилируем и устанавливаем Samba Параметр —enable-debug необходим для отображения более подробной информации в логах Samba.

После того, как соберется и установится Samba (это долгое занятие), для удобства её использования, необходимо прописать пути до исполняемых файлов /usr/local/samba/sbin и /usr/local/samba/bin в файлах /etc/sudoers переменная secure_path и /etc/environment переменная PATH, добавив строку :/usr/local/samba/sbin:/usr/local/samba/bin
должна получится строчка что-то вроде этой:

перезагрузимся еще раз (на всякий случай)

5. Поднимаем AD

В качестве DNS сервера AD будем использовать Samba, поэтому отключаем bind командой

Для манипуляций с AD в Samba существует инструмент samba-tool.
Для первоначальной настройки Samba вводим команду

Если на первом этапе Вы правильно указали имя компьютера, все настройки, которые запросит программа, можно оставить поумолчанию.
Во время настройки будет запрошен пароль пользователя Administrator для AD, он должен соответствовать требованиям сложности пароля поумолчанию: хотябы одна буква верхнего регистра, хотябы одна цифра, минимум 8 символов.
Если же пароль не подошел по сложности и Вы увидели ошибку вроде этой:

ERROR(ldb): uncaught exception — 0000052D: Constraint violation — check_password_restrictions: the password is too short. It should be equal or longer than 7 characters!

то перед повторным выполнением первоначальной настройки, необходимо удалить содержимое каталогов /usr/local/samba/private/ и /usr/local/samba/etc/
Если необходимо изменить сложность паролей это можно сделать командой эта команда отключает требование сложности, отключает сроки действия паролей, устанавливает минимальную длину пароля 6 символов

Далее необходимо подправить настройки Samba и добавить туда следующие строки в секцию [global]

allow dns updates = nonsecure and secure
printing = bsd
printcap name = /dev/null

Это позволит динамически обновлять DNS-записи на сервере, при входе рабочей станции (под управлением windows) в домен и отключит поддержку печати, которая постоянно выдает ошибки в лог.

В файле /etc/resolvconf/resolv.conf.d/head необходимо указать наш DNS-сервер Samba 127.0.0.1
и перезапустить сервис resolvconf
Также установим Kerberos клиенти настроим на AD с помощью файла созданного на этапе samba-tool domain provision
Для автоматического запуска сервиса Samba необходим скрипт:

6. Проверяем работоспособность сервера

Name: dc1.domain.local
Address: 192.168.10.1

Warning: Your password will expire in 41 days on Wed Apr 23 18:49:14 2014

Valid starting Expires Service principal
12/03/2014 19:17 13/03/2014 05:17 krbtgt/DOMAIN.LOCAL@DOMAIN.LOCAL

Domain=[DOMAIN] OS=[Unix] Server=[Samba 4.1.6]
. D 0 Wed Mar 12 18:46:48 2014
… D 0 Wed Mar 12 18:49:15 2014

Вот и всё.
Можно вводить в домен клиентов, заводить пользователей.

Управлять AD можно:
частично при помощи samba-tool на Ubuntu
при помощи Administration Tools Pack на Windows XP
при помощи Remote Server Administration Tools (RSAT) на Windows 7 и выше

Источник

Превращаем Ubuntu Server в контроллер домена с помощью samba-tool

image loader

С помощью Samba можно превратить сервер, работающий под управлением ОС семейства Linux, в контроллер домена (Domain Controller, DC) Active Directory. Тот DC, который мы собираемся поднять, сможет работать как контроллер домена Windows NT4. Он подойдёт для централизованного хранения данных учётных записей пользователей и компьютеров.

Начнём с установки необходимого ПО.

Установка

Первый шаг — установка на сервер пакетов Samba и Winbind. Сделать это можно с помощью следующей команды:

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

После установки можно приступать к настройкам.

Подготовка к настройке

Здесь IP_ADDRESS_OF_SERVER — это реальный адрес сервера Samba. Проверьте, чтобы файл содержал актуальные данные.

На рисунке ниже показаны результаты исполнения этих команд, которыми можно будет воспользоваться для того, чтобы удалить ненужные файлы. Если же подобные файлы в системе не существуют — можно сразу двигаться дальше.

9e3b044d9ae224112152676ef568d611
Поиск файлов, которые надо удалить

Использование samba-tool

Прежде чем продолжать, позаботьтесь о регистрации пользователей в Samba. Этот шаг очень важен — иначе пользователям не удастся пройти аутентификацию. Делается это следующими командами:

Здесь USERNAME — имя существующего пользователя, которого надо добавить к Samba. Указать пароль нужно будет лишь после ввода первой команды. Первая команда добавляет нового пользователя и запрашивает пароль для него; вторая — активирует созданный аккаунт.

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

Тут же имеются настройки использования сетевым интерфейсом статического IP-адреса. Обратите внимание на то, что всё, набранное ЗАГЛАВНЫМИ буквами, надо настроить в соответствии с параметрами вашей системы.

После выполнения настроек перезапустите сетевые сервисы такой командой:

Настройка Kerberos

Тестируем и подключаемся

Самое сложное позади. Теперь всё готово к тому, чтобы протестировать только что созданный контроллер домена на Samba и подключиться к нему. Быстро проверить, всё ли работает, можно с помощью такой команды:

После ввода пароля пользователя Samba, вы должны увидеть сообщение об успешном подключении.

55cc4821e1b44cdc97645b21e5d4e2fc
Успешное подключение

Итоги

Уважаемые читатели! А какие варианты взаимодействия экосистем Linux и Windows кажутся вам наиболее интересными и полезными?

Источник

Контроллер домена на Linux?

Добрый день.
Хотелось бы поделиться с вами одним интересным моим опытом – Контроллер домена на Linux. В данной статье я скорее всего напишу небольшой мини обзор систем с помощью которых я пытался реализовать альтернативу ActiveDirectory.

Немного истории:
Написано мною в Январе 2009: Вообще я далеко не профи в *nix системах, но всё таки активно интересуюсь и изучаю их. В компании, где я работаю, около 3-4 моих серверов на базе Debian и FreeBSD. Которые выполняют различные задачи для обеспечения основных бизнес процессов компании.
По поводу домена на linux я слышал множество упрёков и похвал. И вот более года назад задался вопросом поднятия домена на Linux. Во первых просто интересно, а во вторых он абсолютно бесплатен, что и требовала компания где я работал. За год перебрал кучу вариантов, кучу сборок. Поднимал в ручную… ldap+samba+krb на BSD и Linux системах. Но мне казалось что всё это не то. Либо безумно неудобно управлять, либо куча лишнего. Куча лишнего было в готовых дистрибутивах (аля-домен за одну минуту.). Было боязно внедрять их в мою не большую и не маленькую компанию(Более 80-100 рабочих станций в одном только офисе). Во первых неизвестно что и как разработчики делали с дистрибутивом, во вторых электронная поддержка на иностранном языке ))) А самому разгребать последствия не хочется.

Читайте также:  как сменить пароль на удаленном компьютере windows 10

d4ec1410680d4221a36325576538e2c4

Чуть ниже я напишу мини обзор некоторых готовых вариантов поднятия домена. А в самом низу читайте мои итоги и выводы относительно всего этого опыта. Прошу заметить что выводы мои собственные и никого ни к чему не призывают… просто так решил.

1.Mandriva Directory Server.

Пожалуй самый удачный вариант из всех что имеется. Ничего лишнего (то что лишнее можно спокойно выключить). Mandriva Directory Server это не тупо сборка или готовый дистрибутив который можно развернуть за 5 минут. MDS это пожалуй единственный вариант который совмещает в себе ручную работу системного администратора по сборке и настройке основных компонентов домена + готовые решения от Mandriva по управлению всеми основными службами контроллера домена. Кстати говоря эти решения нужно так же ставить и настраивать в ручную.

Управление производится через удобный Web интерфейс.

Mandriva Directory Server может управлять следующими службами:

1.Расширенный почтовый сервер Postfix, с поддержкой Imap и POP3 сервера (Dovecot), с проверкой на вирусы и фильтрации почты (Amavis, Spamassassin, ClamAV), SMTP сервером, с поддержкой квот, SSL и TSL. (можно не ставить )
2.Сам контроллер домена (Ldap+samba)
3.Корпоративный кэширующий прокси сервер (SQUID). (Можно не ставить)
4.DNS сервер (Bind).
5.CUPS сервер печати
6.Управлением общими сетевыми ресурсами.
7.Служба DHCP
8.Перемещаемые профиля

*Плюс к этому MDS не ограничивает вас в службах сервера. Вы можете так же оснастить сервер к примеру NFS сервером, антивирусной защитой и т.д.

Так же есть система плагинов… которые пишутся на уровне PHP и Phyton (есть офф документация).
Собственно этот вариант мне и подошёл.

e5b34cddf37b52962238fab994092281
b484c8fc52caa19f66f8b8dbfa934687
39239b30dae8c18eb4c4e76c69afae90

Довольно интересное решение… созданное Сергеем Бутаковым, (город Лесной Свердловской области. Написано на сайте )

Распространяется в качестве готового дистрибутива основанного на GNU/Linux (какой именно непонятно).
Это специализированный дистрибутив, заточенный только под надобности сервера. По поводу того, можно ставить на него ещё что ни будь или нет… ничего не могу сказать.

Управление производится на уровне консоли а так же имеется удобный web интерфейс.

Основные возможности
Централизованное управление учётными данными пользователей
Сервер динамической сетевой настройки узлов (DHCP)
Первичный контроллер Samba домена (совместимый с MS Windows NT4 PDC) с поддержкой перемещаемых профилей и домашних каталогов пользователей
Файловый сервер (протокол SMB/CIFS)

image loader

Немного не понятный проект. Распространяется в качестве готового дистрибутива на базе CentOS… в который напихано всё что можно.

«ClarkConnect мощнейшее серверное программное решение разработанное для малых и средних организаций. Тем не менее ClarkConnect поставляется с эксклюзивным перечнем функций и интегрированных служб, решение которое легко конфигурируется через удобный web-интерфейс.» (С)

Не понравился он мне тем что в нём есть много лишнего. Мне бы не хотелось делить на сервере контроллер домена и интернет шлюз.

ClarkConnect это интегрированный антивирус который проверяет на вирусы всё… почту трафик и шары. Так же это backup сервер, интернет сервер, сервер ldap, samba, VPN, Mysql, Mail, FTP и т.д.

Имеется Community Edition версия. А для тех кто хочет поддержку, могут приобрести Enterprise версию.

Так же есть неофициальный русский сайт с поддержкой.

a0a5c03beeaf5471cead521d24430379

4.Fedora Directory Server (она же 389 Directory Server)

Отличный проект. Периодически обновляющийся и имеющий большой потенциал. К сожалению детально его изучить не удалось.

Собственно Mandriva Directory Server построен на базе Fedora Directory Server. Только FDS немного глобальнее.
Здесь и поддержка синхронизации с Active Directory доменом (на базе 2000/2003 win), и управление производится через java консоль. Так же есть несколько интересных приблуд.

image loader

Используя одно из этих решений вы получаете домен уровня NT4. Тобишь Samba3+Ldap. Этот стандарт ниже чем домен на базе Windows 2003\2008.
На мой взгляд данные решения подойдут компаниям в которых парк машин не превышает 80.
Плюсы данного решения состоят в том, что оно бесплатное а так же есть возможность интегрировать БЕЗ ПРОБЛЕМ *nix машины на уровне ldap, что позволит создать своего рода гетерогенную локальную сеть.

Windows машины ведут в домене на Linux себя как рыба в воде. Всё отлично работает, профиля сохраняются… подключаются сетевые диски и даже есть возможность реализовать частично ГРУППОВЫЕ ПОЛИТИКИ (http://hidx.wordpress.com/2009/01/28/gpo-samba-domen/), но только на уровне NT4 домена.

Глобальные GPO которые есть в Windows 2003\2008 реализовать не получится. Это в принципе основная причина которая затрудняет использование данного домена в организациях с 100+ парком машин.

Я остановился на Mandriva Directory Server на базе Debian Lenny. Вот только, внедрил я её уже в другую организацию.
В любом случае опыт который получаешь в процессе сборки домена, очень полезен.

Источник

Развертывание контроллера домена Active Directory на Linux. Настройка Samba Active Directory на Ubuntu Server 20.04 LTS

1

И так. Всем привет! С вами Владислав известен я под никнеймом Imptovskii, и сегодня мы рассмотрим развертку контроллера домена Active Directory на базе Samba используя дистрибутив Ubuntu.

В этом гайде мы будет разбирать:

Вообще у нас для развертывая Active Directory есть несколько путей решения данной задачи

1. Купить Windows Server и развернуть Active Directory на нем.

2. Спиратить Windows Server и получить больше проблемы от правоохранительных органов.

3. Использовать Open Source решение. Например Samba.

Кому это может быть нужно

1. Вы хотите просто выеб*** выделится что вы такой хороший специалист и сократили расходы компании. И улучшили инфраструктуру.

2. Вы работаете в госструктурах, и из-за маразма с переходом на открытое и отечественное ПО, у вас просто нет другого выхода.

3. Вы не хотите проблем от правоохранительных органов из-за пиратства Windows Server, а денег на Windows Server руководство вам выделять не хочет. А ваша инфраструктура уже требует наличие хоть кого нибудь домена Active Directory. Например прокси Squid или файловый сервер на Samba.

4. У вас просто аллергия на Windows на боевых серверах.

И так, разворачивая домен на Samba вы получаете

1. Полноценный домен уровня WIN2K8 R2

— Служба Аутентификации на базе Kerberos v5

— LDAP-совместимая служба каталогов с возможностью репликации по DRS

— Сервер управления групповыми политиками

— DNS-сервер на базе BIND.

2. Хорошее решение, если у вас небольшая локальная сеть до 100-150 компьютеров и нужды в большом лесе поддоменов у вас нет. (Точнее Samba в поддомены не умеет от слова совсем)

3. За счет открытых спецификаций технологии Active Directory и преемственности в подходах реализации службы каталога Active Directory. Клиентами домена на базе Samba могут быть рабочие станции с операционными системами, начиная с Windows XP вплоть до Windows 10. А в качестве инструментов управления доменными службами на базе Samba могут быть использованы привычные инструменты из RSAT.

А теперь поговорим об ограничениях и недостатках Samba Active Directory Domain Controller

1. Максимальный размер базы данных Samba ограничен 4 Гб. И это связано 32-битной архитектурой tdb. И это означает что для крупных организаций c условными сотнями тысяч каталогов и объектов которые решили совершить переход на Samba, это может оказаться практически невозможным.

2. Доверительные отношения (forest/domain trust). Хоть более или менее полная реализация доверительных отношений появились в версии 4.3, тем не менее в ней есть ряд ограничений.

— Поддерживаются только двухсторонние доверительные отношения.

— Отсутствует функция SID Filtering, и отказ от нее снижается существенно уровень безопасности при создании доверительных отношений.

— Не поддерживается добавление пользователей, и групп из домена A в домен B. И данное ограничение приводит к тому что мы не сможем увидеть Samba в крупных инсталляциях.

3. Поддержка многодоменной структуры/поддержка поддоменов.

Поддержка многодоменной структуры отсутствует как на уровне кода, так и на уровне базы данных. В Samba нет реализации глобального каталога (При запросе глобального каталога производится редирект на общий LDAP-каталог)

Если вы создаете поддомен на базе Samba, или вводите Samba в состав домена второго уровня, записи о других доменах и корневом домене будут потеряны, а «благодаря» ограничениям в поддержке фантомных объектов, работа в многодоменной среде может быть весьма нестабильной.

4. Репликация SYSVOL

Несмотря на то, что групповые политики полноценно функционируют в Samba (за исключением политики паролей, назначаемых на конкретное организационное подразделение), из-за отсутствия поддержки протоколов DFS-R и FRS, репликацию SYSVOL придется проводить в ручном режиме, или при помощи скрипта. Информация о настройках rsync для репликации между контроллерами Samba есть на сайте wiki.samba.org.

Читайте также:  браузер для windows xp sp3

В Samba 4.3.0 заявлено, что разработчики приблизились к реализации KCC, в соответствии с открытой спецификацией Microsoft, на деле же, стоит приготовиться к многочисленным ошибкам в журналах событий и созданию/корректировке графа репликации вручную.

6. Есть проблемы с поддержкой различных приложений типа почтового сервера Exchange и т. д.

Больше информации вы можете получить на wiki.samba.org

На самом деле, несмотря на все недостатки. Не стоит забывать что это бесплатный и открытый продукт к которому Microsoft не имеет прямого отношения. И неудивительно что у него есть ограничения и какие недостатки. И все же для небольшой фирмы это хорошее решение при отсутствии бюджета на Windows Server. И проблемы с подобным решением могут возникнуть только в одном случае это с крупными внедрениями.

Да и помимо Active Directory, на базе Samba можно сделать файловый сервер или сервер печати и сделать интеграцию с Active Directory. Но об этом как-нибудь потом.

Давайте приступим к настройке нашего домена

Основной домен
Виртуализация: QEMU/KVM
Кол-во ядер: 2
Объем выделенной памяти: 4 ГБ
Имя сервера: dc01
Имя домена: netlab.local
IP-адрес: 192.168.1.31
OS: Ubuntu Server 20.04 LTS

Резервный домен
Виртуализация: QEMU/KVM
Кол-во ядер: 2
Объем выделенной памяти: 4 ГБ
Имя сервера: dc02
Имя домена: netlab.local
IP-адрес: 192.168.1.32
OS: Ubuntu Server 20.04 LTS

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

1. Настраиваем hostname для этого нам нужно отредактировать файл /etc/hostname и дописать к dc01 наш домен в нашем случае это netlab.local

Пишем sudo nano /etc/hostname

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 15

2. Настройка файла /etc/netplan/00-installer-config.yaml

Задаем следующие значения в файл /etc/netplan/00-installer-config.yaml

Пишем sudo nano /etc/netplan/00-installer-config.yaml

Если у вас нет этого файла, пишем в консоли ls /etc/netplan и узнаем имя конфига.

Приводим файл к следующему виду:

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 13

3. Настройка файла /etc/hosts

Одним из обязательных условий, является резолв имени нашего сервера, на его IP в локальной сети. Если сервер находится в сети 192.168.1.0/24 и его IP 192.168.1.31, то набирая на нем команду ping dc01 или же ping dc01.netlab.local должен резолвиться адрес 192.168.1.31. Имя контроллера домена, не должно резолвиться на локальный адрес 127.0.0.1 или какой-либо другой адрес, кроме того, что назначен сетевому интерфейсу который использует контроллер домена.

Пишем sudo nano /etc/hosts и приводим файл к следующему виду:

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 14

3. Отключение службы systemd-resolved.

Останавливаем службу systemd-resolved

Убираем systemd-resolved из автозапуска

Удаляем файл /etc/resolv.conf

Создаем заново файл /etc/resolv.conf

И приводим его к следующему виду:

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 16

А теперь перезапускаем сервер.

Установка Samba

1. Проверяем не запущены ли какие-нибудь процессы Samba

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 17

У нас их не должно быть и так, но лучше проверить если вы используете старую виртуалку

На этом этапе, самое главное нужно понимать что после того как вы инициализируете контроллер домена, вы не сможете сменить его название. Если вы называете домен например NETLAB.LOCAL, LAB.LOCAL, GENERICNAME.LAN и т.д. то он на веки будет называться именно так как вы его назвали. Samba не поддерживает смену имени домена. Если вам нужно будет сменить его имя, вам придется выводить все машины из домена и инициализировать его заново с новым именем. И даже в рамках сети с 25-50 машинами это уже большая проблема.

1. Устанавливаем Samba и все необходимые пакеты командой

2. Область по умолчанию для Kerberos версии 5

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 18

3. Серверы Kerberos для вашей области:

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 19

4. Управляющий сервер вашей области Kerberos

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 20

Ожидаем окончание установки.

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 21

5. Бэкапим стандартную конфигурацию Samba

А теперь приступаем к инициализации домена

Инициализация и дополнительная настройка домена Sambа

Из своего домена, мы так же будем управлять пользователями и группами линуксовых машин. Поэтому нам нужно заранее включить поддержку NIS, с помощью команды –use-rfc2307. Включение поддержки NIS, не имеет никаких противопоказаний к применению, даже если ваш домен никогда не будет обслуживать линуксовые машины. В то же время, если инициализировать домен без поддержки NIS, и когда-нибудь в него войдут линуксовые машины и захочется управлять их учётками, расширять схему Active Directory и добавлять поддержку NIS, придётся уже ручками на свой страх и риск.

1. Запускаем инициализацию домена в интерактивном режиме, следующей командой:

2. Указываем параметры домена

Когда установщик запросит пароль, рекомендую указать трудный пароль и также рекомендую чтобы этот пароль отличался от вашего админской учетной записи на самом сервере.

Если на этом этапе в квадратных скобках у вас указано не, то значение которое вы задавали, то скорее всего вы где-то ошиблись.

3. По этого инициализации вы должны получить подобный результат:

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 22

Но радоваться рано. Если вы видите нечто другое, то скорее всего вы допустили ошибку где-то в предыдущих пунктах.

4. Переносим файл конфигурации Kerberos следующей командой:

5. Переходим к настройкам файла /etc/samba/smb.conf и ветку [global] приводим к след виду:

Начиная с версии 3.3.0, появился модуль acl_xattr, позволяющий Samba корректно обрабатывать Windows ACL (Access Control List). Для полноценной поддержки прав доступа к файлам используйте модуль acl_xattr. Для этого добавьте в smb.conf в раздел [global] следующие параметры:

Для обновления записей в DNS добавьте два параметра в раздел [global]:

Если при автоконфигурировании не был указан DNS Forwarding, то его можно включить, добавив в секцию [global] DNS-адресс, который используется в вашей локальной сети или на внешний ресурс, например 8.8.8.8 или 1.1.1.1

В секцию [global] добавьте поддержку расширения схемы AD

6. После внесения изменений в файл /etc/samba/smb.conf выполните команду проверки testparm

7. Убераем стандартный в Linux лимит на 1024 одновременно открытых файлов, а в Windows он 16384. Чтобы убрать его добавьте, в конец файла /etc/security/limits.conf строки:

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 23

Перезапускаем систему и запускаем снова проверку и как мы видим теперь все окей

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 24

Настройка служб

Контроллер домена Samba сам должен запускать необходимые службы. Если вы будете пытаться запускать их в ручном режиме, то это может привести к необратимым последствиям, вплоть до неработоспособности домена. Поэтому сделаем недоступными для запуска или ручного запуска системные службы smbd, nmbd и winbind

1. Пишем следующие команды

2. Делаем службу samba-ad-dc доступной для запуска и включаем автозапуск

Настраиваем службу DNS

1. Переходим в файл /etc/netplan/00-installer-config.yaml и в ветке nameservers меняем с 192.168.1.1 на IP адрес нашего сервера 192.168.1.31

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 25

2. И то же самое делаем в /etc/resolv.conf

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 26

А теперь перезапускаем сервер и будем проверять нашу работу.

Проверяем итоги нашей работы

2. Проверяем работоспособность Kerberos пишем команду:

И мы должны получить след ответ:

3. Смотрим кэш авторизаций Kerberos пишем команду klist

4. Проверяем DNS записи пишем следующие команды

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 27

А теперь попробуем загнать Windows машину в домен для закрепления результата и установим RSAT

Вводим компьютер в домен и устанавливаем RSAT

1. Указываем DNS сервер в настройках сети

VirtualBox Windows 10 RSAT 11 04 2022 21 55 31

2. А теперь вводим наш компьютер в домен вводя учетку администратора
Логин: Administrator
Пароль от учетки вы задавали при инициализации домена

VirtualBox Windows 10 RSAT 10 04 2022 14 49 47

3. Если вы все правильно сделали, то вы увидете след сообщение

VirtualBox Windows 10 RSAT 10 04 2022 14 50 10

4. Пытаемся залогиниться и скачиваем RSAT с сайта Microsoft

VirtualBox Windows 10 RSAT 10 04 2022 15 01 54 VirtualBox Windows 10 RSAT 10 04 2022 15 16 42 VirtualBox Windows 10 RSAT 10 04 2022 15 24 30

А теперь приступаем к настройке резервного контроллера домена.

Настройка резервного контроллера домена

Зачем нам нужен резервный контроллер домена? А все просто, давайте представим такую ситуацию. Например на одном из гипервизеров что-то не работает, например процессор вышел из строя. И, следовательно начались проблемы с общими папками на файловом сервере Samba, прокси сервер Squid не может авторизовать пользователей, люди банально не могут выйти в интернет, или зайти в свой компьютер. И тут нам на помощь приходит резервный контроллер домена, если основной сервер по каким либо причинам не работает то все задачи он берет на себя.

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

1. Настраиваем hostname для этого нам нужно отредактировать файл /etc/hostname и дописать к dc01 наш домен в нашем случае это netlab.local

Пишем sudo nano /etc/hostname

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 31

2. Настройка файла /etc/netplan/00-installer-config.yaml

Задаем следующие значения в файл /etc/netplan/00-installer-config.yaml

Пишем sudo nano /etc/netplan/00-installer-config.yaml

Если у вас нет этого файла, пишем в консоли ls /etc/netplan и узнаем имя конфига.

Приводим файл к следующему виду:

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 29

3. Настройка файла /etc/hosts

Одним из обязательных условий, является резолв имени нашего сервера, на его IP в локальной сети. Если сервер находится в сети 192.168.1.0/24 и его IP 192.168.1.32, то набирая на нем команду ping dc02 или же ping dc02.netlab.local должен резолвиться адрес 192.168.1.32. Имя контроллера домена, не должно резолвиться на локальный адрес 127.0.0.1 или какой-либо другой адрес, кроме того, что назначен сетевому интерфейсу который использует контроллер домена.

Читайте также:  hp lj 1200 драйвер windows 10 x64 pcl5

Пишем sudo nano /etc/hosts и приводим файл к следующему виду:

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 30

3. Отключение службы systemd-resolved.

Останавливаем службу systemd-resolved

Убираем systemd-resolved из автозапуска

Удаляем файл /etc/resolv.conf

Создаем заново файл /etc/resolv.conf

И приводим его к следующему виду:

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 32

Установка Sambа

1. Проверяем не запущены ли какие-нибудь процессы Samba

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 33

2. Устанавливаем Samba командой из 1 статьи:

И ожидаем окончание установки, у нас не должно быть диалоговых окон с настройкой Kerberos и т.д.

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 34

3. Бэкапим стандартную конфигурацию Samba

Ввод в домен и настройка Samba

Мы должны получить следующее

2. Переносим файл конфигурации Kerberos следующей командой:

3. А теперь переходим к настройке /etc/samba/smb.conf и настраиваем его по аналогии конфига dc01

Мы имеем чистый конфиг без всяких настроек, все параметры указаны в 1 части статьи и расписано что за что отвечает

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 35

Приводим мы наш конфиг к такому виду.

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 36

4. После внесения изменений в файл /etc/samba/smb.conf выполните команду проверки testparm

5. Убираем стандартный в Linux лимит на 1024 одновременно открытых файлов, а в Windows он 16384. Чтобы убрать его добавьте, в конец файла /etc/security/limits.conf строки:

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 37

Перезапускаем систему и запускаем снова проверку и как мы видим что все окей

Настройка служб

Контроллер домена Samba сам должен запускать необходимые службы. Если вы будете пытаться запускать их в ручном режиме, то это может привести к необратимым последствиям, вплоть до неработоспособности домена. Поэтому сделаем недоступными для запуска или ручного запуска системные службы smbd, nmbd и winbind

1. Пишем слудующие команды

2. Делаем службу samba-ad-dc доступной для запуска и включаем автозапуск

Настраиваем службу DNS

1. Переходим в файл /etc/netplan/00-installer-config.yaml и в ветке nameservers добавляем наш второй DNS сервер

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 38

2. И то же самое делаем в /etc/resolv.conf

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 39

А теперь перезапускаем сервер и будем проверять нашу работу.

Проверяем итоги нашей работы

2. Проверяем работоспособность Kerberos пишем команду:

И мы должны получить след ответ:

3. Смотрим кэш авторизаций Kerberos пишем команду klist

4. Проверяем DNS записи пишем следующие команды

Если у вас не появились записи о dc02.netlab.local значит вы где-то ошиблись и надо разбираться в чем проблема.

5. Так а теперь проверяем репликацию командой sudo samba-tool drs showrepl

Предупреждение «No NC replicated for Connection!» можно смело игнорировать. Оно появляется из-за того, что при регистрации нового Samba AD-DC неверно устанавливает некоторые флаги репликации.

А теперь перейдем в Windows и пропишем второй DNS сервер

Проверяем работу резервного домена в Windows

VirtualBox Windows 10 RSAT 11 04 2022 23 17 19

Переходим в RSAT и можем увидеть что у нас появился второй контроллер домена

VirtualBox Windows 10 RSAT 11 04 2022 23 16 22

Попробуем переключиться на второй домен

VirtualBox Windows 10 RSAT 11 04 2022 23 18 48

Как мы видим мы переключись на второй контроллер домена

VirtualBox Windows 10 RSAT 11 04 2022 23 21 03

А теперь давайте проверим как будет все работать если мы выключим основной контроллер домена, и перезапустим виртуалку с Windows. И как мы видим сеть есть, если бы DNS не работал, то Windows показывала что нет доступа к интернету.

VirtualBox Windows 10 RSAT 11 04 2022 23 23 26

Попробуем зайти в RSAT и посмотреть сможем ли мы управлять резерным контроллером домена. И как можно заметить что все окей и все работает. Давайте перейдем в управление DNS записями.

VirtualBox Windows 10 RSAT 11 04 2022 23 25 04

Открываем утилиту DNS и указываем dc02

VirtualBox Windows 10 RSAT 11 04 2022 23 25 55

И как можно заметить, что все работает

VirtualBox Windows 10 RSAT 11 04 2022 23 26 13

Теперь приступаем к настройке NTP сервера на наших доменах.

Настройка NTP

А теперь приступаем к настройке NTP и это необходимый элемент для нормального функционирования Active Directory, а в частности компонента Kerberos.

Да и помимо Kerberos при рассинхроне времени на клиенских машинах или серверах у вас поломается вход в систему, применение групповых политик и т.д. А вот если это произойдет на контроллерах домена, то поломается репликация, а это недопустимо.

Поэтому нам и необходим NTP на контроллере домена.

Настройка часового пояса

Прежде всего вам необходимо выбрать часовой пояс для системы, и главное чтобы этот часовой пояс совпадал с клиентскими машинами. Это необходимо сделать на всех контроллерах домена! Иначе у вас будут проблемы с репликацией!

Пишем команду dpkg-reconfigure tzdata

Выбираем в моем случае Europe

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 40

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 41

Мы должны получить следующий ответ:

А теперь приступим к установке и настройке NTP

Установка и настройка NTP сервера

Настройка требуется на всех контроллерах домена.

1. Устанавливаем пакет командой

2. Изменяем группу и права доступа к директории /var/lib/samba/ntp_signd/

3. А теперь приступаем к настройке файла sudo nano /etc/ntp.conf

И приводим файл к следующему виду:

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 42

Дописываем следующие строки:

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 44

А также комментируем строку driftfile /var/lib/ntp/ntp.drift

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 43

Описание параметров файла конфигурации NTP:

ntpsigndsocket /usr/local/samba/ntp_signd/ — позволит клиентским машинам отправлять NTP-запросы к серверу используя Active Directory

Server — указывает на сервера синхронизации времени

restrict 127.0.0.1 — обмен данным с самим собой

iburst — отправлять несколько пакетов (повышает точность)

prefer — указывает на предпочитаемый сервер времени

server 127.127.1.0 — позволит в случае отказа сети Интернет брать время из своих системных часов.

3. Настройка NTP на резервном контроллере домена

Устанавливаем NTP, изменяем группу и права доступа к директории /var/lib/samba/ntp_signd/ и редактируем sudo nano /etc/ntp.conf

Приводим файл к следующему виду.

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 45

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 46

А также комментируем строку driftfile /var/lib/ntp/ntp.drift

Также нам необходимо задать tinker panic 0 и выполняем на всех контроллерах домена команду:

Зачем нужен tinker panic 0? Если ваш NTP сервер располагается на виртуальной машине и у него нет «физических» часов измеряющих время, А работа с виртуальной машиной, может возобновиться через несколько часов. То это будет приводить к крашу ntpd.

Запускаем и включаем автозапуск службы NTP на наших доменах и пишем:

Проверяем работу службы через команду

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 48 %D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 47

5. Проверяем что у нас работает репликация и обновление ГПО

Перейдем в Windows и откроем командную строку и проверим работу NTP

VirtualBox Windows 10 RSAT 08 06 2022 22 49 21

Проверяем обновление ГПО

1234

Как мы видим что все окей. А теперь проверим репликацию на контроллерах домена репликацию.

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 50 %D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 49

И как мы видим что все окей. А теперь приступаем к настройке репликации групповых политик.

Настройка репликации групповых политик

В этот раз мы будем рассматривать репликацию групповых политик домена Samba Active Directory. Из-за отсутствия поддержки протоколов DFS-R и FRS, репликацию SYSVOL придется проводить в ручном режиме, или при помощи скрипта.

Папка SYSVOL содержит групповые политики и скрипты. Отсутствие репликации приведет к неправильной работе групповых политик и сценариев входа.

И все же приступим.

Активация пользователя root

Эти действия необходимо сделать на обоих контроллерах домена.

Для активации пользователя root пишем команду:

И не забываем про информационную безопасность! Задаем разные пароли!

А теперь переходим в файл /etc/ssh/sshd_config и разрешаем подключения через пользователя root

Раскомментируем строки PermitRootLogin и задаем значение yes

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 51

Перезапускам службу SSH командой:

И пытаемся залогиниться под root используя SSH если у вас все вышло значит все ок. Если нет, то ищите где вы допустили ошибку.

Генерация ключей доступа для беспарольного доступа по SSH

Обязательно логинимся под root на dc01 и вводим следующую команду

При генерации ключа не вводим passphrase, и мы должны получить такой ответ.

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 52Скриншот сделан на другом сервере

А теперь копируем ключ c dc01 на dc02 командой:

И проверяем беспарольный доступ с dc01 на dc02, пишем команду

Установка rsync и unison и установка скрипта для двухсторонней репликации

Все действия необходимо делать под пользователем root!

Для установки rsync и unison пишем след команду:

Cоздаем каталог для unison командой:

А теперь приступаем к настройке Unison мы должны создать файл default.prf в каталоге /root/.unison пишем

Задаем ему следующие параметры:

И так теперь в директории root создаем файл например repl.sh и задаем скрипт:

Все логи об репликации будут храниться в /var/log/sysvol-sync.log отчет можно вывести командой:

Также не забываем сделать файл исполняемым командой:

Проверим работу скрипта командой пишем команду:

Не забудьте перед этим забэкапить каталог sysvol!

А теперь переходим нам нужен планировщик задач Cron

Cron — системный демон, используемый для выполнения задач (в фоновом режиме) в указанное время. Crontab — команда, которая используется, для управления планировщиком Cron

*/5 в планировщике означает что данный скрипт будет запускаться каждые 5 минут.

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 57

Проверяем логи и как мы видимо что все окей:

%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5 58

А теперь пишем в проводнике \\dc02 и проверяем каталог sysvol

VirtualBox Windows 10 RSAT 15 04 2022 22 00 03

Ну что надеюсь вам понравилась данная статья. На этом пока все. До новых встреч.

Источник

Поделиться с друзьями
Adblock
detector