Администрирование active directory из linux

Администрирование ald домена на Astra Linux

Вот уже более года я занимаюсь администрированием Astra Linux, которая построена на базе ОС Debian. В плане администрирования данные операционные системы имеют различия. Также в Astra Linux есть службы собственной разработки.

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

Серверная часть

Настройку произвожу на виртуальных машинах в virtualbox, на сервере ip адрес 192.168.1.1, также на данном сервере расположен репозиторий(настройка ip адресов и репозиториев ничем не отличаются от настроек в debian). Первое, что необходимо настроить — это синхронизацию времени: поднимем ntp сервер, который будет брать время с текущей машины. Для это достаточно отредактировать файл /etc/ntp.conf, внеся в него следующие изменения:

fudge 127.127.1.0 stratum 10

restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

Параметры подсети укажите в соответсвии с вашими ip адресами.

Так как в ald отсутствует собственный dns сервер, его заменой служит корректно настроенный файл /etc/hosts, который должен быть одинаковый на всех машинах в домене. Перед редактированием данного файла, зададим корректное hostname для сервера:

hostnamectl set-hostname dc1.local

В данной ситуации hostname сервера будет dc1, а имя домена, соответственно, local, именно на эти параметры будет ориентироваться ald-server при инициализации. Последним штрихом перед инициализацией ald сервера буден корректная настройка файла /etc/hosts:

192.168.1.101 host1.local host1

192.168.1.102 host2.local host2

Обязательно необходимо «закомментировать» 127.0.1.1, а также важна последовательность указания полного имени хоста, т. е. первым должно быть указано имя хоста с доменом, и только потом имя хоста без домена.

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

sudo apt install ald-server-common fly-admin-ald-server smolensk-security-ald

Пакет smolensk-security-ald — добавит возможность администрировать ald сервер в стандартной утилите fly-admin-smc (об этом будет рассказано далее).

Во время установки будет запрос на создание пароля администратора домена. Для текущей публикации будет создан пароль 12345678, далее данный пароль будет использован для ввода всех машин в домен.

ВАЖНО: Если по каким то причинам у Вас сбились настройки сервера, то их можно отредактировать в файле /etc/ald/ald.conf, в текущем файле важен параметр DOMAIN, значение данного параметра всегда должно начинаться с . (точки), т.е. в текущем примере данная строка будет выглядеть так:

Читайте также:  Linux grep поиск строк

Инициализируем сервер командой:

После инициализации необходимо перезагрузть сервер. В процессе инициализации домена еще раз будет запрос на создание пароля администратора домена, а также запрос на создание пароля на базу данных kerberos. Если все прошло удачно, то на экране появится сообщение как на рисунке 1.

Рис. 1

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

Клиентская часть

Достаточно настроить ntp клиента для синхронизации времени, скопировать файл hosts с сервера, задать имя хоста, а также настроить /etc/ald/ald.conf. В файле /etc/ntp.conf необходимо добавить строки:

Зададим имя хоста (в данном пример ip адрес хоста 192.168.1.101):

hostnamectl set-hostname host1

Перед настройкой ald.conf необходимо установит необходимые пакеты:

sudo apt install fly-admin-ald-client ald-client

На рисунке 2 представлен пример файла ald.conf (данный файл аналогичен файлу ald.conf с сервера).

Рис. 2

После данным манипуляций можно ввести машину в домен командой:

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

Если все прошло удачно, то на экране отобразится текст как на рисунке 3

Рис. 3

Резервный сервер ald

Создать резервный сервер также довольно просто. Для этого на будущем резервном сервере (на резервном сервере также необходимо расположить корректный файл hosts), необходимо установить пакеты:

sudo apt install ald-server-common smolensk-security-ald

И отредактировать файл /etc/ald/ald.conf, изменив один параметр:

Рис. 4

Далее зададим корректное имя хоста для резервного сервера:

sudo hostnamectl set-hostname dc2.local

Теперь инициализируем резервный сервер командой:

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

Если, например, основной сервер вышел из строя, то для перевода резервного сервера в основной режим необходимо выполнить команду:

Дополнительно необходимо на всех клиентских рабочих станциях отредактировать файл /etc/ald/ald.conf, как это сделать одной командой будет рассказано в разделе «Дополнительно».

Рис. 5

В данном файле необходимо изменить параметр SERVER и SERVER_ID:

SERVER=dc2.local #dc2.local – резервный сервер

SERVER_ID=2 #2 – id резервного сервера

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

sudo ald-client commit-config

Администрирование ald сервера

Как было написано ранее, администрирование можно производить через стандартную системную утилиту fly-admin-smc. Ее можно запустить через консоль, либо в панели управления, перейдя на вкладку «Безопасность» и запустив аплет «Политика безопасности». Первым делом необходимо настроить политику паролей в соответствии с вашими требованиями:

Рис. 6

На рисунке 6 представлена вкладка политики паролей. После настройки политики можно приступить к созданию пользователей и настройке их прав.

Рис. 7

На вкладке «Пользователи» необходимо нажать на кнопку +, ввести имя, тип файловой системы установить local (также можно хранить каталоги на сетевых ресурсах), а также убрать галку «новая» напротив надписи «Первичная группа». При этом пользователь будет добавлен в группу «domain user». Далее создадим пароль для пользователя.

Читайте также:  Linux socket not connected

Рис. 8

На вкладке «Привилегии домена» можно сделать пользователя «администратором» домена, а также разрешить авторизацию с конкретных доменных машин, или с любых машин, входящих в домен.

Рис. 9Рис. 10

На вкладке «МРД» указываем, к каким меткам пользователь имеет доступ, а также уровень целостности.

Рис. 11

Дополнительно

Представьте такую ситуацию, в будущий домен будет входить 100, или более машин, раскидать в ручную файл hosts будет довольно проблематично, в данной ситуации поможет bash с СИ подобным синтаксисом.

На тестовом стенде имеется подсеть 192.168.1.0/24, 192.168.1.1 — сервер, 192.168.1.2-192.168.1.100 — рабочие станции. На каждой машине(в том числе и на сервере) имеется пользователь user, с паролем 12345678. Данный пользователь должен быть полноценным администратором(с доступом к sudo, во время установки системы создается пользователь имеющий данные права) системы и иметь уровень целостности 63, для выполнения данной цели необходимо выполнить следующие команды:

sudo usermod -aG astra-admin,astra-console user

sudo pdpl-user -l 0:0 -i 63 user

Если пользователь user отсутствует в системе — выполним следующие команды:

sudo useradd -m -G astra-admin,astra-console -s /bin/bash user

sudo pdpl-user -l 0:0 -i 63 user

Для того что бы не вводить пароль при распространении ключей, необходимо установить утилиту sshpass:

После данным манипуляций можно приступить к формированию ключа(без sudo, с правами пользователя user), для без парольного доступа:

Распространим ключи на рабочие станции:

Скопируем файл hosts на все машины с помощью утилиты scp:

После выполнения данных команд файл hosts будет распространен на все машины, которые будут входить в домен.

Таким же образом можно редактировать данный файл на всех хостах в домене(например необходимо удалить строку с именем хоста — host40):

Если Вам необходимо переключиться на резервный сервер на всех клиентских машинах, выполним команду:

Заключение

Как видно из данной публикации ald домен довольно просто разворачивать, а также очень просто администрировать используя стандартную системную утилиту fly-admin-smc.

Источник

Ввод в Active Directory Ubuntu 20 с Winbind

Ввод в Active Directory Ubuntu 20 – ключевая веха в процессе легализации вашей IT инфраструктуры. Всё это время я писал о всевозможных настройках бэкенда, который пользователям недоступен. Оно конечно не критично когда у вас весь фронтенд работает на масдае. Но шо таки делать если мы так не бохаты? Если масдай во фронте для нас дораха? Таки есть достойное решение. Достойное в достаточной мере. Вы конечно же не обойдётесь без масдая если вам нужен какой-то полноценный CADовский софт (веб версия подписки автокада уже очень даже юзабельна).

Но если ваш набор софта – не включает в себя тяжелейшие и незаменимые программные комплексы стоимость которых насчитывает много нулей, на фоне которых стоимость винды просто теряется – абсолютно бесплатная линуксовая реализация для вас! В конце данной статьи у вас будет введённая в домен Ubuntu 20, позволяющая любому пользователю домена авторизоваться и работать на ней как обычный пользователь. Данная статья основывается на подключении к контроллеру домена поднятому по моим выпущенным ранее статьям, работать должно с любой реализацией AD (но я конечно же не тестировал).

Читайте также:  Free antivirus linux avg

Нууу и собственно так как написание статей с большим объёмом матчасти – в буквальном смысле высасывает душу и отнимает десятки часов свободного времени с нулевым выходом лайков, репостов, начитки за неделю и всего всего что могло бы приблизить меня к монетизации, данная статья будет выпущена в виде краткого howto. Если окажется популярной и наберёт хотя бы 2 сотни лайков, выпущу продолжение с матчастью.

Исходные данные

  • Ubuntu 20 Desktop clear install
  • Контроллер домена с IP 192.168.1.100 и именем ag-dc-1
  • Домен adminguide.lan
  • Имя хоста est-makina-20, IP 192.168.1.45

Ввод в Active Directory Ubuntu 20 с winbind

Я конечно же как обычно описываю сферического коня в вакууме. Потому мы вводим в домен Ubuntu 20 которая только только установлена.

Подготовка

Для начала необходимо обновить систему

Следующим шагом мы устанавливаем все необходимые пакеты:

Не важно что вы укажете когда установщик спросит область kerberos, файл krb5.conf будет подменён.

После того как установка закончится, блокируем перезапись NetwotkManager’ом файла resolv.conf

И в раздел main добавляем новую строку

И настраиваем файл следующим образом:

Перенастраиваем файл hosts

И заменяем строку начинающуюся со 127.0.1.1 на

Здесь мы сталкиваемся с проблемой связанной с тем что в файле hosts должен быть алиас ip адреса и имени хоста. Так что мы теряем мобильность хоста и необходимо на DHCP сервере прописать статическую аренду для этого хоста.

Настраиваем ntp клиент

Открываем на редактирование файл конфигурации

И указываем ntp клиенту сервер времени нашего контроллера домена:

После чего перезапускаем ntp демона

После чего нам необходимо настроить Kerberos изменив файл /etc/krb5.conf

Ввод в Active Directory Ubuntu 20 – Настройка kerberos

Переименовываем существующий файл krb5.conf

И на его месте создаём новый файл, сохранив в нём следующие настройки:

Active Directory Ubuntu 20 – Настройка SAMBA

Теперь настраиваем SAMBA, сперва переименовав файл smb.conf и создав на его месте новый.

Вставляем туда следующее содержимое:

Создаём файл /etc/samba/user.map

Редактируем файл limits.conf

Редактируем файл nsswitch.conf

Строки group и passwd приводим к следующему виду:

в конец добавляем следующую строку:

И записываем в него следующее содержимое:

Вводим пароль администратора домена когда запросит

Active Directory Ubuntu 20 – Донастройка

Далее останавливаем и блокируем samba-ad-dc чтобы нидайбох чего не случилось.

Включаем необходимых демонов:

Наслаждаемся. Если что-то не работает пишите в комментариях, разберёмся

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

Источник

Оцените статью
Adblock
detector