Samba

Aus darkrealm Wiki
Zur Navigation springen Zur Suche springen

SAMBA 4 AD

Haupt-DC provisionieren

Vorbereitung

  • Prüfen ob samba läuft
  • Prüfen auf Vorhandensein und ggf. löschen:
    • /var/lib/samba
    • /var/lock/samba
    • /var/cache/samba
    • /etc/samba/smb.conf

Provisionierung

samba-tool domain provision --use-rfc2307 --option="interfaces=lo br0" --option="bind interfaces only=yes" --site=Rebental --realm=HERRMANN.AD --domain=HERRMANN --server-role=dc --dns-backend=BIND9_DLZ --adminpass=PASSWORD
  • Erklärung:
    • --use-rfc2307 : AD benutzen um POSIX Attribute zu speichern
    • --option="interfaces=lo br0" : lo und br0 (IPv4 UND IPv6 !)
    • --option="bind interfaces only=yes" : Nur auf oben genannten Interfaces binden
    • --site=Rebental : AD Site
    • --realm=HERRMANN.AD : (Kerberos) Realm setzen
    • --domain=HERRMANN : Domain setzen ( 1. Part von Realm)
    • --server-role=dc : Server role setzen auf Domain Controller
    • --dns-backend=BIND9_DLZ : DNS Server Backend setzen auf BIND
    • --adminpass=PASSWORD : Administrator Passwort setzen

DNS Backend einrichten

  • in /etc/bind/named.conf hinzufügen:
include "/var/lib/samba/private/named.conf";

und im options {} Block :

tkey-gssapi-keytab "/var/lib/samba/private/dns.keytab";

BIND neu starten:

systemctl restart named

sysvol und netlogon shares verschieben und/etc/samba/smb.conf anpassen

mv /var/lib/samba/sysvol /mnt/storage/samba/
[netlogon]
	comment = Netlogon Directory
        path = /mnt/storage/samba/sysvol/herrmann.ad/scripts
	read only = No
        vfs objects = btrfs

[sysvol]
	comment = System Volume Information
        path = /mnt/storage/samba/sysvol
	read only = No
        vfs objects = btrfs

[profiles]
	comment = Roaming Profiles
	path = /mnt/storage/samba/profiles
	read only = no
	vfs objects = btrfs

samba starten

systemctl start samba

Rechner zur Domain hinzufügen

  • Auf Windows-Rechner als lokaler Administrator einloggen
  • Einstellungen->Konten->Auf Arbeits- oder Schulkonto zugreifen->Verbinden->Dieses Gerät in eine lokale Active-Directory Domäne einbinden
  • Domänenname: HERRMANN
  • Domänen-Admin Administrator und Kennwort eingeben
  • Konto hinzufügen : Administrator / Administrator (Warum dieser Schritt ?)
  • neu starten

Gruppenrichtlinien einrichten (optional)

Standorte und Subnetze zuteilen

  • Auf Windows-Rechner als Domänen-Administrator einloggen
  • RSAT-Tools herunterladen von https://www.microsoft.com/de-DE/download/details.aspx?id=45520 und installieren
  • Active Directory Standorte und -Dienste starten
  • Neuen Standort hinzufügen
    • Name: Wehlach, Verknüpfungsname: DEFAULTIPSITELINK
  • Neues Subnetz:
    • Präfix: 192.168.1.0/24
    • Standortobjekt: Rebental
  • Neues Subnetz:
    • Präfix: 192.168.2.0/24
    • Standortobjekt: Wacholderweg

Quelle: https://wiki.samba.org/index.php/Active_Directory_Sites

Zweiten DC einrichten

Vorbereitung wie beim Haupt-DC

DC hinzufügen

samba-tool domain join herrmann.ad DC --dns-backend=BIND9_DLZ --option="idmap_ldb:use rfc2307=yes" --option="interfaces=lo br0" --option="bind interfaces only=yes" --site=Wacholderweg --server=192.168.1.240 -U"HERRMANN\Administrator"
  • ToDo: warum --server=192.168.1.240 ? (wahrscheinlich weil herrmann.ad noch nicht über DNS auflösbar ist)

DNS Backend einrichten

  • in /etc/bind/named.conf hinzufügen:
include "/var/lib/samba/private/named.conf";

und im options {} Block :

tkey-gssapi-keytab "/var/lib/samba/private/dns.keytab";

BIND neu starten:

systemctl restart named

samba starten

systemctl start samba

Replikation überprüfen und ggf. einrichten

Quelle : https://wiki.samba.org/index.php/Verifying_and_Creating_a_DC_DNS_Record

  • Auf beiden DC ausführen:
samba-tool drs showrepl
  • Auf dem Rechner wo ein Fehler (WERR_BADFILE oder ähnliches) gemeldet wird, folgendes ausführen:
host -t A nexus.herrmann.ad.
  • Falls NXDOMAIN gemeldet wird, muss der Rechner ins DNS manuell eingetragen werden (Samba 4.6 und früher):
    • samba-tool dns add shodan.herrmann.ad herrmann.ad nexus.herrmann.ad A 192.168.2.240 -Uadministrator
    • Nochmal prüfen :
      host -t A nexus.herrmann.ad.
  • Ergebnis sollte sein :
    nexus.herrmann.ad has address 192.168.2.240
ldbsearch -H /var/lib/samba/private/sam.ldb '(invocationId=*)' --cross-ncs objectguid

objectGUID von CN=NTDS Settings,CN=NEXUS merken

host -t CNAME <objectGUID>_msdcs.herrmann.ad.

Fall NXDOMAIN, folgendes ausführen:

samba-tool dns add shodan.herrmann.ad _msdcs.herrmann.ad <objectGUID> CNAME nexus.herrmann.ad -Uadministrator

Replikation nochmal überprüfen

Falls immer NTTIME(0) als Zeitangabe steht

chgrp ntp /var/lib/samba/ntp_signd