Этот непростой танец samba - поднимаем контроллер домена
Добавлено: 04 окт 2012, 13:19
Радостный кидаюсь в репозитории... да не тут-то было - готовые бинарные пакеты есть только в репозиториях Ubuntu и Fedora . Чтож, берем SRPM от Fedora, и... 3 дня тратим на сборку правильных пакетов, затем устанавливаем в виртуальной среде чистый RHEL, в который устанавливаем собраные пакеты.
Итак, пакеты установлены, можем начинать. Сначала надо определить параметры самого домена.
Код: Выделить всё
# samba-tool samba-tool domain provision --realm=dc.office.local --domain=OFFICE --adminpass='my_p4$$w0rd' --server-role=dc --host-ip=192.168.0.10 --dns-backend=BIND9_DLZ
Looking up IPv6 addresses
No IPv6 address will be assigned
Setting up share.ldb
Setting up secrets.ldb
Setting up the registry
Setting up the privileges database
Setting up idmap db
Setting up SAM db
Setting up sam.ldb partitions and settings
Setting up sam.ldb rootDSE
Pre-loading the Samba 4 and AD schema
Adding DomainDN: DC=dc,DC=office,DC=local
Adding configuration container
Setting up sam.ldb schema
Setting up sam.ldb configuration data
Setting up display specifiers
Adding users container
Modifying users container
Adding computers container
Modifying computers container
Setting up sam.ldb data
Setting up well known security principals
Setting up sam.ldb users and groups
Setting up self join
Adding DNS accounts
Creating CN=MicrosoftDNS,CN=System,DC=dc,DC=office,DC=local
Creating DomainDnsZones and ForestDnsZones partitions
Populating DomainDnsZones and ForestDnsZones partitions
Setting up sam.ldb rootDSE marking as synchronized
Fixing provision GUIDs
A Kerberos configuration suitable for Samba 4 has been generated at /etc/samba/krb5.conf
Once the above files are installed, your Samba4 server will be ready to use
Server Role: active directory domain controller
Hostname: dc
NetBIOS Domain: OFFICE
DNS Domain: dc.office.local
DOMAIN SID: S-1-5-21-3034987641-1669581189-1247057138
A phpLDAPadmin configuration file suitable for administering the Samba 4 LDAP server has been created in /etc/samba/phpldapadmin-config.php.
Разберем подробно, что мы ему сказали:
--realm=FQDN имя домена
--domain=имя домена для NetBIOS (aka Workgroup)
--adminpass=пароль админа
--server-role=тут все ясно - роль данного сервера - DC, то есть контроллер домена
-host-ip=привязка к указаному IP (у моего сервера несколько адресов, а самба должна быть только на одном из них)
--dns-backend=тип DNS-сервера. Я использовал интегрированный сервер, поскольку пока не до bind.
Также мне нужно сменить требования к паролям, поскольку самба по дефолту предъявляет очень жесткие требования к длине/сложности пароля, но у меня маленькая сеть, и сервер не имеет доступа во внешний мир, поэтому мне оно ни к чему.
Код: Выделить всё
# samba-tool domain passwordsettings set --complexity=off --history-length=0 --min-pwd-length=6 --min-pwd-age=15 --max-pwd-age=999
Password complexity deactivated!
Password history length changed!
Minimum password length changed!
Minimum password age changed!
Maximum password age changed!
All changes applied successfully!
Код: Выделить всё
[global]
workgroup = OFFICE
realm = dc.office.local
netbios name = DC
server role = active directory domain controller
interfaces = br2 virbr0
domain master = yes
socket options = SO_KEEPALIVE SO_BROADCAST TCP_NODELAY IPTOS_THROUGHPUT SO_RCVBUF=8192 SO_SNDBUF=8192
server services = smb, rpc, nbt, wrepl, ldap, cldap, kdc, drepl, winbind, ntp_signd, kcc, dnsupdate, -dns
unix charset = UTF8
# debug level = 5
# DNS
nsupdate command = /usr/bin/nsupdate
allow dns updates = True
#Printers
load printers = no
disable spoolss = Yes
show add printer wizard = No
[netlogon]
path = /var/lib/samba/sysvol/dc.domain.tld/scripts
read only = No
[sysvol]
path = /var/lib/samba/sysvol
read only = No
Код: Выделить всё
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
[libdefaults]
default_realm = DC.OFFICE.LOCAL
dns_lookup_realm = false
dns_lookup_kdc = true
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
Код: Выделить всё
# service samba start
Код: Выделить всё
# kinit administrator@DC.OFFICE.LOCAL
Password for administrator@DC.OFFICE.LOCAL:
Warning: Your password will expire in 998 days on Tue Jun 30 11:56:27 2015
Код: Выделить всё
yum install bind
Код: Выделить всё
acl "locals" {
192.168.0.0/24;
127.0.0.1;
172.16.0.0/12;
};
options {
auth-nxdomain yes;
version none;
hostname none;
server-id none;
empty-zones-enable no;
listen-on port 53 { 192.168.0.10; 172.16.32.1;};
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { any; };
allow-recursion { "locals"; };
allow-update { key "rndc-key"; 192.168.0.0/24; };
recursion yes;
dnssec-enable no;
dnssec-validation no;
dnssec-lookaside auto;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
tkey-gssapi-keytab "/etc/samba/dns.keytab"; // Подключаем ключ самбы
managed-keys-directory "/var/named/dynamic";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint;
file "named.root";
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
include "/etc/samba/named.conf"; // Подключаем конфиг самбы
include "/etc/rndc.key";
controls {
inet 127.0.0.1 allow { localhost; }
keys { rndc-key; };
};
Код: Выделить всё
chkconfig samba on
chkconfig named on
service named start
service samba restart
UPD: Ввод Linux-клиентов в домен