Главная > Linux > PDC на Samba (без LDAP)

PDC на Samba (без LDAP)

Устанавливаем пакеты:
yum install samba samba-common samba-doc libcupsys2-gnutls10 libkrb53 winbind smbclient

/etc/samba/smb.conf

[global]
workgroup = BUH
netbios name = server-buh
server string = BUH SMBSERVER
 
passdb backend = tdbsam
 
log level = 1
log file = /var/log/samba/workstations/%m.log
max log size = 50
 
add user script = /usr/sbin/useradd -m %u
delete user script = /usr/sbin/userdel -r %u
 
add group script = /usr/sbin/groupadd %g
delete group script = /usr/sbin/groupdel %g
 
add user to group script = /usr/bin/gpasswd -a %u %g
delete user from group script = /usr/bin/gpasswd -d %u %g
 
add machine script = /usr/sbin/useradd -g nt_workstations -s /bin/false -d /dev/null %u
set primary group script = /usr/sbin/usermod -g %g %u
 
logon path =
logon drive =
logon home =
logon script = %G.bat
domain logons = yes
 
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
 
interfaces = eth0 lo
bind interfaces only = Yes
hosts allow = 10.10., 127.
 
time server = yes
 
preferred master = yes
domain master = yes
local master = yes
os level = 255
 
unix charset = utf8
dos charset = cp1251
display charset = cp1251
 
load printers = yes
printing = cups
printcap name = cups
wins support = yes
 
[printers]
comment = All printers
path = /var/spool/samba
public = yes
printable = yes
guest ok = yes
 
[homes]
comment = Home Directories
browseable = no
writable = yes
 
[netlogon]
path = /home/samba/netlogon
admin users = admin
valid users = %U
guest ok = yes
share modes = no
writable = no
write list = @nt_admins,@nt_it
#read only = no
#browseable = yes
 
#root preexec = net rpc group addmem "Опытные пользователи" %U -S %m -Uadmin%1 &
#root preexec = net rpc group addmem "Опытные пользователи" "veronika" -S "mojaisk-srv" -Uadmin%1 &
#root preexec = /usr/local/bin/smb %U %m
 
[incoming]
path = /home/samba/share/incoming
writable = yes
create mask = 0775
directory mask = 0775
;force group = users
valid users = @managers, @nt_admins
 
[docs]
path = /home/samba/share/docs
writable = yes
write list = @nt_admins, @nt_it
 
[distrib]
path = /home/samba/share/distrib
write list = @nt_admins, @nt_it
 
[clients]
path = /home/samba/share/clients
writable = yes
valid users = @managers, @nt_admins, @nt_it
 
[home]
path = /home/%U
writable = yes
create mask = 0775
directory mask = 0775
;force group = users
valid users = %U

Чтобы пользователи на своих ПК были членами группы «Опытные пользователи» (сработает после 2-го входа пользователя в домен) расскоментируйте строку:

root preexec = /usr/local/bin/smb %U %m

скрипт:
/usr/local/bin/smb

#!/bin/bash
net rpc group addmem "Опытные пользователи" $1 -S $2 -Uadmin%1 &

chmod +x /usr/local/bin/smb

Создаем расшаренные папки согласно конфигу и устанавливаем права:
chmod 777 /home/samba/share
Для начала можно установить полный доступ на шаринги:
chmod 777 -R /home/samba/share
а уже после тестирования системы применять более строгии квоты от Linux.

/home/samba/netlogon/users.bat

net time \\SERVER-BUH /set /yes
net use x: \\SERVER-BUH\share\incoming
net use y: \\SERVER-BUH\share\docs
net use u: \\SERVER-BUH\share\home
net use z: \\SERVER-BUH\share\distrib

unix2dos /home/samba/netlogon/*

chgrp -R users /home/samba/incoming
chmod -R g+w /home/samba/incoming

groupadd nt_managers
groupadd nt_workstations
groupadd nt_admins
groupadd nobody

chgrp -R nt_managers /home/samba/clients
chmod -R g+w /home/samba/clients

smbpasswd -a root

Сопоставление созданных групп:
net groupmap add rid=514 ntgroup="Domain Guests" unixgroup=nobody
net groupmap add rid=513 ntgroup="Domain Users" unixgroup=users
net groupmap add rid=515 ntgroup="Domain Computers" unixgroup=nt_workstations
net groupmap add rid=512 ntgroup="Domain Admins" unixgroup=nt_admins
net groupmap add ntgroup="Managers" unixgroup=nt_managers
net groupmap add ntgroup="BOOCKKEEPPERS" unixgroup=nt_bookkeepers
net groupmap add ntgroup="IT" unixgroup=nt_managers

Проверка:
net groupmap list

Managers (S-1-5-21-1576939014-896421100-3238985702-1001) -> nt_managers
BOOKKEEPERS (S-1-5-21-1576939014-896421100-3238985702-1021) -> nt_bookkeepers
Domain Users (S-1-5-21-1576939014-896421100-3238985702-513) -> users
Domain Computers (S-1-5-21-1576939014-896421100-3238985702-515) -> nt_workstations
Domain Admins (S-1-5-21-1576939014-896421100-3238985702-512) -> nt_admins
Domain Guests (S-1-5-21-1576939014-896421100-3238985702-514) -> nobody
IT (S-1-5-21-1576939014-896421100-3238985702-1019) -> nt_it

Создание администратора:
useradd -m -c "Admin" -G nt_admins -g users admin
smbpasswd -a admin

Проверка:
net rpc group members "Domain Admins" -Uadmin%1
BUH\admin

Добавление прав группе Domain Admins:
net rpc rights grant "Domain Admins" SeMachineAccountPrivilege SeTakeOwnershipPrivilege SeBackupPrivilege SeRestorePrivilege SeRemoteShutdownPrivilege SePrintOperatorPrivilege SeAddUsersPrivilege SeDiskOperatorPrivilege -Uadmin%1

Ввод сервера в домен
net rpc join -U admin%1
Joined domain BUH.

Проверка:
net rpc testjoin
Join to 'BUH' is OK

net rpc info -U admin%1
Domain Name: BUH
Domain SID: S-1-5-21-2612455133-1728142050-408360050
Sequence number: 1271848125
Num users: 2
Num domain groups: 1
Num local groups: 0

Добавление пользователей:
Добавим в БД SAMBA все рабочие станции. По умолчанию они будут принадлежать группе «Domain Computers».
net rpc user add dedulin$ -U admin%1
net rpc user add feoktistova$ -U admin%1
net rpc user add pvl$ -U admin%1

Добавим в БД SAMBA всех пользователей. По умолчанию они будут принадлежать группе «Domain Users».
net rpc user add dedulin -S SMB -U admin%1
net rpc user add feoktistova -S SMB -U admin%1
net rpc user add pvl -S SMB -U admin%1

Добавить/удалить сопоставление:
net groupmap {add,delete} ntgroup="Managers" unixgroup=nt_managers

Добавить/удалить пользователя:
net rpc user {add,delete} user1 -U admin%1

Добавить/удалить компьютер:
net rpc user {add,delete} comp1$ -U admin%1

Добавить/убрать пользователя в доп. группу:
net rpc group {addmem,delmem} "Managers" user1 -U admin%1

Сменить основную группу пользователя:
usermod -g nt_managers user

Установить пароль для пользователя:
smbpasswd user

Ввести сервер в домен:
net rpc join -Uadmin%1

Проверить на вход в домен:
net rpc testjoin

Добавить права определенной группе:
net rpc rights grant "Domain Admins" SeMachineAccountPrivilege SeTakeOwnershipPrivilege SeBackupPrivilege
SeRestorePrivilege SeRemoteShutdownPrivilege SePrintOperatorPrivilege SeAddUsersPrivilege SeDiskOperatorPrivilege -Uadmin%1

Список сопоставлений:
net groupmap list

Список всех пользователей:
net rpc user -U admin%1

Список всех групп:
net rpc group -U admin%1

Список пользователей принадлежащих определенной группе:
net rpc group members "Managers" -U admin%1

Список компьютеров (группа «Domain Computers»):
net rpc group members "Domain Computers" -U admin%1

Группы, которым принадлежит определенный пользователь:
net rpc user info user3 -Uadmin%1

Общая информация о домене:
net rpc info -Uadmin%1
apt-get install dialog

Нписано на основе статьи: http://87.236.27.5/index.php/section-table/35-debian/85-debiansambapdc

Categories: Linux Tags: ,
  1. Пока что нет комментариев.
Похожие публикации