Настройка рабочей станции на основе Ubuntu 7.10 для домена Windows от Исаева Романа А.

Цели:
1.   Обеспечить авторизацию пользователя в домене Active Directory
2.   Обеспечить прозрачную и сквозную авторизацию на ресурсах сети
3.   Закрыть для пользователя использование внешних носителей таких как Flash, CD, Floppy.
4.   Обеспечить хранение пользовательских данных на сервере.
Для тех кому 4 пункт бесполезен я сделал пометки.
для тех кого задалбливает набирать перед каждой командой sudo
сделайте sudo -i и все следующие команды до закрытия терминала будут от рута идти.
Все команды в этом руководстве требуют прав root так, что я обычно пользуюсь sudo -i
Все конфигурационные составлены мной и используются в действующей сети.
Для получения большей информации смотрите оригинальные файлы конфигурации.
DOMAIN ваш домен. dc это сокращение от domain controller
редактируйте чем хотите. Я это делаею либо через mcedit либо через vim

1. Редактируем часовой пояс gksudo gedit /etc/default/rcS
cтавим UTC=no

2. Настраиваем сеть.
Проверяем наличие пинга до домен-контроллера(DC) по полному доменному имени (FQDN), еcли проблемы - настраиваем /etc/resolv.conf, в моём cлучае - при получении IP через DHCP, проблем не было.
# ping dc.domain.ru

mcedit /etc/default/ntpdate
NTPSERVERS="dc.domain.ru"            <--- меняем эту cтроку указывая домен контроллер

в домене с несколькими домен контроллерами главным сервером времени является эмулятор PDC. остальные dc берут время у него.

даем команду на синхронизацию
/etc/network/if-up.d/ntpdate

Пропиcываем полное FQDN для настраиваемой машины workstation

# mcedit /etc/hosts
127.0.0.1   workstation.domain.ru localhost workstation

проверка   

# ping  workstation.domain.ru

3. Начнем ставить пакеты для работы в домене:

sudo apt-get install samba smbfs winbind libpam-mount

smbfs нужен для монтирование сетевых папок. Он делает два файла в /sbin/(u)mount.cifs
Дополнительно кому нужен ssh доступ к рабочей станции и наличие редакторов, файл менеджеров:
sudo apt-get install mc gnome-commander openssh-server
А теперь конфигурируем SAMBA для работы в домене
создадим папку для пользователей домена

mkdir /home/DOMAIN

Правим конфиг
# mcedit /etc/samba/smb.conf

Код:

[global]
unix charset = UTF-8
dos charset = CP866
display charset = UTF-8
workgroup = DOMAIN
server string = %h server (Samba, Ubuntu)
; У кого есть wins можете включить   wins support = no
; и прописать wins сервер
; wins server = 192.168…

   dns proxy = no
   log file = /var/log/samba/log.%m
   max log size = 1000
   syslog = 0
   panic action = /usr/share/samba/panic-action %d
# вот тут мы показываем, что используем AD
   security = ads

# если стоит * то samba сама будет искать домен контроллер через dc, или же можно перечислить их IP адреса через пробел в явном виде. Или указать один #IP для того dc на котором хотите авторизоваться. Для отказоустойчивости лучше указать несколько dc или *
   password server = *

 
   realm = DOMAIN.RU  #Внимание realm пишется большими буквами !!!
   encrypt passwords = true
   passdb backend = tdbsam
   obey pam restrictions = yes
   invalid users = root
   passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword                                                                              :* %n\n *passwd:*password\supdated\ssuccessfully* .


   socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
   idmap uid = 10000-20000
   idmap gid = 10000-20000
   template shell = /bin/bash
   winbind enum groups = yes
   winbind enum users = yes
#домашняя папку у пользователя будет в папке с именем домена. Лучше ее создать заранее вручную.
   template homedir = /home/%D/%U
   client use spnego = yes
   winbind use default domain = yes
   winbind refresh tickets = yes
   restrict anonymous = 2
# строки ниже, чтобы рабочая станция не пыталась стать обозревателем в сети.
domain master = no
local master = no
preferred master = no
os level = 0

 

Проверяем конфигурацию SAMBA командой testparm

4. Даем команду чтобы демоны перечитали конфигурацию:
/etc/init.d/winbind stop && /etc/init.d/samba restart && /etc/init.d/winbind start

5. Подключаем машину в домен
net ads join –U administrator
Далее будет запрос пароля доменного админа. Вместо доменного админа можно указать любую пользовательскую учетку. Да, у пользователя есть право ввести  ПК в домен, но ограниченное  кол-вот раз .

В случае успеха видим:
Using short domain name – DOMAIN
Joined  ‘namepc'  to realm ‘DOMAIN.RU'

Если такая машина уже существует увидим
Failed to set password for machine account (NT_STATUS_ACCESS_DENIED)
Failed to join domain !
Если будет такая ошибка содержащая что то про principal name, а в AD появится учетка, но со знаком красного крестика значит смотри и проверяй /etc/hosts
При рассинхронизации времени с DC возможно появление ошибки из-за несовпдаения времени на DC и на workstation
Перегрузитесь для синхронизации времени с DC и повторно попытайтесь ввести в домен Ubuntu 7.10

ВСЕ ! ПК в домене.

 

Автор статьи Исаев Роман.