Simple Freigabe ohne Kennwort

Hallo,
mein kleiner Server läuft wunderbar und bedient die Windows Clients, welche in der Domäne sind, ausgezeichnet… jetzt habe ich eine alte Maschine, welche auf Daten im Netzwerk zugreifen muss. Dort kann ich nur einen SMB Share ohne Authentifikation eintragen. Früher hatte ich hierfür einen alten Windows PC mit Gast Freigabe eingerichtet, welchen ich aber gerne weg haben möchte…
Leider finde ich keine Möglichkeit dies einzutragen - ein Versuch die Option “Anonymen Nur-Lese-Zugriff mit Gastbenutzer erlauben” ging auch nicht (abgesehen davon, dass ich auch Schreibrechte bräuchte…)

Bitte um Hilfe,
Viele Dank!

Hallo

In der UMC in den Einstellungen der Freigabe unter Samba den folgenden Haken setzen
Anonymen Nur-Lese-Zugriff mit Gastbenutzer erlauben
Natürlich müssen auch die Berechtigungen für “jeder” gesetzt sein:
Unter Allgemein:
Dateiberechtigungen für das Wurzelverzeichnis der Freigabe
Quasi 777
und in erweiterte Einstellungen → erweiterte Samba Rechte
Dateimodus 777
Verzeichnis-Modus 777

Danke, ich habe es genau wie angegeben gemacht - Screenshots:





und auch auf der Konsole kontrolliert:

drwxrwxrwx 2 root root 4096 Jan 27 10:09 public

Es klappt aber einfach nicht - was mache ich falsch?

Bin einen kleinen Schritt weiter… wenn ich es unter Lubuntu teste (mit PCManFM) und dort auf Netzwerk klicke, kann ich den Server auswählen und auf “anonyme Anmeldung” klicken.
Leider funktioniert es unter Windows nicht - es kommt immer die Abfrage!

Nachdem ich diesebezüglich einige Dinge probiert und nachgeschaut habe und leider keine erschöpfende Erklärung find, würde ich zumindest mal aufschreiben, was ich gefunden habe.
Vielleicht findet ja jemand die Nadel.

Mit der Installation von Samba 4 unter UCS wird ein “guest”-Konto angelegt. Bei diesem sind zunächst alle Anmeldemethoden deaktiviert. Das ist m.E. wie in Windows.

In den man-pages der smb.conf findet sich ein Kapitel “security” welches Informationen zur Funktionsweise des Guest Kontos bereitstellt.

Es gibt 3 UCR-Variablen die Einfluss haben sollten. Die Default müssten eigentlich passen, aber so sicher bin ich mir da auch nicht (Erläuterungen finden sich dazu auch in den man-pages der smb.conf):

[code]samba/guest_account: nobody
A non-authenticated read-only access can be configured for shares. Such accesses are mapped to the user configured here. If the variable is unset, the user account ‘nobody’ is used.

samba/map_to_guest: Bad User
If this variable is set to ‘Bad User’ or unset, Samba logins from users without a valid account are mapped to the guest user (see variable ‘samba/guest_account’). If the variable is set to ‘Never’, the login is denied.

samba/usershare/allow_guests:
If user shares are activated using ‘samba/usershare/max_shares’ and if this variable is set to ‘yes’, the user shares can be accessed without authentication.
[/code]

Bei meinen Tests habe ich mit einem Linux-Client ebenfalls eine erfolgreiche anonyme Anmeldung geschaft. Windows-Clients aus der Domäne können ebenfalls zugreifen. Bei einem Windows 7 Client der nicht in der Domäne kommt immer der Anmeldedialog. Die Einstellung “security = share” in der smb.conf könnte diesen verhindern, aber ich denke, dass man daran nicht drehen sollte.

Ich habe dann mal die UCRV samba/debug/level hochgesetzt und dabei festgestellt, dass der Linux-Client keinen (einen leeren) Nutzernamen mitgeschicht hat während Windows immer mit dem aktuell angemeldeten Konto ankam.
Aktuell vermute ich eher, dass ich etwas an den Clienteinstellungen des Windowsclients drehen müsste, grundsätzlich funktioniert ja der Zugriff.

Viele Grüße,
Dirk Ahrnke

Danke für die Mühe - jetzt weiß ich zumindest, dass ich nicht zu blöd bin und das Problem reproduzierbar ist. Wäre schön wenn jemand des Rätsels Lösung hätte… bis dahin muss der alte PC noch halten :slight_smile:

Vielleicht können Sie ja auch mal den loglevel vom Samba hochsetzen und dann in /var/log/samba/log.smbd nach den Verbindungen des Clients suchen. Unter Umständen verrät uns der Blick auf die Protokolle etwas.

Weil ich gerade das gleiche Problem zu lösen hatte, und auch keine wirklich befriedigende Lösung finden konnte, hier mal kurz mein “vorläufiges Endergebnis”, vielleicht hilft es ja künftig noch jemandem weiter:

Samba prüft im AD Modus (server role = ACTIVE DIRECTORY DOMAIN CONTROLLER) zunächst den Client (PC), bevor es die Zugangsdaten des Benutzers prüft (auch die Entscheidung Gast ja/nein), so wie ich das in der Doku rausgelesen habe.

Das hat dann zur Folge, dass bei negativer Prüfung (PC kein Domänenmitglied) immer nach Zugangsdaten gefragt wird. Ist der PC hingegen Domänenmitglied, und nur der User (für das Share) unbekannt, kann offensichtlich ein Gaszugang erfolgen.

Soll ein “echter” Gastzugang eingerichtet werden, wo sowohl PC als Benutzer unbekannt sind und keine Zugangsdaten abgefragt werden, ist dies anscheinend nur mit der Rolle “Standalone” ohne AD möglich.

Siehe dazu Samba FAQ: https://wiki.samba.org/index.php/FAQ

“How Do I Enable Guest Access to a Share on a Samba AD DC?
On non-AD DCs, you can set the map to guest parameter in the smb.conf file to bad user to enable guest access. However, guest access is based on the guest account parameter, that is not implemented in the Samba AD mode.”

Das heißt nach meinem Verständnis, die ganzen “Guest” Parameter haben im AD Modus gar keine Auswirkung, egal was man einstellt.

Da aber im Standalone Modus ein großer Teil der Funktionalität von UCS nicht verfügbar ist, wird man in der Regel auf den AD Modus nicht verzichten wollen. Weil es in gewissen Konstellationen zu umständlich, oder auch gar nicht möglich ist, alles PCs in die Domäne aufzunehmen (“echte” Gäste, die mal eben vom Laptop was auf den Server kopieren sollen), ist aus meiner Sicht der sinnvollste Weg, ein Gastkonto im AD anzulegen, das außer Zugriff auf das spezielle Share sonst nichts darf.

So habe ich es im aktuellen Fall dann am Ende auch gelöst. Dann muss sich der Gast halt einmalig mit “gast” / “gast” authentifizieren, das ist wohl zu verkraften. Und wenn der Gast den Haken zum Speichern der Anmeldedaten setzt, muss er das auch später nie wieder.

Ich bin absolut kein Experte für Samba. Wer sich besser auskennt, darf gerne ergänzen / korrigieren :slight_smile:

Mein Beitrag ist nur als kleine Erfahrungssammlung mit Stand von heute zu verstehen, und vielleicht hilft es dem einen oder anderen, das Problem nicht länger bei sich selbst zu suchen :innocent:

Grüße Thorger

Toll, dass du dir hier die Mühe gemacht hast… ich finde es auch verwirrend, dass die Weboberfläche auf den Gastzugriff so gar nicht intuitiv in der Bedienung ist. So toll ich das UCS System finde, ein paar Basics wurden aus meiner Sicht vernachlässigt.

  • “echter” Gast Zugriff sollte ausgegraut/ausgeblendet werden bzw. mit einer Info versehen
  • ACL Rechte sollte in der Web Oberfläche gesetzt werden können
  • DHCP Leases sind nicht sichtbar… aber ich fürchte ich schweife ab :wink:

Aber nobody is perfect & ich hoffe auf das nächste Release!

Ich habe für obige Anwendung übrigens den alten “Gast Server” virtualisiert laufen… die Maschinenanbindungen hätten auch mit SMB2 ihre liebe Not… tw. noch mit DOS, Win98 oder Uralt Linux…

Mastodon