Linux-Client in Windows Domain

Aus Linupedia.org
Version vom 31. März 2007, 20:05 Uhr von TomcatMJ (Diskussion | Beiträge) (Navigationslink hinzugefügt)
Wechseln zu: Navigation, Suche

Autor: TrialAndError

Zusammenfassung

Das unten beschriebene Vorgehen besteht im Wesentlichen aus vier Schritten. Zunächst werden mit YAST der Dienst nscd gestoppt und der Client in die Domäne aufgenommen. Anschließend werden mit einem Editor die Dateien smb.conf und xdm angepasst. Am Server selbst sind keine Veränderungen vorzunehmen.

Bei Bedarf können mithilfe von pam_mount das Home auf dem Server und andere Shares direkt mit dem Login zur Verfügung gestellt werden.

Mithilfe von pam_group können die User beliebigen Gruppen zugeordnet werden, z. B. für Sound-Ausgabe.

Dieses Verfahren wurde nur mit einer Windows NT-Domäne getestet. Für win200x-Domänen (Active Directory) siehe die Links unten.

Voraussetzungen

  • SUSE-Linux 9.x, 10.0

(Ubuntu 6.06 siehe Links, ab 10.1 vollständig per Yast siehe Links)

  • Windows NT-Domäne bzw. Samba-PDC (Primary Domain Controller) (Windows XP-Clients müssen möglich sein.)

Vorgehen

  • Per YAST/System/Runlevel-Editor den Dienst nscd (Name Service Cache Damon) abschalten.

(Dies legt das winbindd-HowTo nahe. Ob es wirklich nötig ist habe ich nie getestet.)


  • In YAST/Netzwerkdienste/Samba-Client Domäne wählen und "Zusätzlich SMB-Informationen zur Linux-Authentifikation verwenden" auswählen.

Nach der Bestätigung wird der Client in die Domäne aufgenommen. Hierzu braucht man die entsprechende Berechtigung. (Das Verfahren ist das gleiche wie mit winXP. Bei meinem Samba-PDC ist z. B. root mit Passwort einzugeben.) YAST installiert ggf. außerdem winbindd und schreibt eine smb.conf als Konfigurations-Datei, passt /etc/nsswitch.conf an.


  • Die smb.conf von YAST ist nicht optimal. Diese funktioniert:

/etc/samba/smb.conf

# smb.conf is the main Samba configuration file. You find a full commented
# version at /usr/share/doc/packages/samba/examples/smb.conf.SUSE if the
# samba-doc package is installed.
# Date: 2005-06-02
[global]
  winbind separator = +
  winbind use default domain = yes
  winbind uid = 10000-20000
  winbind gid = 10000-20000
  winbind cache time = 15
  winbind enum users = yes
  winbind enum groups = yes
  template homedir = /home/%D/%U
  template shell = /bin/bash
  idmap gid = 10000-20000
  idmap uid = 10000-20000
  workgroup = WORKGROUP


Wichtig sind folgende Zeilen:

winbind use default domain = yes
# Login ohne "WORKGROUP+", wie mit Windows. Außerdem zum Mounten mit pam_mount (siehe Anhang).
winbind separator = +
# Bei mir im Zusammenspiel mit pam_mount notwendig.

Nun sollten alle Domänen-Benutzernamen unter KDE/Kontrollzentrum/­Systemverwaltung/­Anmeldungsmanager/­Vereinfachung zu sehen sein.


  • /etc/pam.d/xdm anpassen (nur grafisches Login).

/pam.d/xdm

Code:

#%PAM-1.0

auth required pam_env.so
auth sufficient pam_winbind.so  # pam_winbind fragt das Login ab. 
auth required pam_unix2.so use_first_pass  # pam_unix2 übernimmt das Login von pam_winbind

account sufficient pam_winbind.so  # Login
account required pam_unix2.so

password required pam_unix2.so

session required pam_mkhomedir.so skel=/etc/skel/ umask=0022
# Falls nicht vorhanden wird ein Home erzeugt.
# Sollte erstes Modul sein, damit es aus /etc/skel/ kopiert!
  
session required pam_unix2.so
session required pam_devperm.so
session required pam_resmgr.so

Damit das Login gelingt, muss abschließend im Home-Verzeichnis ein Unterverzeichnis mit dem Namen der Domäne erstellt werden, hier als root: md /home/WORKGROUP. (Großschreibung beachten!) (Die kommentierten Zeilen wurden der Originaldatei hinzugefügt.)

Anhang

  • Bei anderen Linux-Varianten muss der Rechner von Hand der Domäne hinzugefügt und nsswitch.conf angepasst werden. Die Standard-Datei /etc/pam.d/xdm sieht wahrscheinlich anders aus. (Siehe Links unten.)


  • Wenn man ein Verzeichnis beim Login mounten möchte, ist zusätzlich pam_mount erforderlich (apt).

/etc/pam.d/xdm sieht dann wie folgt aus:

/etc/pam.d/xdm

Code:

#%PAM-1.0

auth required pam_env.so
auth optional pam_mount.so
auth sufficient pam_winbind.so use_first_pass
auth required pam_unix2.so use_first_pass

account sufficient pam_winbind.so
account required pam_unix2.so

password required pam_unix2.so

session required pam_mkhomedir.so skel=/etc/skel/ umask=0077
# mkhomedir unbedingt vor mount!
session optional pam_mount.so   # Falls das Mounten scheitert, gelingt das Login trotzdem.
# Falls dies nicht gewünscht ist, "optional" durch "required" ersetzen.
         
session required pam_unix2.so
session required pam_devperm.so
session required pam_resmgr.so


pam_mount ist in der Datei /etc/security/pam_mount.conf gut kommentiert. Am Ende der Datei ist die Konfiguration vorzunehmen. Wie und was man mountet, ...


Links

Suse 10.1 (auch Active Directory)

http://www.uni-bielefeld.de/hrz/pcserv/adlinux.htm

Für Active Directory besonders hilfreich

http://www.pro-linux.de/work/server/samba3-domaene.html

http://www.samba.org/samba/docs/man/Samba3-HOWTO/domain-member.html#ads-member

Andere

http://www.linuxquestions.org/questions/showthread.php?s=&threadid=155887

http://lilly.csoft.net/~vdebaere/handleiding/samba-activedirectory/index_en.html

http://www.timkennedy.net/docs/Linux+Active_Directory.html

http://gertranssmb3.berlios.de/output/winbind.html

http://www.linux-club.de/viewtopic.php?t=42392&

http://www.linux-club.de/viewtopic.php?t=51446&

http://www.linux-club.de/viewtopic.php?t=53340

Active Directory ohne winbind:

http://www.oo-services.com/de/articles/sso.aspx

Ubuntu

http://www.ubuntuforums.org/showthread.php?t=5409&highlight=nt+authentication+howto (NT) http://www.ubuntuforums.org/showthread.php?t=91510&highlight=nt+authentication+howto (AD) http://ubuntuforums.org/showthread.php?t=77469 (audio, cdrom, video etc. für Domain User)

Edit: Yehudi Links bearbeitet, und hinzugefügt 2006-07-04; TrialAndError bearbeitet 2007-01-24


Zurück zu Samba