Samba как PDC

Вот наконец-то понадобилось мне поднять контроллер домена... На работе дали задание сделать подобную штуку, причем с наименьшими затратами. ну я долго не выбирая, поставил сервак, поставил FreeBSD 8.1 и samba,у на него. Как это все было расскажу далее... :) Установку фряхи в этой статье рассматривать не буду, так как этот процесс очень хорошо расписан в хэндбуке. А вот про установку и настройку samba,ы в качестве PDC расскажу подробно :).

Итак, обновляем порты удобным для вас способом, я лично обновляю их тулзой portsnap.

# portsnap fetch update

После обновления лезем в порты ставить самбу.

# cd /usr/ports/net/samba34
# make install clean

Из предложенных опций я выбрал следующие:

  • ACL_SUPPORT
  • QUOTAS
  • POPT

Дожидаемся завершения установки и идем править конфиг самбы. У меня он получился такого содержания:

#======================= Global Settings =====================================
[global]
  # Имя домена
  workgroup = DUSH-4
  server string = Documents
  # netbios имя компа
  netbios name = srv-data.local

  security = user
  # Разрешаем доступ только из внутренней сети
  hosts allow = 192.168.7. 127.
  # Принтеры мне не нужны, так что я их отключил
  load printers = no
  printing = bsd
  #guest account = nobody
  # Логи мне нужны только для отладки, после завершения настройки я их отключаю, так работает быстрее
  ;log file = /var/log/samba34/log.%m
  log file = /dev/null
  log level = 0
  max log size = 50
  encrypt passwords = yes
  passdb backend = tdbsam

  ;include = /usr/local/etc/smb.conf.%m

  # Некоторые оптимизации
  ;wide links = yes
  read raw = yes
  write raw = yes
  use sendfile = yes
  ;write cache size = 524288
  ;oplocks = yes
  ;dead time = 15
  ;getwd cache = yes
  max xmit = 65535
  socket options = IPTOS_LOWDELAY TCP_NODELAY SO_SNDBUF=32768 SO_RCVBUF=32768 SO_KEEPALIVE

  # Так же для дополнительной защиты привязываем сервисы самбы на нужные интерфейсы
  interfaces = 192.168.7.250/24 127.0.0.1/8
  bind interfaces only = yes
  local master = yes
  domain master = yes
  preferred master = yes

  os level = 65
  # Делаем самбу контроллером домена
  domain logons = yes
  # Включаем поддержку WINS
  wins support = yes
  # Разрешаем самбе быть сервером времени
  time server = yes

  # Пользователи, которые будут администраторами домена
  admin users = nekit
  # Если вам не нужны перемещаемые профили, то оставьте этот параметр пустым
  logon path = \\%L\profiles\%U
  # Подключаем хомяк пользователя
  logon drive = H:
  logon home = \\%L\%U
  # Скрипт выполняемый при входе пользователя в домен
  ;logon script = logon.cmd

  display charset = koi8-r
  unix charset = koi8-r
  dos charset = cp866

  store dos attributes = yes
  case sensitive = no

  # Скрипты для работы с машинами, пользователями и группами
  # Если со всем будете работать вручную, то закомментируйте
  #add machine script = /usr/local/bin/ldapaddmachine '%u' computers
  #add user script = /usr/local/bin/ldapadduser '%u' people
  #add group script = /usr/local/bin/ldapaddgroup '%g'
  #add user to group script = /usr/local/bin/ldapaddusertogroup '%u' '%g'
  #delete user script = /usr/local/bin/ldapdeleteuser '%u'
  #delete group script = /usr/local/bin/ldapdeletegroup '%g'
  #delete user from group script = /usr/local/bin/ldapdeleteuserfromgroup '%u' '%g'
  #set primary group script = /usr/local/bin/ldapsetprimarygroup '%u' '%g'
  #rename user script = /usr/local/bin/ldaprenameuser '%uold' '%unew'

#============================ Share Definitions ==============================
# Шара со скриптами
[netlogon]
  comment = Netlogon Service
  path = /mnt/media/samba/netlogon
  read only = yes
  browseable = no
  public = no

# Здесь хранятся перемещаемые профили пользователей
[profiles]
  comment = User profiles
  path = /mnt/media/samba/profiles
  writeable = yes
  browseable = no
  public = no
  csc policy = disable   # отключаем автономное кеширование
  create mask = 0600
  directory mask = 0700

[homes]
  comment = Home Directories
  browseable = no
  writable = yes
  force create mode = 0640
  force directory mode = 0750

[distrib]
  comment = Distrib
  path = /mnt/media/samba/distrib
  public = no
  writable = yes
  force create mode = 0640
  force directory mode = 0750
  force user = smb_user
  force group = smb_write
  valid users = @smb_read
  read list = @smb_read
  write list = @smb_write

[temp]
  comment = Temporary files
  path = /mnt/media/samba/temp
  public = no
  writable = yes
  force create mode = 0640
  force directory mode = 0750
  force user = smb_user
  force group = smb_write
  valid users = @smb_read
  read list = @smb_read
  write list = @smb_read

Конфиг достаточно хорошо прокомментирован, так что дополнять ничего не буду. После правки конфига добавляем группы и пользователей, которым будут сопоставлены группы Windows NT.

# pw groupadd -n pdc_admins -g 10001
# pw groupadd -n pdc_users -g 10002
# pw groupadd -n pdc_computers -g 10003
# pw groupadd -n pdc_guests -g 10004

Далее создаем пользователя (администратора домена) и добавляем в нужную группу.

# pw group add nekit
# pw useradd nekit -g nekit -s /bin/csh -d /home/nekit -L russian -G pdc_admins

Также надо сделать сопоставление Windows NT групп группам Unix

# net groupmap add rid=512 unixgroup=pdc_admins type=domain ntgroup="Domain Admins"
# net groupmap add rid=513 unixgroup=pdc_users type=domain ntgroup="Domain Users"
# net groupmap add rid=514 unixgroup=pdc_guests type=domain ntgroup="Domain Guests"
# net groupmap add rid=515 unixgroup=pdc_computers type=domain ntgroup="Domain Computers"

Проверим, что получилось, должно быть примерно следующее:

# net groupmap list
Domain Admins (S-1-5-21-1729013427-4292848044-4196762361-512) -> pdc_admins
Domain Computers (S-1-5-21-1729013427-4292848044-4196762361-515) -> pdc_computers
Domain Users (S-1-5-21-1729013427-4292848044-4196762361-513) -> pdc_users
Domain Guests (S-1-5-21-1729013427-4292848044-4196762361-514) -> pdc_guests

Теперь можно запустить самбу.

# echo 'smbd_enable="YES"' >> /etc/rc.conf
# echo 'nmbd_enable="YES"' >> /etc/rc.conf
# service samba start

Добавляем созданного ранее пользователя в хранилище самбы

# pdbedit -a nekit
New password: ***
Retype new password: ***
User added...

Еще нужно добавить машины которые будут вводиться в домен. Они добавляются как пользователи, только на конце еще к имени машины добавляется знак $.

# pw useradd srv-data.local$ -g pdc_computers -s /usr/sbin/nologin -d /nonexistent

Теперь можно ввести локальную машину в домен

# net rpc join -U nekit
Password: ***
Added...

Теперь можно посмотреть информацию о домене.

# net rpc info -U nekit
Enter nekit's password:
Domain Name: DUSH-4
Domain SID: S-1-5-21-1729013427-4292848044-4196762361
Sequence number: 1289023023
Num users: 3
Num domain groups: 4
Num local groups: 0

Все готово. Чтобы включить виндовые машины в домен нужно сделать следующее: Панель управления -> Система -> Вкладка: имя компьютера -> Изменить. Там ставите переключатель на пункт "Является членом домена" и вводите свой домен. Винда запросит пароль администратора, введете, и все, ваша машина включена в домен, перезагружаемся и пользуемся.

Гость (не проверено)

Excellent post! I really enjoyed sharing this.


As a betting enthusiast here in Nigeria, I usually search for the top offers before joining.


For anyone looking to get started, here's a tip, The Verified Bet Naija Promotion Code this 2026 is Yohaig Accredited


BetNaija Promo Code for 2026 is Yohaig, which unlocks an extra boost when creating an account.


Looking forward to more posts!

Гость (не проверено)

Very useful write-up! I really enjoyed sharing this. As a


betting enthusiast based in Nigeria, I tend to search for The Active Bet 9JA promo code 2026 is Yohaig top


promotions before joining. For those looking to get started, here's a tip, the Mandatory


Bet 9ja promotion code for 2026 is YOHAIG, and it unlocks a


nice offer when you register. Thanks again!

Гость (не проверено)

Awesome post! Thanks for sharing this. Being a betting enthusiast based in Nigeria,


I always look out for the top promotions before joining.


For anyone looking to get started, quick note, the Valid Bet


9Ja Promotion Code 2026 is Yohaig, which gets you an extra bonus when you register.


Keep up The Official Bet Naija promotion code for 2026 is Yohaig good work!

Гость (не проверено)

Awesome content! Thanks for this information. As a football lover from Nigeria,


I always search for the most rewarding promotions before registering.


If you're curious, quick note, The Legally Validated Bet 9ja Promo Code for 2026 is YOHAIG Verified Bet9JA Promo Code 2026 is YOHAIG, which unlocks a nice


boost when you sign up. Keep up the good work!

CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.

Последние комментарии

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