362 subscribers

Ввод в Active Directory Ubuntu 20 с Winbind

770 full reads
1,4k story viewsUnique page visitors
770 read the story to the endThat's 54% of the total page views
3,5 minutes — average reading time
Ввод в Active Directory Ubuntu 20 с Winbind

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

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

Нууу и собственно так как написание статей с большим объёмом матчасти – в буквальном смысле высасывает душу и отнимает десятки часов свободного времени с нулевым выходом лайков, репостов, начитки за неделю и всего всего что могло бы приблизить меня к монетизации, данная статья будет выпущена в виде краткого 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 которая только только установлена.

Подготовка

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

sudo apt update && sudo apt dist-upgrade -y

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

sudo apt install krb5-user samba smbclient winbind libpam-krb5 libpam-winbind libnss-winbind ntp -y

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

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

sudo nano /etc/NetworkManager/NetworkManager.conf

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

dns=none

Бэкапим resolv.conf

sudo mv /etc/resolv.conf /etc/resolv.conf.original
sudo nano /etc/resolv.conf

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

domain adminguide.lan
search adminguide.lan
nameserver 192.168.1.100
# nameserver 192.168.1.101

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

sudo nano /etc/hosts

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

192.168.1.45 est-makina-20.adminguide.lan est-makina-20

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

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

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

sudo nano /etc/ntp.conf

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

server ag-dc-1.adminguide.lan

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

sudo systemctl restart ntp

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

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

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

sudo mv /etc/krb5.conf /etc/krb5.conf.original
sudo nano /etc/krb5.conf

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

[libdefaults]
default_realm=ADMINGUIDE.LAN
dns_lookup_realm= false
dns_lookup_kdc=true

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

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

sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.original
sudo nano /etc/samba/smb.conf

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

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

sudo nano /etc/samba/user.map

и вставляем следующее:

!root = ADMINGUIDE\Administrator

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

sudo nano /etc/security/limits.conf

вставляем следующее:

* - nofile 16384
root - nofile 16384

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

sudo nano /etc/nsswitch.conf

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

passwd: files winbind
group: files winbind

В файл common-session

sudo nano /etc/pam.d /common-session

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

session optional pam_mkhomedir.so skel=/etc/skel umask= 077

Создаём следующий файл:

sudo nano /etc/skel/.xsession

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

gnome-session --session=ubuntu-2d

Вводим машину в домен:

sudo net ads join -U Administrator

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

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

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

sudo systemctl stop samba-ad-dc
sudo systemctl disable samba-ad-dc

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

sudo systemctl enable smbd nmbd winbind
sudo systemctl restart smbd nmbd winbind

Перезагружаем машину

sudo reboot -h now

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

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