> For the complete documentation index, see [llms.txt](https://enterprise-ua.hideez.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://enterprise-ua.hideez.com/korporativnii-server-hideez/administration/pidklyuchennya-servera-linux-do-active-directory.md).

# Підключення сервера Linux до Active Directory

Hideez Enterprise Server – Підключення сервера Linux до Active Directory

Відредагуйте файл /etc/hosts, додайте (або відредагуйте) рядок із зазначенням FQDN для цього хосту (змініть його на ім’я свого хосту та \<Domain\_Name> на ім’я домену):

```
127.0.1.1       <hostname>.<Domain_Name>  <hostname>
```

Залежно від налаштувань мережі може знадобитися додати FQDN для сервера AD.

```
<server_ip>       <Server_Name>.<Domain_Name>  <Server_Name>
```

Сервер AD повинен бути встановлений як сервер DNS для правильного підключення до AD. Якщо у вашій мережі працює DHCP, як правило, адміністратор вже призначив правильні налаштування для вашого сервера. Ви можете побачити список поточних DNS у файлі resolv.conf:

```
cat /etc/resolv.conf
```

IP-адреса сервера AD відображатиметься як DNS-сервер. В іншому випадку ви можете вручну призначитиDNS-сервер. Під час використання DHCP ви не можете змінити resolv.conf напряму, тому необхідно буде виконати кілька простих кроків.

### Ubuntu 18.04

Давайте встановимо пакет resolvconf

```
sudo apt update
sudo apt install resolvconf
sudo systemctl enable resolvconf.service
```

Потім вам потрібно буде відредагувати файл /etc/resolvconf/resolv.conf.d/head. Додайте рядок:

```
nameserver  <server_ip>
```

і виконаємо:

```
sudo systemctl start resolvconf.service
```

### Centos 7

Необхідно додати наступні рядки

```
PEERDNS=no
DNS1=<server_ip>
```

у файл \`/etc/sysconfig/network-scripts/ifcfg-\* Тут вам потрібно замінити ifcfg-\* на назву вашого мережевого інтерфейсу та перезапустити NetworkManager

```
sudo systemctl restart  NetworkManager
```

Ще раз перевірте файл resolv.conf, щоб переконатися, що все правильно

<pre><code><strong>cat /etc/resolv.conf
</strong></code></pre>

Переконайтеся, що доменне ім’я розпізнається. **Примітка:** у Centos 7 може знадобитися встановити пакет bind-utils:

```
sudo yum install bind-utils -y
```

```
nslookup <Domain_Name>
```

Встановіть необхідні пакети

#### Ubuntu 18.04

```
sudo apt install realmd samba-common-bin samba-libs sssd-tools krb5-user adcli
```

#### Centos 7

```
sudo yum install sssd realmd oddjob oddjob-mkhomedir adcli samba-common samba-common-tools krb5-workstation openldap-clients policycoreutils-python -y
```

Ви повинні підтвердити домен під час встановлення Kerberos і вказати ім’я сервера. Давайте перевіримо, чи наш домен видно в мережі:

```
realm discover <Domain_Name>
```

Приєднайте машину до домену:

```
sudo realm --verbose join <Domain_Name> -U <YourDomainAdmin> --install=/
```

Якщо помилки немає, все пройшло добре. Ви можете перейти до контролера домену та перевірити, чи наш сервер Linux відображається в домені. Якщо сервер Active Directory використовує самопідписні сертифікати, вам потрібно відредагувати файл `ldap.conf.` В ubuntu він зберігається в `/etc/ldap/ldap.conf`, в Centos - `/etc/openldap/ldap.conf`. Необхідно вказати (додати в кінець файлу) цей параметр:

```
TLS_REQCERT never
```

### Перевірка встановлення

Наприклад, щоб отримати всіх користувачів (потрібно ввести пароль):

```
ldapsearch -x -H "ldaps://<Domain_Name>" -D "<YourDomainAdmin>@<Domain_Name>" -W  -b "dc=<dc>,dc=<dc>, ..." "objectCategory=person" name
```

Якщо у нас є домен hideez.example.com і адміністратор з іменем «administrator», команда виглядатиме так::

```
ldapsearch -x -H "ldaps://hideez.example.com" -W -D "administrator@hideez.example.com" -b "dc=hideez,dc=example,dc=com"  "objectCategory=person" name
```

У разі помилки ви можете додати ключ -d1 і прочитати опис помилки.
