staging.inyokaproject.org

Für diese Funktion musst du eingeloggt sein.

SMB Freigabe einrichten mit anonymen Schreibzugriff

Status: Ungelöst | Ubuntu-Version: Server 20.04 (Focal Fossa)
Antworten |

exaveal

Anmeldungsdatum:
17. März 2009

Beiträge: 515

Hallo,

ich versuche nun seit einiger Zeit schon vergeblich eine SMB Freigabe einzurichten im lokalen Netzwerk, so dass mein Multifunktionsdruckerscanner-Eierlegende-Wollmilchsau die gescannten Dokumente ablegen kann (schreibzugriff).

Dazu habe ich das Tutorial durchgearbeitet und meine Samba-Konfiguration schaut so aus:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
wolf@baerbel:~ $ cat /etc/samba/smb.conf
[global]
workgroup = WORKGROUP
security = user
encrypt passwords = yes
client min protocol = SMB2
client max protocol = SMB3
guest account = nobody

[Scans]
path = /media/Scans
available = yes
public = yes
browsable = yes
writeable = yes
read only = no
guest ok = yes

Das Verzeichnis wie folgt:

1
2
3
4
5
wolf@baerbel:/media $ ls -lah
total 12K
drwxr-xr-x  3 root     root     4.0K May 17 16:39 .
drwxr-xr-x 21 root     root     4.0K Jan 30 23:48 ..
drwxrwxrwx  3 www-data www-data 4.0K May 17 17:33 Scans

Den User "nobody" (der wie ich es verstanden habe verwendet wird, wenn der Schreibzugriff anonym erfolgt, habe ich in die Gruppe "www-data" gesteckt:

1
2
wolf@baerbel:/media $ id nobody         
uid=65534(nobody) gid=65534(nogroup) groups=65534(nogroup),33(www-data)

Info: den User "nobody" hätte ich auch in eine andere Gruppe stecken können. Hintergrund ist, dass das Verzeichnis "Scans" www-data gehört.

Die Ausgangslage ist jetzt, dass ich von anderen Rechnern zwar auf die SMB-Freigabe komme, aber nur neue Ordner erstellen kann. Keine Dateien. /€: Achja, und dass die Netzwerkfreigabe zweimal angezeigt wird. (siehe Screenshot)

Danke für eure Hilfe!

Anhang

chr123

Anmeldungsdatum:
19. Juli 2018

Beiträge: 1632

exaveal schrieb:

Dazu habe ich das Tutorial durchgearbeitet ...

Welches denn?

Kannst du bitte mal

1
2
3
getfacl /media/Scans
testparm -s
smbclient -L localhost -N

zeigen?

Muss es unbedingt /media sein? /media und /mnt werden auch für andere Zwecke verwendet. Für Freigaben finde ich die Verwendung von /opt sinnvoller.

Die Anlage von nobody in die Gruppe www-data ist nicht notwendig, wenn du sowieso die Rechte auf 777 für das Verzeichnis /media/Scans gesetzt hast.

exaveal

(Themenstarter)

Anmeldungsdatum:
17. März 2009

Beiträge: 515

Die Rechte habe ich nachträglich aus Verzweiflung erweitert. Ich möchte das natürlich - sobald es mal funktioniert - hinterher step-by-step wieder absichern. Ich habe das Tutorial aus dem Wiki durchgearbeitet: https://wiki.ubuntuusers.de/Samba_Server/ Okay, das ist vllt kein Tutorial, aber halt ein Wiki-Artikel 😀

Den ersten Befehl kenne ich leider nicht, und meine Maschine scheinbar auch nicht.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
wolf@baerbel:~ $ getfacl /media/Scans
-bash: getfacl: command not found
wolf@baerbel:~ $ testparm -s
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[Scans]"
Loaded services file OK.
Server role: ROLE_STANDALONE

# Global parameters
[global]
	client max protocol = SMB3
	client min protocol = SMB2
	security = USER
	idmap config * : backend = tdb


[Scans]
	guest ok = Yes
	path = /media/Scans
	read only = No
wolf@baerbel:~ $ smbclient -L localhost -N
Unable to initialize messaging context
Anonymous login successful

	Sharename       Type      Comment
	---------       ----      -------
	Scans           Disk      
	IPC$            IPC       IPC Service (Samba 4.9.5-Debian)
SMB1 disabled -- no workgroup available

Doc_Symbiosis

Avatar von Doc_Symbiosis

Anmeldungsdatum:
11. Oktober 2006

Beiträge: 4453

Wenn getfacl nicht gefunden wird, dann installiere mal das Paket acl.

Aber das ist offensichtlich eh nicht in Verwendung, daher kannst Du Dir die Angabe von getfacl auch sparen...

chr123

Anmeldungsdatum:
19. Juli 2018

Beiträge: 1632

Mach erstmal folgendes:

Rückbau der 777 Rechte (rekursiv):

1
sudo chmod -R u=rwx,g=rwx,o= /media/Scans

Dann ändere die Eigentümer (ebenfalls rekursiv) auf den Benutzer www-data bzw. Gruppe www-data:

1
sudo chown -R www-data:www-data /media/Scans

Da nobody in der Gruppe www-data ist, sollte der Zugriff grundsätzlich klappen. Ändere dann die Freigabe in deiner smb.conf

[Scans]
path = /media/Scans
guest ok = yes
force user = www-data
force group = www-data
create mask = 0000
force create mode = 0770
directory mask = 0000
force directory mode = 0770
read only = no

Anschließend Syntaxkontrolle:

1
testparm -s

Es sollte sich sowohl der Eigentümmer www-data vererben als auch neu erstellte Dateien der Gruppe www-data angehören. Die Rechte sollten immer 770 sein.

exaveal

(Themenstarter)

Anmeldungsdatum:
17. März 2009

Beiträge: 515

Ich habe soweit beschrieben alles geändert - und bin ein Stück weiter, aber noch nicht am Ziel. Ich kann jetzt auf dem SMB Share neue Ordner erstellen und in den Ordnern auch Dateien ablegen. Ich kann allerdings keine Dateien im "Wurzelverzeichnis" des SMB-Shares ablegen. Es kommt auch keine Fehlermeldung.

So sieht es aus:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
wolf@baerbel:/media/Scans $ ls -lah
total 16K
drwxrwx--- 4 www-data www-data 4.0K May 18 10:40  .
drwxr-xr-x 3 root     root     4.0K May 17 16:39  ..
drwxrwx--- 2 www-data www-data 4.0K May 18 10:36 'Nur Verzeichnisse - keine Dateien'
drwxrwx--- 2 www-data www-data 4.0K May 18 10:40 'hier kann man nur neue Verzeichnisse erstellen'
wolf@baerbel:/media/Scans $ cd hier\ kann\ man\ nur\ neue\ Verzeichnisse\ erstellen/
wolf@baerbel:/media/Scans/hier kann man nur neue Verzeichnisse erstellen $ ls -lah
total 12K
drwxrwx--- 2 www-data www-data 4.0K May 18 10:40  .
drwxrwx--- 4 www-data www-data 4.0K May 18 10:40  ..
-rwxrwx--- 1 www-data www-data   20 May 18 10:33 'Hier kann man auch Dateien erstellen.txt'

Blöderwiese erstellt mein Multiscanner nur die Dateien. D.h. ich kann auch keinen Workaround machen, dass er die Dateien in einem Verzeichnis des Shares ablegt.

chr123

Anmeldungsdatum:
19. Juli 2018

Beiträge: 1632

Das Verzeichnis /media ist halt eine Besonderheit. Du kannst ja mal schauen, ob das Problem auch mit einer Krücke auftritt:

sudo mkdir /media/Scans/test
sudo chown www-data:www-data /media/Scans/test
sudo chmod u=rwx,g=rwx,o= /media/Scans/test

Und in der smb.conf dann

[Scans]
path = /media/Scans/test

Rest unverändert.

Alternativ installiere mal acl und schaue dir die Rechte an

sudo apt install acl
getfacl /media
getfacl /media/Scans

exaveal

(Themenstarter)

Anmeldungsdatum:
17. März 2009

Beiträge: 515

Habe den Test gemacht, aber wieder das gleiche: Im Wurzelverzeichnis des Shares kann man nur Ordner anlegen ... ?!

Samba-Config:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
wolf@baerbel:~ $ cat /etc/samba/smb.conf
[global]
workgroup = WORKGROUP
security = user
encrypt passwords = yes
client min protocol = SMB2
client max protocol = SMB3
guest account = nobody

[Scans]
path = /media/smb-share/Scans
guest ok = yes
force user = www-data
force group = www-data
create mask = 0000
force create mode = 0770
directory mask = 0000
force directory mode = 0770
read only = no

Verzeichnisse:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
wolf@baerbel:/media $ ls -lah
total 12K
drwxr-xr-x  3 root     root     4.0K May 18 13:02 .
drwxr-xr-x 21 root     root     4.0K Jan 30 23:48 ..
drwxrwx---  3 www-data www-data 4.0K May 18 13:11 smb-share
wolf@baerbel:/media $ ls -lah smb-share 
total 12K
drwxrwx--- 3 www-data www-data 4.0K May 18 13:11 .
drwxr-xr-x 3 root     root     4.0K May 18 13:02 ..
drwxrwx--- 4 www-data www-data 4.0K May 18 13:11 Scans
wolf@baerbel:/media $ ls -lah smb-share/Scans/
total 16K
drwxrwx--- 4 www-data www-data 4.0K May 18 13:11  .
drwxrwx--- 3 www-data www-data 4.0K May 18 13:11  ..
drwxrwx--- 3 www-data www-data 4.0K May 18 13:08  folder123
drwxrwx--- 2 www-data www-data 4.0K May 18 10:40 'hier kann man nur neue Verzeichnisse erstellen'
wolf@baerbel:/media $ ls -lah smb-share/Scans/hier\ kann\ man\ nur\ neue\ Verzeichnisse\ erstellen/
total 12K
drwxrwx--- 2 www-data www-data 4.0K May 18 10:40  .
drwxrwx--- 4 www-data www-data 4.0K May 18 13:11  ..
-rwxrwx--- 1 www-data www-data   20 May 18 10:33 'Hier kann man auch Dateien erstellen.txt'

Und die Berechtigungen:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
wolf@baerbel:/media $ getfacl /media
getfacl: Removing leading '/' from absolute path names
# file: media
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

wolf@baerbel:/media $ getfacl /media/smb-share 
getfacl: Removing leading '/' from absolute path names
# file: media/smb-share
# owner: www-data
# group: www-data
user::rwx
group::rwx
other::---

wolf@baerbel:/media $ getfacl /media/smb-share/Scans 
getfacl: Removing leading '/' from absolute path names
# file: media/smb-share/Scans
# owner: www-data
# group: www-data
user::rwx
group::rwx
other::---

wolf@baerbel:/media $ getfacl /media/smb-share/Scans/hier\ kann\ man\ nur\ neue\ Verzeichnisse\ erstellen/
getfacl: Removing leading '/' from absolute path names
# file: media/smb-share/Scans/hier kann man nur neue Verzeichnisse erstellen/
# owner: www-data
# group: www-data
user::rwx
group::rwx
other::---

Irgendwie komisch 🦆

chr123

Anmeldungsdatum:
19. Juli 2018

Beiträge: 1632

Das ist ja ein merkwürdiges Phänomen. An der Freigabe in der smb.conf kann es nicht liegen (oder ich habe Tomaten auf den Augen). Die Rechte shene auch ok aus! Lass uns mal testen, ob es an /media liegt.

1
2
3
sudo mkdir /opt/scans
sudo chown www-data:www-data /opt/scans
sudo chmod u=rwx,g=rwx,o= /opt/scans

Dann noch einen Eintrag in der smb.conf:

[Scan-Test]
path = /opt/scans
guest ok = yes
force user = www-data
force group = www-data
create mask = 0000
force create mode = 0770
directory mask = 0000
force directory mode = 0770
read only = no

Zeige auch mal die Ausgabe von

1
mount

exaveal

(Themenstarter)

Anmeldungsdatum:
17. März 2009

Beiträge: 515

Genau das gleiche. Ich kann erst eine Ebene weiter Dateien ablegen. Ich habe jetzt einen Workaround gefunden, wie mein Scanner es eine Ebene weiter drunter ablegt. Somit ist der UseCase nun erfüllt. Interessieren würde es mich trotzdem, aber meine Fähigkeiten sind auch beschränkt 😀

Ich habe also jetzt die smb.conf so erweitert, dass der Scanner sich jetzt als user "hp-printer" einloggt. Ich habe also einen zweiten Share für den Test eingerichtet.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
wolf@baerbel:~ $ cat /etc/samba/smb.conf
[global]
workgroup = WORKGROUP
security = user
encrypt passwords = yes
client min protocol = SMB2
client max protocol = SMB3
map to guest = bad user
guest account = nobody

[Scans]
path = /media/smb-share/Scans
guest ok = no
force user = hp-printer
force group = www-data
create mask = 0000
force create mode = 0770
directory mask = 0000
force directory mode = 0770
read only = no

[SmbTestScans]
path = /opt/SmbTestScans
guest ok = yes
force user = www-data
force group = www-data
create mask = 0000
force create mode = 0770
directory mask = 0000
force directory mode = 0770
read only = no

Dann die Verzeichnisstruktur:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
wolf@baerbel:/ $ ls -lah opt
total 20K
drwxr-xr-x  5 root     root     4.0K May 18 16:35 .
drwxr-xr-x 21 root     root     4.0K Jan 30 23:48 ..
drwxrwx---  3 www-data www-data 4.0K May 18 16:42 SmbTestScans
drwxr-xr-x  3 root     root     4.0K Jan 27  2020 eff.org
drwxr-xr-x  6 root     root     4.0K Sep 26  2019 vc
wolf@baerbel:/ $ ls -lah opt/SmbTestScans/
total 12K
drwxrwx--- 3 www-data www-data 4.0K May 18 16:42 .
drwxr-xr-x 5 root     root     4.0K May 18 16:35 ..
drwxrwx--- 3 www-data www-data 4.0K May 18 16:42 testfolder
wolf@baerbel:/ $ ls -lah opt/SmbTestScans/testfolder/
total 12K
drwxrwx--- 3 www-data www-data 4.0K May 18 16:42 .
drwxrwx--- 3 www-data www-data 4.0K May 18 16:42 ..
-rwxrwx--- 1 www-data www-data    0 May 18 16:42 testfile.txt
drwxrwx--- 2 www-data www-data 4.0K May 18 16:42 testfolder

und die Ausgabe von mount:

wolf@baerbel:/ $ mount
/dev/mmcblk0p2 on / type ext4 (rw,noatime)
devtmpfs on /dev type devtmpfs (rw,relatime,size=823896k,nr_inodes=103725,mode=755)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,relatime)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,mode=755)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
cgroup2 on /sys/fs/cgroup/unified type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,name=systemd)
none on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime,mode=700)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=38,pgrp=1,timeout=0,minproto=5,maxproto=5,direct)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
mqueue on /dev/mqueue type mqueue (rw,relatime)
sunrpc on /run/rpc_pipefs type rpc_pipefs (rw,relatime)
nfsd on /proc/fs/nfsd type nfsd (rw,relatime)
configfs on /sys/kernel/config type configfs (rw,relatime)
/dev/mmcblk0p1 on /boot type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,errors=remount-ro)
/dev/mapper/hd_data01 on /home/wolf/hd_data01 type ext4 (rw,relatime)
/dev/mapper/hd_data02 on /home/wolf/hd_data02 type ext4 (rw,relatime)
/dev/mapper/hd_data03 on /home/wolf/hd_data03 type ext4 (rw,relatime)
/dev/mapper/hd_cloud on /home/wolf/hd_cloud type ext4 (rw,relatime)

Ich greife auf die Freigabe via XFCE/Thunar zu. Ich habe leider keinen Windows-Rechner zum testen, ob es vielleicht auch XFCE/Thunar liegt.

chr123

Anmeldungsdatum:
19. Juli 2018

Beiträge: 1632

Verrückt. Also kannst du sowohl per Xfce als auch per Multifunktionsgerät keine Dateien direkt auf Ebene des Shares erstellen? Nur Ordner?

Kannst du bitte mal schauen, ob das Problem auch mit mount.cifs besteht?

sudo apt install cifs-utils
mkdir ~/test_smb
sudo mount -t cifs --verbose -o username=guest,password=,uid=1000 //localhost/SmbTestScans ~/test_smb

Dann in deinem home ins Verzeichnis test_smb schauen.

Antworten |