Графическая утилита для ввода Astra Linux SE/CE в домен AD
Существует графическая утилита для ввода Astra Linux SE 1.5 и Astra Linux CE 1.11 в домен AD. Для ее использования необходим пакет astra-winbind_1.7-1_all.deb
Установить командой:
Command |
---|
dpkg -i astra-winbind_1.7-1_all.deb |
Автоматически установить необходимые зависимости:
Command |
---|
apt-get -f install |
Скачать утилиту для ввода Astra Linux в домен AD:
и установить командой:
Command |
---|
dpkg -i fly-admin-ad_0.1.2_amd64.deb |
После запуска утилиты, в Главном меню → Настройки → появится утилита "Настройка Active Directory"
Информация |
---|
Напоминаем о том, что перед вводом клиента в |
AD или ALD необходимо корректно настроить сеть. |
Информация |
---|
Данная статья применима к:
|
Внимание! Если в дальнейшем будет изменятся конфигурационный файл samba, будет выполнено повторное введение в AD или возникнет затруднение, то обязательно потребуется очистка /var/cache/samba/* и /var/lib/samba/*
Ввод Astra Linux в домен Windows
Исходные данные:
Контроллер домена:
Информация | ||
---|---|---|
| ||
Имя - dc Домен – dev.local ОС - Windows Server 2008 R2. Настроен как контроллер домена ip - 192.168.1.1 |
Веб-сервер:
Информация | ||
---|---|---|
| ||
Имя – ws3 ОС - Astra Linux 1.5 SE. Установлена без ALD и без режима киоска. Из дополнительного ПО на этапе установки выбрано: базовые средства, рабочий стол Fly, средства работы в сети, сетевые сервисы, СУБД. ip - 192.168.1.3 |
Разблокирование суперпользователя (root)
Для более удобной работы разблокируем учётную запись root:
Command |
---|
$sudo passwd –u root |
Назначим пароль для учётной записи root:
Command |
---|
$sudo passwd root |
root разблокирован. Можно использовать su или перезайти root-ом. Можно не использовать учётную запись root, а команды выполнять с использованием sudo. По завершении настроек учётную запись root необходимо заблокировать!
Настройка сети
В начало файла /etc/hosts добавить строки:
Блок кода | ||||
---|---|---|---|---|
| ||||
192.168.1.3 ws3.dev.local ws3
127.0.0.1 localhost |
Строку с 127.0.1.1 ws3 удалить.
Убедиться, что в файле /etc/hostname правильно указано имя машины:
Блок кода | ||
---|---|---|
| ||
ws3 |
Назначим статический ip-адрес. В файл /etc/network/interfaces добавить строки:
Блок кода | ||||
---|---|---|---|---|
| ||||
auto eth0
iface eth0 inet static
address 192.168.1.3
gateway 192.168.1.1
netmask 255.255.255.0 |
Создать файл /etc/resolv.conf и добавить строки:
Блок кода | ||
---|---|---|
| ||
domain dev.local
search dev.local
nameserver 192.168.1.1 |
Перезапустим сетевую службу:
Command |
---|
service networking restart |
Просмотреть доступные сетевые интерфейсы и назначенные адреса:
Command |
---|
ip a |
с ws3 можно проверить отклик контроллера домена по протоколу icmp по имени:
Command |
---|
ping dc.dev.local |
Синхронизируем время с контроллером домена:
Command |
---|
ntpdate dc.dev.local |
Установка требуемых пакетов
Проверить установлены ли samba, winbind, ntp, apache2 и postgresql:
Command |
---|
dpkg -l samba winbind ntp apache2 postgresql |
Установить дополнительные пакеты (потребуется диск с дистрибутивом):
Command |
---|
apt-get install nscd nslcd libpam-winbind libpam-krb5 libapache2-mod-auth-kerb php5 php5-pgsql php5-sybase php5-ldap libsasl2-modules-ldap libsasl2-modules-gssapi-mit krb5-user |
Выполнить команду:
Command |
---|
|
Настройка конфигурационных файлов
Редактируем файл /etc/krb5.conf и добавляем недостающую информацию в соответствующие разделы:
Блок кода | ||
---|---|---|
| ||
[libdefaults]
default_realm = DEV.LOCAL
krb4_config = /etc/krb.conf
krb4_realms = /etc/krb.realms
kdc_timesync = 1
ccache_type = 4
forwardable = true
proxiable = true
v4_instance_resolve = false
v4_name_convert = {
host = {
rcmd = host
ftp = ftp
}
plain = {
something = something-else
}
}
fcc-mit-ticketflags = true
[realms]
DEV.LOCAL = {
kdc = dc.dev.local
admin_server = dc.dev.local
default_domain = dev.local
}
[domain_realm]
.dev.local = DEV.LOCAL
dev.local = DEV.LOCAL
[login]
krb4_convert = true
krb4_get_tickets = false |
Редактируем файл /etc/samba/smb.conf. Если каких-то параметров нет, то добавляем:
Блок кода |
---|
[global]
workgroup = DEV
realm = DEV.LOCAL
os level = 0
invalid users = root
load printers = no
show add printer wizard = no
printcap name = /dev/null
disable spoolss = yes
dns proxy = no
security = ads
kerberos method = secrets and keytab
dedicated keytab file = /etc/krb5.keytab
encrypt passwords = true
domain logons = no
socket options = TCP_NODELAY
local master = no
domain master = no
preferred master = no
idmap config * : range = 10000-20000
idmap config * : backend = tdb
template shell = /bin/bash
template homedir = /home/%D/%U
winbind enum groups = yes
winbind enum users = yes
winbind use default domain = yes
winbind offline logon = yes
winbind refresh tickets = yes |
Внимание! Если в дальнейшем будет изменятся конфигурационный файл samba, обязательно требуется очистка /var/cache/samba/* и /var/lib/samba/*
Проверим нет ли ошибок в конфигурации samba, выполнив команду:
Command |
---|
testparm |
Редактируем файл /etc/security/limits.conf. Добавляем в конец:
Блок кода | ||||
---|---|---|---|---|
| ||||
* - nofile 65536
root - nofile 65536 |
Выполнить команду:
Command |
---|
ulimit -n 65536 |
Радактируем файл /etc/nsswitch.conf:
Блок кода |
---|
passwd: compat winbind
group: compat winbind
shadow: compat
hosts: files dns
networks: files
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis
|
Редактируем файл /etc/pam.d/common-session. Добавляем в конец:
Блок кода |
---|
session optional pam_mkhomedir.so skel=/etc/skel/ umask=0077 |
Перезапустим службы:
Command |
---|
service samba restart service winbind restart service ntp restart service nscd restart service nslcd restart |
Вводим Astra Linux в домен windows (требуется учётная запись администратора домена):
Command |
---|
net ads join -U Administrator |
В результате успешного выполнения предыдущей команды должен появиться файл /etc/krb5.keytab. Просмотреть список принципалов в этом файле можно командой:
Command |
---|
net ads keytab list |
Позволим остальным читать файл /etc/krb5.keytab:
Command |
---|
chmod 0644 /etc/krb5.keytab |
Добавим в автозапуск:
Command |
---|
insserv -v /etc/init.d/apache2 insserv -v /etc/init.d/samba |
Проверить установлен ли Postgresql в автозагрузку:
Command |
---|
chkconfig --list postgresql |
Перезагрузим ОС:
Command |
---|
reboot |
Проверим загрузились ли требуемые службы:
Command |
---|
service samba status service winbind status service nscd status service nslcd status service apache2 status service postgresql status |
Проверим связь с доменом и работу служб, последовательно выполнив команды:
Command |
---|
net ads testjoin wbinfo –p wbinfo –t wbinfo –u getent passwd | grep DEV |
Проверим Kerberos. Попробуем получить tgt для доменного пользователя:
Command |
---|
kinit Administrator klist kdestroy |
Настройка Apache и Postgresql на работу с Kerberos
Редактируем файл /etc/apache2/sites-available/default. Настраиваем директорию на использование Kerberos:
Блок кода |
---|
<Directory /var/www/>
AuthType Kerberos
KrbServiceName host/ws3.dev.local@DEV.LOCAL
Krb5Keytab /etc/krb5.keytab
KrbMethodK5Passwd off
KrbLocalUserMapping on
KrbSaveCredentials on
Require valid-user
</Directory> |
Принципал, задаваемый параметром KrbServiceName, должен быть в файле таблицы ключей /etc/krb5.keytab. Проверить можно командой:
Command |
---|
net ads keytab list |
Назначим права для пользователя www-data, от имени которого работает Apache, для доступа к macdb и к файлу таблицы ключей:
Command |
---|
usermod -a -G shadow www-data setfacl -d -m u:www-data:r /etc/parsec/macdb setfacl -R -m u:www-data:r /etc/parsec/macdb setfacl -m u:www-data:rx /etc/parsec/macdb setfacl -m u:www-data:r /etc/krb5.keytab |
Всем доменным пользователям, которым требуется доступ к веб-серверу, необходимо назначить мандатные метки и уровни:
Command |
---|
pdpl-user -z domain_user |
Перезапустим Apache:
Command |
---|
service apache2 restart |
Редактируем файл /etc/postgresql/9.4/main/postgresql.conf.:
Блок кода |
---|
listen_addresses = '*'
krb_server_keyfile = '/etc/krb5.keytab'
krb_caseins_users = off |
Редактируем файл /etc/postgresql/9.4/main/pg_hba.conf:
Блок кода |
---|
local all all peer
host all all 192.168.1.0/24 gss |
Назначим права для пользователя postgres, от имени которого работает Postgresql, для доступа к macdb и к файлу таблицы ключей:
Command |
---|
usermod -a -G shadow postgres setfacl -d -m u:postgres:r /etc/parsec/macdb setfacl -R -m u:postgres:r /etc/parsec/macdb setfacl -m u:postgres:rx /etc/parsec/macdb setfacl -m u:postgres:r /etc/krb5.keytab |
Перезапустим Postgresql:
Command |
---|
service postgresql restart |
На контроллере домена dc нужно добавить принципала к учётной записи машины ws3, для чего выполнить команду от имени администратора:
Command |
---|
setspn -A postgres/ws3.dev.local ws3 |
Если пользователь root был разблокирован, то его необходимо заблокировать выполнив команду:
Command |
---|
usermod –e 1 root |
Графический инструмент fly-admin-ad-client для ввода Astra Linux SE/CE в домен AD (ОС ОН Орёл 2.12 и ОС СН Смоленск 1.6)
Для ввода Astra Linux в существующий домен AD Windows рекомендуется использовать входящий в состав дистрибутивов ОС ОН Орёл 2.12 и ОС СН Смоленск 1.6 графический инструмент fly-admin-ad-client.
Данный инструмент позволяет выполнить ввод в домен в автоматизированном режиме
Инструмент может быть установлен с помощью графического менеджера пакетов, или из командной строки командой
Command |
---|
apt install fly-admin-ad-client |
После установки инструмент доступен в Главном меню ("Пуск"→ "Панель управления" → "Сеть" → "Настройка сервера Active Directory").
Для ввода в домен необходимо запустить инструмент, указать необходимые параметры и нажать кнопку "Подключиться".