GNU/Linux >> Znalost Linux >  >> Linux

Jak nastavit Sambu jako primární řadič domény v Linuxu

Sambu používá sysadmin k překonání problému interoperability ve smíšeném prostředí, kde máte Linux i Windows. Poskytuje společnou platformu pro Windows i Linux, aby měly společný prostor pro sdílení.

Domain controller je služba, která slouží k centralizované správě uživatelů, skupin nebo libovolných objektů v síti. Tato služba nám umožňuje spravovat, ověřovat a zabezpečovat přihlašovací údaje uživatelů a související data.

Tento tutoriál vysvětluje, jak můžeme nakonfigurovat Sambu na Linuxu jako primární řadič domény.

1. Nastavte správný název hostitele

Ujistěte se, že jste nastavili správný název hostitele a statickou IP. Pokud používáte interní ip-adresu a chcete k ní přistupovat z internetu, nastavte na vašem firewallu příslušná pravidla NAT.

V tomto tutoriálu bude jako název hostitele použit tgs.example.com.

# vi /etc/sysconfig/network 
HOSTNAME=tgs.example.com

Ujistěte se, že má v souboru ifcfg-eth0 správné nastavení statické IP adresy.

# vi /etc/sysconfig/network-script/ifcfg-eth0
IPADDR=192.168.101.1
NETMASK=255.255.255.0

Rovněž odpovídajícím způsobem přiřaďte bránu a DNS v souboru /etc/sysconfig/network a /etc/resolv.conf.

Ověřte, že váš soubor /etc/hosts obsahuje záznam podobný následujícímu.

# vi /etc/hosts
192.168.101.1	tgs.example.com	tgs

Také se ujistěte, že je na tomto serveru nastavena a správně spuštěna služba NTP.

2. Nainstalujte Sambu ze zdroje

Na CentOS se balíčky samba standardně neinstalují pro minimální typ instalace.

Nejprve nainstalujte následující závislé balíčky.

# yum install glibc glibc-devel gcc python* libacl-devel krb5-workstation krb5-libs pam_krb5 git-core openldap-devel 

Dále si stáhněte zdroj samby, jak je znázorněno níže.

# git clone git://git.samba.org/samba.git sambaserver

Soubory budou staženy do adresáře sambaserver. Nainstalujte server samba, jak je znázorněno níže.

cd sambaserver

./configure  --enable-debug --enable-selftest

make

make install

Samba bude nainstalována do výchozího umístění /usr/local/samba/bin. V tomto adresáři uvidíte několik klientských obslužných programů samby.

# cd /usr/local/samba/bin/ 

# ls 
cifsdd       ldbsearch   ntdbrestore    regshell    smbcquotas  tdbbackup 
dbwrap_tool  locktest    ntdbtool       regtree     smbget      tdbdump 
eventlogadm  masktest    ntlm_auth      rpcclient   smbpasswd   tdbrestore 
gentest      ndrdump     oLschema2ldif  samba-tool  smbspool    tdbtool 
ldbadd       net         pdbedit        sharesec    smbstatus   testparm 
ldbdel       nmblookup   pidl           smbcacls    smbtar      wbinfo 
ldbedit      nmblookup4  profiles       smbclient   smbta-util 
ldbmodify    ntdbbackup  regdiff        smbclient4  smbtorture 
ldbrename    ntdbdump    regpatch       smbcontrol  smbtree 

3. Nastavení poskytování domény

Chcete-li zahájit poskytování domény, spusťte nástroj samba, jak je znázorněno níže. Tím se z konfiguračních souborů vybere výchozí název hostitele a název domény.

# /usr/local/samba/bin/samba-tool domain provision 
Realm [EXAMPLE.COM]: 
 Domain [EXAMPLE]: 
 Server Role (dc, member, standalone) [dc]: 
 DNS backend (SAMBA_INTERNAL, BIND9_FLATFILE, BIND9_DLZ, NONE) [SAMBA_INTERNAL]: 
 DNS forwarder IP address (write 'none' to disable forwarding) [125.22.47.125]: 8.8.8.8 
Administrator password: 
Retype password: 
...
...
Adding DNS accounts 
Creating CN=MicrosoftDNS,CN=System,DC=example,DC=com 
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 /usr/local/samba/private/krb5.conf 
Once the above files are installed, your Samba4 server will be ready to use 
Server Role:           active directory domain controller 
Hostname:              tgs 
NetBIOS Domain:        EXAMPLE 
DNS Domain:            example.com 
DOMAIN SID:            S-1-5-21-2869186506-3515775153-2841826798 

4. Spusťte službu Samba

Spusťte službu samba, jak je uvedeno níže.

/usr/local/samba/sbin/samba 

Přidejte následující položku do souboru rc.local, abyste se ujistili, že se služba samba spouští automaticky během spouštění systému.

# echo /usr/local/samba/sbin/samba >> /etc/rc.d/rc.local 

# cat /etc/rc.d/rc.local 
touch /var/lock/subsys/local 
/usr/local/samba/sbin/samba 

5. Zkontrolujte verzi Samby

Verzi samby můžete ověřit pomocí příkazu samba nebo smbclient, jak je uvedeno níže.

# /usr/local/samba/sbin/samba -V 
Version 4.2.0pre1-GIT-913b2a1 

# /usr/local/samba/bin/smbclient -V 
Version 4.2.0pre1-GIT-913b2a1 

Následující příkaz zobrazí všechny sdílené položky Samba, které jsou aktuálně dostupné.

# /usr/local/samba/bin/smbclient -L localhost -U% 
Domain=[EXAMPLE] OS=[Windows 6.1] Server=[Samba 4.2.0pre1-GIT-913b2a1] 

	Sharename       Type      Comment 
	---------       ----      ------- 
	netlogon        Disk      
	sysvol          Disk      
	IPC$            IPC       IPC Service (Samba 4.2.0pre1-GIT-913b2a1) 
Domain=[EXAMPLE] OS=[Windows 6.1] Server=[Samba 4.2.0pre1-GIT-913b2a1] 

	Server               Comment 
	---------            ------- 

	Workgroup            Master 
	---------            ------- 

Ověřte, že se můžete přihlásit pomocí uživatelského jména a hesla správce.

# /usr/local/samba/bin/smbclient //localhost/netlogon -Uadministrator -c 'ls' 
Enter administrator's password: 
Domain=[EXAMPLE] OS=[Windows 6.1] Server=[Samba 4.2.0pre1-GIT-913b2a1] 
  .   D        0  Fri Feb 21 15:06:15 2014 
  ..  D        0  Fri Feb 21 15:06:28 2014 
57901 blocks of size 8388608. 54372 blocks available 

6. Ověřte domény

Nyní zkontrolujeme, zda doména funguje podle očekávání. Zkontrolujte záznam SRV a A, jak je znázorněno níže.

# host -t SRV _ldap._tcp.example.com 
_ldap._tcp.example.com has SRV record 0 100 389 tgs.example.com. 

# host -t SRV _kerberos._udp.example.com 
_kerberos._udp.example.com has SRV record 0 100 88 tgs.example.com. 

# host -t A tgs.example.com 
tgs.example.com has address 192.168.101.1

Pomocí příkazu samba-tool ověřte název sféry, jak je uvedeno níže.

# /usr/local/samba/bin/samba-tool testparm --suppress-prompt | grep realm 
	realm = EXAMPLE.COM 

7. Nakonfigurujte Kerberos

Zkopírujte ukázkový soubor krb5.conf do adresáře /etc.

cp /usr/local/samba/share/setup/krb5.conf /etc/krb5.conf 

Nastavte default_realm na název vaší domény. V tomto případě jej nastavíme na example.com

# cat /etc/krb5.conf 
[libdefaults] 
	default_realm = EXAMPLE.COM 
	dns_lookup_realm = false 
	dns_lookup_kdc = true 

Pomocí příkazu kinit se ujistěte, že je Kerberos správně nastaven, jak je uvedeno níže.

# kinit [email protected] 
Password for [email protected]: 
Warning: Your password will expire in 41 days on Fri Apr  4 15:06:25 2014 

Nakonec můžete použít nástroj vzdáleného správce Windows pro připojení k serveru Samba a použít jej jako doménový řadič.

Pokud během výše uvedeného procesu narazíte na nějaké problémy, ujistěte se, že aktualizujete systém aktualizací všech balíčků. Můžete také dočasně deaktivovat SELinux a zkontrolovat soubor audit.log, zda neobsahuje chybové zprávy související se SELinuxem. Také se ujistěte, že vaše pravidla IPTables neblokují porty, které Samba vyžaduje pro komunikaci mezi servery.


Linux
  1. Jak vytvořit síťové sdílení přes Samba na Linuxu

  2. Jak nastavit SSH bez hesla v systému Linux

  3. Jak nastavit Reverse SSH Tunnel v Linuxu

  1. Jak zálohovat konfiguraci řadiče domény Samba v Linuxu

  2. Jak nastavit přihlášení SSH bez hesla v Linuxu

  3. Jak nastavit písma v podsystému Linux?

  1. Jak nastavit NGINX Ingress Controller v Kubernetes

  2. Jak nastavit server Linux na Amazon AWS

  3. Jak nastavit `sudo` bez hesla v Linuxu?