PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Samba LDAP & PAM Zusammenspiel



DinDaDa
18.02.08, 08:52
Bin neu hier, und auch noch etwas unerfahren.

Versuche mir grad nen Home-Server einzurichten. Zwecks Datensicherung, Entwicklung php und C# und Mono und vieles mehr. Auch mal nur zum testen.

Hab aber noch ne Menge Verständnisprobleme.

Ich möchte eine einheitliche Benutzerverwaltung. Habe LDAB auch zum laufen bekommen. Samba greift auch darauf zu.

Nun kann ich mich damit aber noch nicht über die Shell (sshd) anmelden. Dabei bin ich dann auf PAM gestoßen. Dort habe ich wiederum was für Samba gefunden, und nun bin ich etwas verwirt.

Wie sollte nun die Authentifizierung ablaufen.

Von Samba nach LDAB?
Von Shell über PAM nach LDAP?
Oder auch von Samba über PAM nach LDAP?

Und was hat die nsswitch.conf damit zu tun?

Bin auch für ein gutes Tutorial zu haben, wenn jemand eines kennt. (Hab auch schon gesucht!)

Und konkret hätte ich dann noch folgende Fragen?

Ich habe openSuse 10.3.

Brauche ich eigentlich wirklich diese smbldap-tools mit diesen Scripten wie smbldap-useradd? In Anleitungen zu Samba mit LDAP sind sie mal drin und mal wieder nicht.

Das Profile Verzeichnis funktioniert noch nicht, ich sehe dass es da ist, aber beim Abmelden wird dort nicht gespeichert. Hab mal jemand einen Tipp wo ich suchen kann?

Ich habe unter LDAP die Standart Gruppen und Benutzer angelegt. Aber was sind diese policies brauche ich die?

Wenn ich mich unter Windows -> Verwaltung -> Computerverwaltung an den (Samba-)Server anmelde, kann ich die Benutzer und Gruppen nicht sehen. Geht das überhaupt?

Ich bin für jeden sachdienlichen Hinweis dankbar.

Mit freundlichen Grüßen

DinDaDa

emba
18.02.08, 16:11
hi,

schau mal in stickies, da gibts ein feines tutorial.
zudem: nein, smbldap-tools brauchst du nicht zwingend, sie erleichtern dir nur die konfiguration von ldap und samba, deshalb rate ich dazu.

um mit ssh gegen ldap zu gehen, nimmst du pam_ldap
um mit ssh (indirekt) gegen ldap zu gehen, aber auf die windowsnutzerdatenbank (und passwoerter) zuzugreifen, installierst du noch winbindd auf dem host und nimmst pam_winbind

greez

DinDaDa
20.02.08, 21:22
Vielen dank für die Antwort.

Nach vielem Ausprobieren, einen Schritt Vorwärts und zwei zurück hab ich das ganze System noch mal neu installiert. Weswegen ich auch heute komme erst zum antworten.

Nun was soll ich sagen, SSH - Login funktioniert auf einmal, und ich weiß auch nicht mal warum.

Aber habe immer noch das Problem, dass das Homeverzeichnis nicht beim Samba - Login erzeugt wird. Was im Gegensatz zum SSH - Login passiert.

Funktioniert sogar mit pure-FTP, aber aus langsam, aber das ist erstmal nen anderes Thema.

Ich habe leider echt noch keine Ahnung von den ganzen Einstellungen. Aber vielleicht möchte ja Jemand mal einen Blick drauf werfen.

Vielen Dank, das DinDaDa


[global]
unix charset = LOCALE
workgroup = IRGENDWAS.IRGENDWO
realm = IRGENDWAS.IRGENDWO
server string = DinDaServer
map to guest = Bad User
passdb backend = ldapsam:ldap://127.0.0.1/
passwd program = /usr/local/sbin/smbldap-passwd -u "%u"
passwd chat = "Changing password for*\nNew password*" %n\n "*Retype new password*" %n\n"
username map = /etc/samba/smbusers
log level = 1
log file = /var/log/samba/%m.log
max log size = 50
time server = Yes
server signing = auto
printcap name = cups
add user script = /usr/local/sbin/smbldap-useradd -m "%u"
delete user script = /usr/local/sbin/smbldap-userdel "%u"
add group script = /usr/local/sbin/smbldap-groupadd -p "%g"
delete group script = /usr/local/sbin/smbldap-groupdel "%g"
add user to group script = /usr/local/sbin/smbldap-groupmod -m "%u" "%g"
delete user from group script = /usr/local/sbin/smbldap-groupmod -x "%u" "%g"
set primary group script = /usr/local/sbin/smbldap-usermod -g "%g" "%u"
add machine script = /usr/local/sbin/smbldap-useradd -w "%m"
logon script = scripts\logon.bat
logon path = \\%L\%U\profile
logon drive = Z:
domain logons = Yes
os level = 65
preferred master = Yes
domain master = Yes
ldap admin dn = cn=Administrator,o=IRGENDWAS.IRGENDWO,c=DE
ldap delete dn = Yes
ldap group suffix = ou=group
ldap idmap suffix = ou=Idmap
ldap machine suffix = ou=machines
ldap passwd sync = Yes
ldap suffix = o=IRGENDWAS.IRGENDWO,c=DE
ldap ssl = no
ldap user suffix = ou=people
idmap domains = 50000-60000
idmap backend = ldap:ldap://127.0.0.1/
idmap uid = 10000-20000
idmap gid = 10000-30000
profile acls = Yes
printing = cups
cups options = raw
print command =
lpq command = %p
lprm command =
map archive = No
map readonly = no
store dos attributes = Yes
dont descend = /proc,/dev,/etc,/lib,/lost+found,/initrd
delete readonly = Yes
dos filetime resolution = Yes
fake directory create times = Yes

[users]
comment = All users
path = /home
read only = No
inherit acls = Yes
veto files = /aquota.user/groups/shares/

[homes]
comment = Home Directories
valid users = %U
read only = No
create mask = 0700
directory mask = 0700
inherit acls = Yes

[profiles]
comment = Network Profiles Service
path = %H/profile
valid users = %U
force user = %U
read only = No
create mask = 0600
directory mask = 0700

[groups]
comment = All groups
path = /home/groups
read only = No
inherit acls = Yes

[printers]
comment = All Printers
path = /var/tmp
create mask = 0600
guest ok = Yes
printable = Yes
browseable = No

[print$]
comment = Printer Drivers
path = /var/lib/samba/drivers
valid users = "@Print Operators"
write list = "@Print Operators"
create mask = 0664
directory mask = 0775

[netlogon]
comment = Network Logon Service
path = /var/lib/samba/netlogon
write list = root

Aqualung
20.02.08, 21:25
Und was hat die nsswitch.conf damit zu tun?

Gar nichts. Sie ist für die Namensauflösung (/etc/hosts, DNS ..) zuständig.

Gruß Aqualung

DinDaDa
20.02.08, 22:18
Aber in der nsswitch.conf steht doch auch was wegen der Anmeldung drin ...


passwd: compat
shadow: files ldap
group: files ldap

... interprtiere ich das falsch :confused:

Aqualung
20.02.08, 22:23
man nsswitch.conf :


NSSWITCH.CONF(5) Linux Programmer's Manual NSSWITCH.CONF(5)

NAME
nsswitch.conf - System Databases and Name Service Switch
configuration file

DESCRIPTION
Various functions in the C Library need to be configured
to work correctly in the local environment. Tradition*
ally, this was done by using files (e.g., `/etc/passwd'),
but other nameservices (like the Network Information Ser*
vice (NIS) and the Domain Name Service (DNS)) became popu*
lar, and were hacked into the C library, usually with a
fixed search order.

The Linux libc5 with NYS support and the GNU C Library 2.x
(libc.so.6) contain a cleaner solution of this problem.
It is designed after a method used by Sun Microsystems in
the C library of Solaris 2. We follow their name and call
this scheme "Name Service Switch" (NSS). The sources for
the "databases" and their lookup order are specified in
the /etc/nsswitch.conf file.

The following databases are available in the NSS:

aliases
Mail aliases, used by sendmail(8). Presently
ignored.

ethers Ethernet numbers.

group Groups of users, used by getgrent(3) functions.

hosts Host names and numbers, used by gethostbyname(3)
and similar functions.

netgroup
Network wide list of hosts and users, used for
access rules. C libraries before glibc 2.1 only
support netgroups over NIS.

network
Network names and numbers, used by getnetent(3)
functions.

passwd User passwords, used by getpwent(3) functions.

protocols
Network protocols, used by getprotoent(3) func*
tions.



Gruß Aqualung

DinDaDa
20.02.08, 22:32
OOhh "man" geht auch auf config Dateien?

Hmmm, ... geh ich jetzt erstmal nachschlagen was noch geht :) Oder geh ich doch lieber daddeln.

Danke & Grüße

Das DinDaDa

...

Geht auch "man meinedatei.txt" ;)

DinDaDa
21.02.08, 17:38
Zu hülf, komm irgendwie nicht weiter.

Hab mir schon mindestens tausend tolle smb.conigs angeschaut (aber mindestens), finde aber nirgends einen Hinweis.

Das Homeverzeichnis wird bei der Sambanmeldung nicht angelegt. Was aber bei einer Shellanmeldung geschieht.

Und wenn ich das Homeverzeichnis sowie das Porfilverzeichnis von Hand anlege, kann ich diese zwar sehen, Laufwerksbuchstabe wird auch verwendet, aber das Porfilverzeichnis wird nicht benutzt.

Ich möchte:

1. das bei der Anmeldung über Sambe das Homeverzeichnis automatisch erstellt wird, wenn es nicht vorhanden ist.

2. das beim abmelden die Dateien unter C:\Dokumente und Einstellungen\Benutzer im Porfilverzeichnis gespeichert werden und beim anmelden von dort wieder geholt werden. Freilich nur die Veränderungen.

Wie erstellt eigentlich die Shell das Homeverzeichnis. Denn da geschieht es doch automatisch?

Hat es was zu tun mit preload, preload modules, preexec und postexec oder geht die Reise eher in Richtung gpedit.msc und so eine POL-Datei??

Gibt es jemanden bei dem Samba mit LDAB und solchen Profilen funktioniert?

Danke schon mal im vorraus

DinDaDa

DinDaDa
01.07.08, 23:09
Zu diesem Punkt nur mal ein Kurzes Feedback.

Hab nen neuen Rechner (Vista), und nun funzen auch die Roaming Profiles. Lag wohl an meinem etwas in die Tage gekommenen WinXP.

Danke für die Hilfe

DinDaDa