Samba
Введение и терминология
В этой статье описано создание домена — централизированного хранилища пользователей и их аттрибутов.
Контроллер домена — программное оебспечение, обеспечивающее создание и функционирование сервера домена. В данном случае в качестве контроллера домена используется samba.
AD — Active Directory — домен разработки Microsoft. Samba реализует Samba AD — совместимый с Microsoft Active Directory домен, в который можно вводить и Linux, и Windows-клиенты.
Клиент — конечный член домена или ПО, позволяющее обспечить членство в домене.
В статье описывается создание лабораторной установки, состоящей из 1 сервера и 1 клиента, находящихся в одной подсети 192.168.122.0/24.
Все приведенные консольные команды выполняются от root, если не указано иное. Вход в root-коноль выполняется командой
su -
или
sudo -i
В качестве образа ОС для развертывания контроллера домена Samba AD можно взять:
- для виртуальных машин и железа: мини-сервер rosa2021.1 (https://abf.io/platforms/rosa2021.1/products/279)
- для контейнеров (systemd-nspawn, lxc и др.): rootfs rosa2021.1 (https://abf.io/platforms/rosa2021.1/products/284)
По адресу https://abf.io/platforms/rosa2021.1/products имеются иные сборки, в т.ч. для ARMv8 (aarch64).
Настройка контроллера домена
Настройка сети
Важно правильно настроить сеть на клиенте и сервере. В простых случаях, в т.ч. при поднятии тестовых стендов, делайте так, чтобы клиент и сервер находились в одной подсети. Например, чтобы у виртуальной машины с сервером был IP-адрес 192.168.10.2, а у виртуальной машины с клиентом — 192.168.10.3.
Рассмотрим настройку сети на сервере.
Установите полноквалифицированное (FQDN) доменное имя, состоящее из: имя_хоста.домен.зона, например:
server1.samba.loc
Тогда именем хоста будет server1, доменом — samba, доменной зоной — loc, realm — samba.loc.
Избегайте использования зоны .local или выключите или перенастройте Avahi, чтобы использовать ее.
Установим имя хоста на контроллере домена:
hostnamectl set-hostname server1.samba.loc
Посмотрите IP-адрес командой
ip a
Пример вывода:
[root@server1 ~]# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: host0@if6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether 32:e2:0b:ba:17:c5 brd ff:ff:ff:ff:ff:ff link-netnsid 0 inet 169.254.212.10/16 brd 169.254.255.255 scope link host0 valid_lft forever preferred_lft forever inet 192.168.122.12/24 brd 192.168.122.255 scope global dynamic host0 valid_lft 2577sec preferred_lft 2577sec inet6 fe80::30e2:bff:feba:17c5/64 scope link valid_lft forever preferred_lft forever
В данном примере IPv4-адрес — 192.168.122.12.