Инструменты пользователя

Инструменты сайта


samba_ad

Различия

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

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
samba_ad [2019/10/01 13:34]
sector
samba_ad [2020/09/15 07:03] (текущий)
sector
Строка 1: Строка 1:
-==== Настраиваем систему, машина тестовая, обновимся и отключим все что не нужно: ====+==== Установка samba4 в роли контроллера домена на CentOS 7  ====
  
  
Строка 16: Строка 16:
 #vi /etc/selinux/config #vi /etc/selinux/config
  
-<code | ini> 
 SELINUX=disabled SELINUX=disabled
 </code> </code>
Строка 35: Строка 34:
 </code> </code>
  
-Настроим сеть:+==== Настроим сеть: ====
  
 <code | ini> <code | ini>
Строка 45: Строка 44:
 NETMASK=255.255.255.0 NETMASK=255.255.255.0
 GATEWAY=192.168.1.1 GATEWAY=192.168.1.1
-DNS=8.8.8.8+PEERDNS=no
 </code> </code>
  
-Установим имя:+ 
 +<code | ini> 
 + 
 +#vi /etc/resolv.conf 
 + 
 +nameserver 8.8.8.8 
 +</code> 
 +==== Установим имя: ==== 
  
 <code> <code>
Строка 54: Строка 61:
 </code> </code>
  
-Пропишем хосты: +==== Пропишем хосты: ====
  
 <code> <code>
Строка 63: Строка 70:
  
  
-Перезапустим сеть:+==== Перезапустим сеть: ==== 
  
 <code | ini> <code | ini>
Строка 71: Строка 79:
 </code> </code>
  
-Приступим к установке пакетов:+==== Приступим к установке пакетов: ====
  
 <code | ini> <code | ini>
Строка 95: Строка 103:
 </code> </code>
  
-Приступим к установке (к configure и make можно добавить параметр -j и указать кол-во ядер, что бы ускорить процесс сборки пример: -j4):+==== Приступим к установке (к configure и make можно добавить параметр -j и указать кол-во ядер, что бы ускорить процесс сборки пример: -j4): ====
  
 <code | ini> <code | ini>
Строка 130: Строка 138:
 </code> </code>
  
-Настроим Bind:+==== Настроим Bind: ====
  
 <code | ini> <code | ini>
Строка 203: Строка 211:
 </code> </code>
  
-Включим автозапуск службы, перезапустим и посмотрим статус:+==== Включим автозапуск службы, перезапустим и посмотрим статус: ====
  
 <code | ini> <code | ini>
Строка 221: Строка 229:
 </code> </code>
  
-Начнем установку КД:+==== Начнем установку КД: ====
  
 <code | ini> <code | ini>
Строка 238: Строка 246:
 #systemctl start samba #systemctl start samba
 </code> </code>
- 
- 
- 
  
 Раскомментируем include и keytab в /etc/named.conf о котором упоминали выше. Раскомментируем include и keytab в /etc/named.conf о котором упоминали выше.
Строка 285: Строка 290:
 </code> </code>
  
-Получим билет Kerberos и посмотрим что получили:+==== Получим билет Kerberos и посмотрим что получили: ====
  
 <code| ini> <code| ini>
Строка 292: Строка 297:
 </code> </code>
  
-Проверим возможность динамического обновления записей DNS:  +==== Проверим возможность динамического обновления записей DNS: ==== 
 +  
 <code | ini> <code | ini>
  
Строка 302: Строка 308:
 </code> </code>
  
-Создадим прямую и обратную зону: +==== Создадим прямую и обратную зону: ==== 
  
 <code | ini> <code | ini>
Строка 314: Строка 320:
 Готово. Готово.
  
-Настроим вторичный КД:+==== Настроим вторичный КД: ====
  
 На 1-й, тот что настраивали выше в resolv добавим: На 1-й, тот что настраивали выше в resolv добавим:
Строка 347: Строка 353:
  
 <code | ini> <code | ini>
-#yum install -y bash-completion nano mc htop wget bind bind-utils docbook-style-xsl gcc gdb gnutls-devel gpgme-devel jansson-devel keyutils-libs-devel krb5-workstation libacl-devel libaio-devel libarchive-devel libattr-devel libblkid-devel libtasn1 libtasn1-tools libxml2-devel libxslt lmdb-devel openldap-devel pam-devel perl perl-ExtUtils-MakeMaker perl-Parse-Yapp popt-devel python3-cryptography python3-dns python3-gpg python36-devel readline-devel rpcgen systemd-devel tar zlib-devel ntp +#yum install -y bash-completion nano mc htop wget bind bind-utils  
 +bind-sdb docbook-style-xsl gcc gdb gnutls-devel gpgme-devel jansson-devel  
 +keyutils-libs-devel krb5-workstation libacl-devel libaio-devel libarchive-devel  
 +libattr-devel libblkid-devel libtasn1 libtasn1-tools libxml2-devel libxslt  
 +lmdb-devel openldap-devel pam-devel perl perl-ExtUtils-MakeMaker perl-Parse-Yapp  
 +popt-devel python3-cryptography python3-dns python3-gpg python36-devel readline-devel  
 +rpcgen systemd-devel tar zlib-devel ntp
 </code> </code>
  
Строка 406: Строка 417:
  
 </code> </code>
- 
  
 Настроим Bind: Настроим Bind:
Строка 507: Строка 517:
 </code> </code>
  
-Запуск samba:+==== Запуск samba: ====
  
 <code | ini> <code | ini>
Строка 532: Строка 542:
 </code> </code>
  
-Входим в домен:+==== Входим в домен: ====
  
 <code | ini> <code | ini>
Строка 630: Строка 640:
 .... ....
 dns forwarder=192.168.1.170 dns forwarder=192.168.1.170
 +min protocol = NT1 #если в вашей сети есть машины с Win XP
 .... ....
 </code> </code>
Строка 640: Строка 651:
 </code> </code>
  
-Пробуем добавить пользователя:+==== Пробуем добавить пользователя: ====
  
 <code | ini> <code | ini>
Строка 652: Строка 663:
 #samba-tool user list #samba-tool user list
 </code> </code>
 +
 +Продолжим.
 +
 +Настроим управление доступом к шарам из под Windows, за это у нас отвечает пакет ACL он уже установлен, настроим:
 +
 +Добавим в smb.conf папку:
 +<code | ini>
 +...
 +[ShareACL]
 +       
 +</code>
 +
 +<code | ini>
 +samba-tool ldapcmp ldap://srv1c.test.local ldap://fst.test.local -UАдминистратор - сравнение
 +</code>
 +Тут могут быть и ошибки т.к. самба подхватывает не все параметры. 
 +результат:
 +<code | ini>
 +Attributes with different values:
 +
 +    lastLogonTimestamp
 +    servicePrincipalName
 +    userParameters
 +
 +* Comparing [CONFIGURATION] context...
 +
 +* Objects to be compared: 1679
 +
 +* Result for [CONFIGURATION]: SUCCESS
 +
 +* Comparing [SCHEMA] context...
 +
 +* Objects to be compared: 1550
 +
 +* Result for [SCHEMA]: SUCCESS
 +
 +* Comparing [DNSDOMAIN] context...
 +
 +* Objects to be compared: 175
 +
 +* Result for [DNSDOMAIN]: SUCCESS
 +
 +* Comparing [DNSFOREST] context...
 +
 +* Objects to be compared: 20
 +
 +* Result for [DNSFOREST]: SUCCESS
 +ERROR: Compare failed: -1
 +</code>
 +
 +<code | ini>
 +samba-tool dbcheck --cross-ncs -проверка на ошибки
 +samba-tool dbcheck --cross-ncs --fix - исправление ошибок
 +</code>
 +Если отвалилась репликация: 
 +<code | ini>
 +
 +Службе каталогов не удается реплицировать следующий объект из исходной службы каталогов по следующему сетевому адресу из-за различий в схеме доменных служб Active Directory. 
 + 
 +Объект:
 +CN=SQL,CN=Computers,DC=domain,DC=local 
 +Сетевой адрес:
 +a5714808-efa7-49c2-a108-b787dd13bdd4._msdcs.domain.local 
 + 
 +Перед попыткой синхронизации следующего раздела каталога доменные службы Active Directory предпримут попытку синхронизации схемы. 
 +Раздел каталога:
 +DC=domain,DC=local
 +
 +</code>
 +
 +
 +<code | ini>
 +Репликация раздела каталога приложений DC=domain,DC=local из источника a5714808-efa7-49c2-a108-b787dd13bdd4 (fst.domain.local) была прервана. Для репликации требуется непротиворечивое состояние схемы, но последняя  попытка синхронизации схемы не удалось. Совершенно необходимо, чтобы  репликация схемы функционировала нормально. Проверьте предыдущие сообщения  об ошибках, чтобы получить дополнительные диагностические сведения.  Если эта ситуация повторится, обратитесь в службу поддержки Майкрософт за помощью. Ошибка 8418: Произошла ошибка операции репликации из-за несоответствия схемы задействованных серверов..
 +</code>
 +
 +Проверяем версию схемы:
 +<code | ini>
 +ldbsearch -H /usr/local/samba/private/sam.ldb -b 'cn=Schema,cn=Configuration,dc=local,dc=local' -s base objectVersion
 +# record 1
 +dn: CN=Schema,CN=Configuration,DC=local,DC=local
 +objectVersion: 47
 +</code>
 +Samba - 47 версия
 +
 +Windows:
 +<code | ini>
 +HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NTDS\Parameters\SystemSchemaVersion - тоже 47
 +</code>
 +
 +Исходя из информации в сообщении после которого выводилась ошибка я подумал что у меня не все в порядке с компьютером под именем SQL
 +Сравнение между контроллерами говорило следующее:
 +
 +<code | ini>
 +samba-tool ldapcmp ldap://srv1c.domain.local ldap://fst.domain.local -UАдминистратор
 +
 +
 +Comparing:
 +'CN=SQL,CN=COMPUTERS,DC=DOMAIN,DC=LOCAL' [ldap://srv1c.domain.local]
 +'CN=SQL,CN=COMPUTERS,DC=DOMAIN,DC=LOCAL' [ldap://fst.domain.local]
 +    Difference in attribute values:
 +        servicePrincipalName =>
 +[b'HOST/SQL', b'HOST/sql.domain.local', b'RestrictedKrbHost/SQL', b'RestrictedKrbHost/sql.domain.local', b'TERMSRV/SQL', b'TERMSRV/sql.domain.local', b'WSMAN/SQL', b'WSMAN/sql.domain.local', b'tapinego/SQL', b'tapinego/sql.domain.local']
 +[b'HOST/SQL', b'HOST/sql.domain.local', b'RestrictedKrbHost/SQL', b'RestrictedKrbHost/sql.domain.local', b'TERMSRV/SQL', b'TERMSRV/sql.domain.local', b'WSMAN/SQL', b'WSMAN/sql', b'WSMAN/sql.domain.local', b'tapinego/SQL', b'tapinego/sql.domain.local']
 +
 +    FAILED
 +</code>
 +
 +Решил попытаться заменить атрибуты т.е. взять атрибуты с виндового сервера и заменить на линуксовом
 +
 +<code | ini>
 +ldifde -f SQL.ldif -d "CN=SQL,CN=Computers,DC=domain,DC=local" -s srv1c
 +</code>
 +
 +Далее отредактировал файл SQL.ldif до следующего состояния:
 +<code | ini>
 +dn: CN=SQL,CN=Computers,DC=domain,DC=local
 +changetype: modify
 +replace: servicePrincipalName
 +servicePrincipalName: tapinego/SQL
 +servicePrincipalName: tapinego/sql.domain.local
 +servicePrincipalName: TERMSRV/sql.domain.local
 +servicePrincipalName: WSMAN/sql.domain.local
 +servicePrincipalName: RestrictedKrbHost/sql.domain.local
 +servicePrincipalName: HOST/sql.domain.local
 +servicePrincipalName: TERMSRV/SQL
 +servicePrincipalName: WSMAN/SQL
 +servicePrincipalName: RestrictedKrbHost/SQL
 +servicePrincipalName: HOST/SQL
 +-
 +</code>
 +
 +Загрузим файл на второй контроллер домена который работает под Linux
 +<code | ini>
 +ldifde -i -f SQL.ldif -s fst
 +</code>
 +
 +И перезапустим репликацию:
 +<code | ini>
 +repadmin /replicate srv1c fst dc=domain,dc=local
 +repadmin /replicate fst srv1c dc=domain,dc=local
 +</code>
 +и проверим:
 +<code | ini>
 +C:\>repadmin /replsummary
 +Время запуска сводки по репликации: 2020-09-15 14:02:18
 +
 +Начат сбор данных для сводки по репликации, подождите:
 +  .....
 +
 +
 +Исходный DSA        наиб. дельта     сбоев/всего %%   ошибка
 + FST                       11m:56s    0 /      0
 + SRV1C                     02m:23s    0 /      0
 +
 +
 +Конечный DSA        наиб. дельта      сбои/всего %%   ошибка
 + FST                       02m:23s    0 /      0
 + SRV1C                     11m:56s    0 /      0
 +
 +</code>
 +
 +https://wiki.samba.org/index.php/Transferring_and_Seizing_FSMO_Roles#Transferring_an_FSMO_Role - если все умерло.\\
 +https://wiki.samba.org/index.php/Main_Page - документация
  
 Надеюсь ничего не забыл :-) Надеюсь ничего не забыл :-)
samba_ad.1569936893.txt.gz · Последнее изменение: 2019/10/01 13:34 — sector

Яндекс.Метрика