Um den Zugriff auf Samba Shares über das AD steuer zu können, muss eine Authentifizierung über Kerberos erfolgen. Als erstes müssen die notzwendigen Pakete installiert werden.
apt-get install winbind krb5-doc krb5-user krb5-config
Anschließen ändern Sie bitte zwei Zeilen in der /etc/nsswitch.conf
passwd: files winbind group: files winbind
Nun passen Sie bitte die Datei /etc/krb5.conf wie abgebildet bitte an Ihre Umgebung an. Achten Sie dabei auf die Groß- & Kleinschreibung.
Um die Verbindung zu den Passwort Datein zu testen kann für AD Abfrage (kann erst am Ende getestet werden)
wbinfo -u (AD User) wbinfo -g (AD Gruppen)
und für die lokale Passwort Datei
getent passwd getent group
benutzt werden
192.168.0.210: DomainController
Domain: 2nibbles4u.local
[libdefaults]default_realm = 2NIBBLES4U.LOCAL clockskew = 300[realms]2NIBBLES4U.LOCAL = { kdc = 192.168.0.210:88 admin_server = 192.168.0.210:464 default_domain = 2NIBBLES4U kpasswd_server = 192.168.0.210:88 }[domain_realm].2nibbles4u.local = 2NIBBLES4U.LOCAL .2NIBBLES4U.LOCAL = 2NIBBLES4U.LOCAL[logging]default = SYSLOG:NOTICE:DAEMON kdc = FILE:/var/log/kdc.log kadmind = FILE:/var/log/kadmind.log[appdefaults]pam = { ticket_lifetime = 1d renew_lifetime = 1d forwardable = true proxiable = false retain_after_close = false minimum_uid = 0 }
Nun passen Sie die Datei /etc/samba/smb.conf ebenso an:
[global]netbios name = server123 workgroup = 2NIBBLES4U realm = 2NIBBLES4U.LOCAL server string = security = ADS encrypt passwords = yes preferred master = no template shell = /bin/false template homedir = /home/%D/%U idmap uid = 10000-20000 idmap gid = 10000-20000 enhanced browsing = no winbind use default domain = yes password server = 192.168.0.210[Remote_Manager] comment = Remote Manager path = /shares/Remote Manager force user = www-data force group = www-data # Benutzer freischalten valid users = 2NIBBLES4uuser123 # Gruppen freischalten valid users = @"2nibbles4ugruppe123" public = no writable = yes printable = no create mask = 0765
Jetzt einmal samba und winbind neu starten
/etc/init.d/winbind restart /etc/init.d/samba restart
Um die Kerberos Authentifizierung zu testen kann testweise ein Ticket angefordert werden.
kinit Domain-Admin
Danach wird das Kennwort verlangt und wenn alles in Ordnung ist, erscheint wieder der normale Prompt. Ob es nun Kerberos geschafft hat, ein Ticket zu eröffnen, kann so angesehen werden:
klist
Die Ausgabe sollte etwa so ausschauen:
Ticket cache: FILE:/tmp/krb5cc_0 Default principal: admin@domain.tldValid starting Expires Service principal 02/28/08 10:42:45 02/28/08 20:42:30 krbtgt/domain.tld@domain.tld renew until 02/28/08 20:42:45Kerberos 4 ticket cache: /tmp/tkt0 klist: You have no tickets cached
Falls es nicht klappt, ist allenfalls ein Durcheinander mit den Tickets vorhanden. Dann lassen sich mit folgendem Befehl alle Tickets löschen:
kdestroy
Nehmen Sie nun den PC noch in die Domain auf (der PC darf im AD hinterher nicht verschoben werden):
net ads join -U Administrator Administrator's password: Using short domain name -- 2NIBBLES4U Joined 'dcex01' to realm '2NIBBLES4U.LOCAL'
Um den PC direkt in einer spezielle OU zu erstellen kann die OU angegeben werden
net ads join createcomputer='MH/Computer/Desktop' -U Administrator
Für die Kontrolle des AD Zugriffs bzw. der Samba Konfiguration können folgende Befehle weiterhelfen:
AD User auflisten
net ads user -U Administrator
oder
wbinfo -u
AD Gruppen auflisten
wbinfo -g
Samba Konfiguration prüfen
testparm
AD Verbindung prüfen
net ads info
prüfen ob der PC zum AD hinzugefügt werden kann
net ads testjoin
Kerberos Tickets anzeigen
kinit
Verfügbarkeit der Domains anzeigen
wbinfo --online-status
Links: http://www.debian-administration.org/articles/340
http://www.software-krause.de/index.php?id=40
http://www.brentnorris.net/blog/archives/179
http://www.brentnorris.net/blog/archives/179
Ein Kommentar
Pingback: .: blog.cscholz.io :. » Squid3: Authentifizierung über eine Windows 2003 AD Gruppe «