Необходимость интегрировать машину с ОС Ubuntu в домен Windows – довольно актуальная и распространенная задача. Ниже приведена пошаговая инструкция как это можно осуществить:

 

1. Задайте имя настраиваемого компьютера в файле /etc/hostname

Запросите существующее имя хоста:

cat /etc/hostname

При необходимости задайте новое имя хоста:

echo myhost > /etc/hostname

Примечание. Имя компьютера не может быть localhost т.к. localhost — это имя для 127.0.0.1 (прописывается в /etc/hosts при установке системы).

 

2. Укажите полное имя контроллера домена в файле /etc/hosts

Добавьте статическую запись с полным именем контроллера домена в конец файла /etc/hosts. Прямое соответствие IP адреса имени компьютера необходимо для того, чтобы вместо IP адреса компьютера можно было указывать его имя.

echo 192.168.1.51 hostname.db.local hostname >> /etc/hosts
 

3. Установите DNS сервер на настраиваемом компьютере

Контроллер домена должен быть задан первым DNS для поиска (проверить можно командой nslookup)

lin69@lin69:~/ds$ nslookup www.google.ru
Server:         192.168.1.51
Address:        192.168.1.51#53
 
Non-authoritative answer:
Name:   www.google.ru
Address: 216.58.201.163
 

4. Установите клиент Kerberos

sudo apt-get install krb5-user libpam-krb5 libpam-ccreds auth-client-config
 

5. Установите Samba, Winbind и NTP

sudo apt-get install samba winbind ntp
 

6. Откорректируйте файл /etc/krb5.conf, добавив в него полное имя домена по умолчанию, имя контроллера домена и параметр realm

[libdefaults]
    default_realm       =           DB.LOCAL    # domain specific parameter (полное имя домена по умолчанию)
    clockskew           =           300
    ticket_lifetime     =           1d
    forwardable         =           true
    proxiable           =           true
    dns_lookup_realm    =           true
    dns_lookup_kdc      =           true
   
 
   [realms]
        DB.LOCAL = {
        kdc            =       hostname.db.local   # domain specific parameter (имя контроллера домена)
        admin_server   =       hostname.db.local   # domain specific parameter (имя контроллера домена)
        default_domain =       DB.LOCAL         # domain specific parameter (полное имя домена по умолчанию)
        }
 
[domain_realm]
        .db.local = DB.LOCAL  # domain specific parameter
        db.local = DB.LOCAL   # domain specific parameter
 
[appdefaults]
        pam = {
        ticket_lifetime         = 1d
        renew_lifetime          = 1d
        forwardable             = true
        proxiable               = false
        retain_after_close      = false
        minimum_uid             = 0
        debug                   = false
        }

Примечание. Перед использованием конфигурационных файлов комментарии необходимо удалить.

 

7. Откорректируйте файл /etc/samba/smb5.conf прописав в нем короткое имя домена и полное имя домена

[global]
   workgroup = DB                   # domain specific parameter (короткое имя домена)
   realm = DB.LOCAL                 # domain specific parameter (полное имя домена)
   security = ADS
   encrypt passwords = true
   socket options = TCP_NODELAY
   domain master = no
   local master = no
   preferred master = no
   os level = 0
   domain logons = 0
   server string = %h server (Samba, Ubuntu)
   dns proxy = no
   log file = /var/log/samba/log.%m
   max log size = 1000
   syslog = 0
   panic action = /usr/share/samba/panic-action %d
   server role = standalone server
   passdb backend = tdbsam
   obey pam restrictions = yes
   unix password sync = yes
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
   pam password change = yes
   map to guest = bad user
   usershare allow guests = yes

Примечание. Перед использованием конфигурационных файлов комментарии необходимо удалить.

 

8. Войдите в домен

После успешного входа, должны пинговаться активные компьютеры Active Directory и обратно тоже. Например:

vertica@vertica:~/ds$ ping user.db.local
PING user.db.local (192.168.1.39) 56(84) bytes of data.
64 bytes from user.db.local (192.168.1.39): icmp_seq=1 ttl=128 time=0.200 ms
64 bytes from user.db.local (192.168.1.39): icmp_seq=2 ttl=128 time=0.560 ms
 

9. Проверьте, что вы можете авторизироваться в домене

kinit user@DOMAIN.COM

Примечание. Имя домена должно быть заглавными буквами.

 

Если все настроено правильно, будет создан тикет. Убедитесь, что тикет получен:

klist
Комментарии