Wie mit smbpasswd User anlegen ohne sie mit adduser einzurichten

Probleme mit Samba, NFS, FTP und Co.
Antworten
kale
Beiträge: 11
Registriert: 07.03.2019 17:35:11

Wie mit smbpasswd User anlegen ohne sie mit adduser einzurichten

Beitrag von kale » 07.03.2019 18:34:47

Hallo

ich habe einen Debian 9 Home-Server aufgesetzt und möchte 2 Clienten vollen SMB Zugriff gewähren mittels User + PW Login.

Ich habe mir das so vorgestellt:

Server (Admin) = User Otto

Linux Client 1 = User Paul, PW = 1234

Linux Client 2 = User Sabine, PW = 5678

Wie kann ich Paul und Sabine mittels smbpasswd eintragen OHNE sie mittels adduser als Linux-Benutzer anzulegen.
Sie erhalten keinen physischen Zugriff auf den Server und somit wird kein Desktop Login, Home Verzeichnisse usw. benötigt.
Beide sollen per SMB Zugriff auf / erhalten.

Gibt es Alternativen mit GUI zu smbpasswd?

TomL

Re: Wie mit smbpasswd User anlegen ohne sie mit adduser einzurichten

Beitrag von TomL » 07.03.2019 19:26:42

kale hat geschrieben: ↑ zum Beitrag ↑
07.03.2019 18:34:47
ich habe einen Debian 9 Home-Server aufgesetzt und möchte 2 Clienten vollen SMB Zugriff gewähren mittels User + PW Login.
An der Stelle fallen mir 2 wichtige Fragen ein:
  • Zu welchem Zeitpunkt findet der Mount auf dem Client-PC statt? (fstab oder nach der Anmeldung durch den User)
  • Ist sichergestellt, dass die Client-Hardware immer nur von diesen 2 Benutzern bedient wird und jeder konstant nur seinen eigenen PC verwendet?
Das ist schon wichtig vor dem Hintergrund, ob es sich hier um Static-Mounts (durch root) während der Boot-Phase handelt oder um dynamische Mounts, die individuell durch oder wegen der Useranmeldung und explizit für den User erfolgen und bei Abmeldung auch wieder getrennt werden. Daraus ergibt sich dann auch die Anwort, ob man überhaupt Samba-Passwords braucht, oder ob man nicht einfacher die speziellen Freigaben einfach aufs Server-Homedir der User bind'ed oder noch einfacher, das lediglich über Linuxrechte handhabt.

kale
Beiträge: 11
Registriert: 07.03.2019 17:35:11

Re: Wie mit smbpasswd User anlegen ohne sie mit adduser einzurichten

Beitrag von kale » 07.03.2019 19:56:51

Der Mount findet nach der Anmeldung der Client User statt, entweder über Client PC oder Client Smartphones (ES-Dateiexplorer).

Ja, das ist sichergestellt, nur die 2 Clienten im lokalen Netzwerk.

Was ist mit Linuxrechten gemeint, SSH?

Wir finden SMB am komfortabelsten für den Server Zugriff. Dateiaustausch kann bequem über Thunar erfolgen.

TomL

Re: Wie mit smbpasswd User anlegen ohne sie mit adduser einzurichten

Beitrag von TomL » 07.03.2019 23:33:31

kale hat geschrieben: ↑ zum Beitrag ↑
07.03.2019 19:56:51
Was ist mit Linuxrechten gemeint, SSH?
Vor dem jetzt bekannten Hintergrund kann man das wohl vernachlässigen.

Tja, das ist mit Samba etwas anders als z.B. mit Dovecot. So kann man mit/für Dovecot virtuelle User anlegen, die nicht auch im Linux existieren müssen. Aber ohne Linux-User gibts meines Wissens nach keinen Samba-User. Möglicherweise gibts aber eine Lösung...die man einfach mal versuchen muss:

Code: Alles auswählen

adduser paul --no-create-home --gecos "" --disabled-password
adduser sabine --no-create-home --gecos "" --disabled-password
Damit werden 2 Linux-User angelegt, die sich nicht anmelden können, die kein Homedir haben, die aber dennoch Linux-User sind. Wenns klappt und Samba damit zufrieden ist, kannst Du vielleicht die Samba-PWDs konfigurieren:

Code: Alles auswählen

smbpasswd -a paul
smbpasswd -a sabine
Kene Ahnung, ob das funkioniert... probiers mal.... und schreib bitte hier anschlließend, ob erfolgreich oder erfolglos.

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: Wie mit smbpasswd User anlegen ohne sie mit adduser einzurichten

Beitrag von MSfree » 08.03.2019 08:38:31

TomL hat geschrieben: ↑ zum Beitrag ↑
07.03.2019 23:33:31
Aber ohne Linux-User gibts meines Wissens nach keinen Samba-User.
Richtig. User-IDs (eine Benutzernummer, die einem Benutzernamen zugeordnet ist) sind zwingend nötig für die Verwaltung von Dateien im Linuxdateisystem.

Man kann natürlich auch einen Gast anlegen und Samba alles ins Gastkonto mappen lassen.
Möglicherweise gibts aber eine Lösung...die man einfach mal versuchen muss:...
Alternativ kann man Benutzern auch /bin/false als Login-Shell geben, dann können sie sich auch nicht einloggen.

kale
Beiträge: 11
Registriert: 07.03.2019 17:35:11

Re: Wie mit smbpasswd User anlegen ohne sie mit adduser einzurichten

Beitrag von kale » 08.03.2019 11:26:48

Das hat funktioniert :)

1.
adduser paul --no-create-home --gecos "" --disabled-password
adduser sabine --no-create-home --gecos "" --disabled-password

2.
sudo useradd -s /bin/false sabine

3.
sudo smbpasswd -a sabine

Login über client-pc funktioniert, ohne das die User als Linux Benutzer angelegt wurden.

Jetzt habe ich noch das Problem wie ich alle 3 User unter Valid Users eintrage in der smb.conf
Bis jetzt gelingt der client login nur wenn ein user bei valid users eingetragen ist: z.B. valid users = Otto

[global]
workgroup = smb
security = user
map to guest = never

[homes]
comment = Home Directories
browsable = no
read only = no
create mode = 0750

[restricted]
valid users = Otto,Paul,Sabine (So würde ich es gerne eintragen)
#Wir beschränken den Zugriff auf den User ''smbuser''
#valid users = @smbusers
#Alternativ kann auch auf eine Benutzergruppe eingeschränkt werden
path = /
public = no
writable = yes
comment = smb restricted share
printable = no
guest ok = no
create mask = 0600
directory mask = 0700

Wie kann ich alle 3 eintragen?

[restricted]
valid users = Otto
valid users = Paul
valid users = Sabine

geht auch nicht.

Danke für alle Antworten bisher

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: Wie mit smbpasswd User anlegen ohne sie mit adduser einzurichten

Beitrag von MSfree » 08.03.2019 11:44:21

kale hat geschrieben: ↑ zum Beitrag ↑
08.03.2019 11:26:48
Das hat funktioniert :)

1.
...
adduser sabine --no-create-home --gecos "" --disabled-password

2.
sudo useradd -s /bin/false sabine

3.
sudo smbpasswd -a sabine

Login über client-pc funktioniert, ohne das die User als Linux Benutzer angelegt wurden.
Mit dem obogen adduser wurde "sabine" als Linux Benutzer angelegt. Es stimmt also nicht, wenn du sagst "ohne das die User als..."
Jetzt habe ich noch das Problem wie ich alle 3 User unter Valid Users eintrage in der smb.conf
Wozu soll das gut sein? Zugriff haben sowieso nur die Benutzer, die ein gültiges Paßwort haben.
Meiner Meinung nach ist der Eintrag valid users in deinem Fall unnötig. Wenn du das doch unbedingt willst, muß es so aussehen:

Code: Alles auswählen

valid users = otto paul sabine
die Liste ist durch Leerzeichen zu trennen und die Nutzernamen müssen in korrekter Schreibweise (Groß- Kleinschreibung) angegeben werden.

kale
Beiträge: 11
Registriert: 07.03.2019 17:35:11

Re: Wie mit smbpasswd User anlegen ohne sie mit adduser einzurichten

Beitrag von kale » 08.03.2019 13:12:10

Ja Du hast recht, ich habe ich mich zu früh gefreut. Nach dem ausloggen habe ich es bemerkt.

Da bleibt wohl nur die Möglichkeit alle als Linux Benutzer anzulegen, oder allen meinen Admin Login zu geben.
Da die clienten eh Zugriff auf / haben dürfte das nicht ins Gewicht fallen.

Das mit dem Valid Users habe ich aus einer Anleitung übernommen, ich bin noch nicht so fit mit Linux.
Hatte den Server erst mit Luks aufgesetzt, es aber nicht geschafft mich remote an der Luks Eingabeaufforderung anzumelden, auch nicht mit Mandos. Nun läuft er unverschlüsselt. Möchte ihn deswegen so gut es geht nach außen hin absichern.

Dachte das mit restricted und Valid Users ist ein guter Anfang, damit kein Unbefugter SMB Zugang erhält.

Danke soweit

TomL

Re: Wie mit smbpasswd User anlegen ohne sie mit adduser einzurichten

Beitrag von TomL » 08.03.2019 16:54:01

kale hat geschrieben: ↑ zum Beitrag ↑
08.03.2019 13:12:10
Da bleibt wohl nur die Möglichkeit alle als Linux Benutzer anzulegen, oder allen meinen Admin Login zu geben.
Da die clienten eh Zugriff auf / haben dürfte das nicht ins Gewicht fallen.
Diesen Rückschluss verstehe ich nicht. Der auf bestimmte Verzeichnisse erteilte Samba-Zugriff hat doch nichts mit einem Admin-Login zu tun. Du hattest gesagt, der Mount erfolgt nach dem Linux-Login des Users im grafischen Desktop-Environment. Diese Anmeldung wird genutzt, damit die Samba-Shares mit dem Usernamen und SMB-Pwd dieses Users gemountet wird. Was muss man denn da jetzt noch machen? Der User kann doch nur das mounten, wozu er samba-seits berechtigt ist. Das er als 'halber' Linux-User auf dem Samba-Server angelegt ist, hat ja gar nix zu sagen... das ist doch nur ein Umstand, den Samba verlangt.

kale
Beiträge: 11
Registriert: 07.03.2019 17:35:11

Re: Wie mit smbpasswd User anlegen ohne sie mit adduser einzurichten

Beitrag von kale » 08.03.2019 17:27:51

Das ist so gemeint:
Die Clienten haben über Samba Lese- und Schreibzugriff auf /, also auf alles.

Da die Clienten sich nur mit eigener User und PW Kombination anmelden können über smb://xxx wenn sie gleichzeitig als Linux Benutzer im Server angelegt sind, denke ich macht es keinen Unterschied wenn sie sich als Admin anmelden können. Sie haben so oder so Schreibzugriff auf /.

Mit dem Unterschied das ich sie nicht als Linux Benutzer anlegen muss, wenn sie sich als Admin anmelden.
Da sich die Clienten nie physisch am Server anmelden mit Login wollte ich vermeiden sie als User mit Home Verzeichnissen usw. anzulegen.

Vielleicht ist aber eine saubere Trennung durch Linux-Benutzer Konten Anlegung doch das beste.
Eigentlich geht es nur um gemeinsamen Zugriff auf /mnt bzw /media.

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: Wie mit smbpasswd User anlegen ohne sie mit adduser einzurichten

Beitrag von MSfree » 08.03.2019 19:25:45

kale hat geschrieben: ↑ zum Beitrag ↑
08.03.2019 17:27:51
Die Clienten haben über Samba Lese- und Schreibzugriff auf /, also auf alles.
Nein, die Clients habe längst nicht Zugriff auf alles. Sie dürfen z.B. definitiv nicht auf /etc schreiben, denn dazu müßten sie die Samba-Freigabe mit dem Benutzernamen "root" mounten. Samba macht ja nicht aus einer Freigabe ein Du-darfst-Alles, denn das wäre ein riesiges Sicherheitsloch, das man den Entwicklern schon längst um die Ohren gehauen hätte.

TomL

Re: Wie mit smbpasswd User anlegen ohne sie mit adduser einzurichten

Beitrag von TomL » 08.03.2019 20:06:53

kale hat geschrieben: ↑ zum Beitrag ↑
08.03.2019 17:27:51
Die Clienten haben über Samba Lese- und Schreibzugriff auf /, also auf alles.
Wenn das möglich wäre, wäre das tatsächlich ein sicherheitstechnischer Super-GAU. GSD lässt Samba das nicht so einfach zu. Und ich entschuldige mich im Voraus für mein nächstes Statement... aber wenn bei Dir ganz allgemein dieser Kenntnisstand und ein solches Interesse bei den Benutzern vorliegt, musst Du Dir über Passworte und Zugangsberechtigungen eigentlich keine Gedanken machen. Du wirst damit nie eine Gewährleistung dafür haben, wer ausser den beabsichtigten Personen außerdem noch die Kontrolle über diesen Computer hat.

Grundsätzlich hat msfree recht... aber nur solange, wie nicht irgendeiner der User auch einen 'unlimited' sudo-Account hat, der gelegentlich z.B. via SSH oder auch direkt am System verwendet wird. In diesem Fall wird Zugriffs-Sicherheit zu reinem Wunschdenken. Das kann gutgehen, aber es gibt keine Gewährleistung dafür, dass der Rechner niemals kompromittiert wird. Ich würde das also unterscheiden... samba-user sind grundsätzlich unberechtigte User. Gibt es User, die Admin-Tätigkeiten durchführen sollen, melden die sich dafür via SSH an ihrem Linux-Account an und haben entweder eine restriktive Polkit-Berechtigungsstufe oder, falls sie sachkundig sind, Kenntnis vom Root-Password. Handelt es sich hier nur um einen unwichtigen privaten Rechner, kann man das mit oder ohne Sicherheitsaspekte frei und nach eigenem gutdünken handhaben. Die Höhe der Messlatte für Sicherheit -was also letztlich richtig und notwendig ist- definiert sich durch die Wichtigkeit des Datenbestand des Rechners selber.
Mit dem Unterschied das ich sie nicht als Linux Benutzer anlegen muss, wenn sie sich als Admin anmelden.
Da sich die Clienten nie physisch am Server anmelden mit Login wollte ich vermeiden sie als User mit Home Verzeichnissen usw. anzulegen.
Das ist ein Widerspruch an sich. Es gibt keine Admin-Anmeldung durch User, die nicht auch Linux-User sind. Das heisst, es können sich nur im Linux angemeldete User Adminrechte aneignen... sofern ihnen das erlaubt ist. Das hat aber gar nix mit Samba zu tun und braucht auch kein Samba und verwendet auch kein Samba.

:roll:

kale
Beiträge: 11
Registriert: 07.03.2019 17:35:11

Re: Wie mit smbpasswd User anlegen ohne sie mit adduser einzurichten

Beitrag von kale » 09.03.2019 13:47:25

Vielen Dank für die ausführliche Erläuterung.

Mir ist bewusst das ich noch viel lernen muss.
Habe bisher nur Linuxmint Desktop Erfahrung und war mit SSH noch nicht befasst.
Jetzt mit dem Server aufsetzen merkt man erst einmal was für eine Handarbeit (Terminal) nötig ist ;-)

Viele Grüsse und ein schönes Wochenende

Antworten