[gelöst:] Problem mit Samba: Benutzer kann nicht einlogen

maceis

Mitglied
Mitglied seit
9 Apr 2006
Beiträge
688
Punkte für Reaktionen
4
Punkte
18
Hallo zusammen,

ich teste gerade Samba auf meiner Box und habe folgendes Problem.
Ich kann den Server zwar starten, aber der Benutzer samba kann sich nicht verbinden. Ich erhalte jedemal die Fehlermeldung, "Falsches Kennwort oder unberkanter Benutzername für: " Und dann den Namen der Freigabe.

Ich habe schon mehrmals Samba auf "Standard" zurückgesetzt und neu angefangen. Ich habe nur zwei Änderungen vorgenommen:
1. Anpassung der Netzwerkschnittstelle an die IP Adresse meiner Box
2. Freigabe erstellt:
Code:
/var/tmp tempordner 0 0 /var/tmp

Außerdem habe ich schon mehrfach versucht das Passwort des Benutzer samba zu ändern und zwar sowohl mit "passwd samba" als auch mit "modpasswd samba".
Dies scheint zu funktionieren, aber ich kann mich trotzdem nicht anmelden.

Im Augenblick komme ich nicht weiter.
Jeder Hinweis ist willkommen.

Vielen Dank im Voraus
Gruß
maceis
 
Zuletzt bearbeitet:
welches samba testest du denn?
usb labor? ds mod samba 2.x oder "meinen" usb labor klau??
bei ds.mod samba müsstest du den user in der samba conf mal auf root umstellen..steht auch im wiki wies geht...oder nimmst einfach meinen usblabor klau...
 
Ich teste den Samba im ds-mod. Hätte ich vielleicht dazuschreiben können, steht aber auch in meiner Sig.
Wenn ich den Benutzer in de smb.conf auf root umstelle, kann ich auch zugreifen.
Ich wollte halt lieber den samba-Benutzer (oder einen andern selbst erstelten Benutzer) verwenden. Dafür ist erschließlich da.

Was mir noch aufgefallen ist: Beim Booten der Box wird ja der samba-Benutzer in der /etc/passwd resp. /var/tmp/passwd erstellt.
Dies scheint aber nur fehlerhaft zu funktionieren.
Die entsprechende Zeile in der passwd lautet:
"samba:$1$C.jTKQAC$4sIh6nQybJlvJCKiyNhi5.:x:1:1:samba:$1$C.jTKQAC$4sIh6nQybJlvJCKiyNhi5.:/mod/home/samba:$1$C.jTKQAC$4sIh6nQybJlvJCKiyNhi5.:/bin/sh"
Solange ich das nicht manuell editiere, erhalte ich beim Versuch ein Passwort zu setzen (mit passwd oder modpasswd):
Code:
passwd: unknown user samba
Irgendetwas scheint da nicht in Ordnung zu sein.
 
Du müßtest nach modpasswd samba noch modsave flash aufrufen, damit die Änderung auch einen Neustart überlebt. Das ist so, weil das häufige Schreiben ins Flash dessen Lebensdauer verkürzt. Man kann also erst einmal mehrere Benutzer anlegen, ändern, löschen und dann speichern. Da es eine intern verwendete Funktion ist, ist das scheint's nicht allgemein bekannt, darum erzähle ich es Dir. :D
 
Danke für den Hinweis. War mir wirklich nicht bewusst.

Das Hauptproblem ist aber im Augenblick nicht, das Überleben eines Neustarts sondern dass es grundsätzlich nicht erwartungsgemäß funktioniert - also auch nicht unmittelbar nach der Änderung des Passwortes.

Der Benutzer samba ist bei mir unbenutzbar. Vielleicht mach ich irgendetwas falsch; ich komme aber nicht drauf, was es sein könnte.
 
Zuletzt bearbeitet:
PW-Login mit Samba auf der Box hat bei mir sowieso noch nie funktioniert, weil ich mich mit der Samba-Konfiguration nicht auskenne. Habe es eben nochmal probiert, kein Erfolg. Ich kann nur wählen, ob "guest account" samba oder root sein soll, dementsprechend sind dann auch die Rechte auf der Freigabe (samba darf weniger, fast nirgends schreiben), aber wenn ich rein komme, dann immer ohne PW.

Es würde mich auch interessieren, wie das geht, aber ehrlich gesagt, eher akademisch. Im Grunde ist bei mir Root-Zugriff das Gewünschte, und das funktioniert wunderbar.
 
Ja, wenn der guest user root ist, funktioniert das bei mir auch halbwegs.
Im lokalen Netz ist das auch unproblematisch. Bei einem Zugriff übers Internet ist das schon nicht mehr so witzig.

Zu meiner überlange Zeile in der passwd (s. vorletztes Posting).
Kann das damit zusammenhängen, dass mein hashpasswort in shadow am Ende einen Doppelpunkt enthält und vielleicht irgendeinen sed Befehl aus dem mod durcheinander bringt?
Mich würde interessieren mit welchem Skript beim Starten die Dateien passwd und shadow erzeugt werden. Das würde ich mir mal gerne ansehen.
 
Wer gibt einen Samba-Share übers Internet frei? So verrückt kann man doch nicht sein .
 
Auch wieder wahr. Mich würde es dennoch interessieren, das zum Laufen zu bringen.

Inzwischen bin ich zumindet mit dem generellen Verständnis des Problems etwas weiter gekommen.
Mit dem smbclient in der Konsole kann ich mich mit Benutzer und Passwort anmelden, nicht jedoch über die grafische Oberfläche (von Windows oder von Mac OS X aus).

Die Ursache ist meiner Meinung nach die, dass beim Anmelden vom Explorer oder vom Finder aus das Passwort verschlüsselte gesendet wird. Damit der smbd damit etwas anfangen kann, sucht er die verschlüsselte Samba-Passwortdatei "/mod/etc/smbpasswd", die nicht existiert.

Ich vermute, dass man das Problem umgehen kann, indem man eine entsprechende datei auf einem anderen System erstellt und auf die Box kopiert. Werde ich aber heute Nacht wahrscheinlich nicht mehr testen.

Edit: Hab's doch noch probiert -> JUHU, es funktioniert.
Bei Interesse gebe ich gerne detailiertere Informationen und stell ne entsprechende Datei zum Testen hier rein. Aber jetzt ab ins Bett; muss morgen früh raus.
 
Zuletzt bearbeitet:
Ah, Du hast wohl aus source/samba-2.0.10/source/bin/smbpasswd zwischendurch mal auf die Box kopiert und damit verschlüsselte Paßwörter angelegt, weil Windows sich immer verschlüsselt verbinden will. Das Binary ist aber mit 600 KB ein bißchen groß, um es nur zum PW-Anlegen zwischendurch ständig auf der Box zu haben. Immerhin funktioniert es.
 
Nein - funktioniert aber auch. Ich hab' schnell auf ein Linuxsystem den Benutzer samba angelegt und dann "smbpasswd -a samba" ausgeführt. Der Rest war einfach.

Außerdem musste ich noch den Ordner "/mod/home/samba:$1$C.jTKQAC$4sIh6nQybJlvJCKiyNhi5" in "/mod/home/samba" umbenennen.
Ich muss also noch auf die Suche gehen, von welchem Skript passwd, shadow und eben dieses Verzeichnis erstellt wird. Ein paar Zeilen in der debug.cfg könnten das Problem natürlich lösen - mich würde aber die Ursache interessieren.

Und:
Ja, Du hast Recht, das smbpasswd-binary (bei mir 652K) muss nicht dauerhaft auf der Box sein.
 
Ich habe das mal im Wiki unter "Mehrere Samba-Benutzer" festgehalten, sonst vergesse ich es sowieso wieder, weil ich selbst es nicht brauche.

Getestet habe ich es nicht mehr, es entstammt meiner Erinnerung, wie ich es heute nacht gemacht habe. Vielleicht schaust Du es nochmal an und prüfst es auf Fehler. Sag Bescheid, wenn etwas nicht paßt.
 
Hervorragend; Wenn Du nicht so schnell gewesen wärst, hätte ich im wiki ein paar Zeilen dazu geschrieben.

Eine Frage hätte ich noch.
Warum können sich andere Benutzer als root nicht über ssh anmelden.
Ich finde es gut, dass es so ist, weiß aber nicht, ob man sich da generell darauf verlassen kann.
Andernfalls würde ich noch empfehlen, die shell in der passwd Datei auf "/bin/false" zu setzen
 
Sie können. Entschuldigung, ich habe da was verwechselt. Wir patchen das heraus (make/dropbear/patches/100-root-login-only.patch). Wenn man den Patch wegläßt, müßte es gehen, aber Du hast schon Recht, es ist gut so.
 
Nun ja, nachdem man es ja auch durch einen entsprechenden Eintrag in der passwd steuern kann, fände ich es nicht unbedingt notwendig, das herauszupatchen. Auf der anderderen Seite ist so ne Box ja auch nicht unbedingt ein richtiges Mehrbenutzersystem - jetzt mal abgesehen von den Netzwerkfreigaben.
Für meine persönlichen Anforderungen passt es auf jeden Fall.
 
Ich spiel das Ganze jetzt noch einmal detailiert nach Deiner Anleitung durch.
Dabei tritt bei mir folgendes Proble auf:
wiki schrieb:
Dazu ändert man die Datei /tmp/flash/smb_conf so, daß im Bereich ?[global]? u.a. steht:
Die Datei "/tmp/flash/smb_conf" gibt es bei mir nicht. es gibt ein Verzeichnis "/tmp/flash/samba", aber auch darin befindet sich diese Datei nicht. In /var /tmp und /mod finde ich die Datei nirgendwo.
[Edit:] Es gibt eine Datei /etc/default.samba/smb_conf. Das ist ein Skript, das ich gerade gefunden habe.

Ich habe die Änderungen immer in /mod/etc/smb.conf vorgenommen.
 
Zuletzt bearbeitet:
Wenn du /etc/default.samba/smb_conf nach /tmp/flash/smb_conf kopierst und Änderungen daran vornimmst, dann sollten die nach einem "modsave" persistent sein.

MfG Oliver
 
Gibt es einen wesentlichen Vorteil gegenüber Kopieren von /mod/etc/smb.conf nach /tmp/flash/ und einem cp Befehl in /tmp/flash/rc.common?
den benötige ich ohnehin für smbpasswd. Mir persönlich scheint das sogar etwas einfacher, weil ich eine ganz normal smb.conf bearbeiten kann und nicht in einem Skript arbeiten muss. Im Schlimmsten Fall macht man eine der Abfragen kaputt und das Ganze funktioniert nicht mehr.
 
Ich denke nicht.

MfG Oliver
 
Kostenlos!

Statistik des Forums

Themen
248,917
Beiträge
2,305,038
Mitglieder
378,638
Neuestes Mitglied
Patrick89