|
zomgomg
Anmeldungsdatum: 3. Januar 2021
Beiträge: Zähle...
|
Ich habe auf meinem System eine Samba-Freigabe eingerichtet, beim Versuch auf diese von meinem Windows 10 zuzugreifen (Netzlaufwerk hinzufügen) begrüßt mich diese Meldung "Sie haben keine Berechtigung für den Zugriff auf \\server\order\." Meine smb.conf hat den folgenden Eintrag:
| [ordner]
path = /mnt/ordner
valid users = neuer_user
public = yes
browsable = yes
writeable = yes
create mask = 0777
directory mask = 0777
|
"neuer_user" habe ich eingerichtet:
| useradd new_user
smbpasswd -a new_user
smbpasswd -e new_user
|
Dienst neugestartet mit | sudo systemctl restart smb
|
. In das Verzeichnis /mnt/ordner wird automatisch eine externe Festplatte eingehanden, die zugehörige /etc/fstab:
| UUID=XXXXXXXXXXXXXXXX /mnt/ordner/ ntfs-3g utf8,dmask=007,fmask=007,umask=007,noatime 0
|
Wenn ich unter Windows auf "Netzlaufwerk verbinden" gehe und dort bei "Ordner:" \\server eingebe und auf "Durchsuchen..." klicke wird auch as Verzeichnis "ordner" erkannt. Bei einem Klick darauf oben genannte Fehlermeldung
|
|
chr123
Anmeldungsdatum: 19. Juli 2018
Beiträge: 1632
|
Das liegt weniger an Samba, sondern eher an den Rechten von /mnt. Wahrscheinlich hat der new_user keine Rechte in diesem Verzeichnis. Siehe Ausgabe von
getfacl /mnt/
getfacl /mnt/ordner
|
|
zomgomg
(Themenstarter)
Anmeldungsdatum: 3. Januar 2021
Beiträge: Zähle...
|
chr123 schrieb: Das liegt weniger an Samba, sondern eher an den Rechten von /mnt. Wahrscheinlich hat der new_user keine Rechte in diesem Verzeichnis. Siehe Ausgabe von
getfacl /mnt/
getfacl /mnt/ordner
ich hab mal geschaut welche UID/GID mein Nutzer new_user hat (1001/1001) und das in die fstab eingetragen:
| UUID=XXXXXXXXXXXXXXXXXX /mnt/ordner/ ntfs-3g utf8,dmask=007,fmask=007,umask=007,noatime,gid=1001,uid=1001 0
|
getfacl /mnt/ordner | # file: mnt/ordner/
# owner: new_user
# group: new_user
user::rwx
group::rwx
other::---
|
Vorher war es bei owner und group "root".
Wenn ich nun wie oben beschrieben bei Windows das Netzlaufwerk hinzufügen möchte, werde jetzt nicht einmal mehr die Unterordner von \\server angezeigt. "Auf \\server\ordner konnte nicht zugegriffen werden.
Vergewissern Sie sich das der Name richtig geschrieben wurde. Möglicherweise besteht ein Netzwerkfehler."
|
|
zomgomg
(Themenstarter)
Anmeldungsdatum: 3. Januar 2021
Beiträge: 7
|
Oh Kommando zurück, keine Ahnung was passiert ist aber nach einer ganzen Weile (eigentlich hab ich nichts gemacht?) geht es auf einmal!
|
|
chr123
Anmeldungsdatum: 19. Juli 2018
Beiträge: 1632
|
Achte mal auf die Namen, mal new_user und mal neuer_user.
|
|
zomgomg
(Themenstarter)
Anmeldungsdatum: 3. Januar 2021
Beiträge: 7
|
chr123 schrieb: Achte mal auf die Namen, mal new_user und mal neuer_user.
Daran lag es nicht, war nur ein Tippfehler im Beispiel. Jedenfalls, wie gesagt, geht es auf einmal und ich schätze es lag u.a. tatsächlich an der uid/gid in der fstab und somit an den Berechtigungen.
|
|
zomgomg
(Themenstarter)
Anmeldungsdatum: 3. Januar 2021
Beiträge: 7
|
Ok, ich muss es doch als ungelöst markieren. Meine smb.config macht Probleme und ich finde den Fehler nicht. Folgende Einstellungen: #======================= Global Settings =====================================
[global]
admin users = root, smbadmin
security = user
...
[share]
comment = data share
path = /mnt/NC/test/files/
guest ok = no
writeable = yes
browseable = yes
valid users = test
create mask = 0770
directory mask = 0771
force create mode = 0660
force directory mode = 0770
[shore]
path = /mnt/NC
guest ok = no
browsable = yes
writeable = yes
create mask = 0666
directory mask = 0777
force user = test
force group = http
[filme]
path = /mnt/NC
guest ok = no
valid users = filme
browsable = yes
writeable = yes
create mask = 0770
directory mask = 0771
force create mode = 0660
force directory mode = 0770
force group = http In der /etc/fstab wird /mnt/NC wie folgt eingehangen: UUID=627AFD0B7AFCDCAB /mnt/NC/ ntfs-3g utf8,dmask=007,fmask=007,umask=007,noatime,gid=33,uid=33 0
gid=33 und uid=33 ist absolut notwendig an dieser Stelle. Das kuriose: Ich hänge alle drei Freigaben in Windows 10 als Netzwerklaufwerke separat ein.
"share" und "shore" werden ohne Abfrage von User und Passwort eingehangen. Ich kann darauf lesen und schreiben.
Bei "filme" wird nach einem Usernamen und Passwort gefragt. Wenn ich den korrekten Usernamen und Passwort eingebe kommt nur
"Auf \\server\filme kann nicht zugegriffen werden. Sie haben eventuell keine Berechtigungen, diese Netzwerkressource zu verwenden". Der Zugang für "share" und "shore" unterscheidet sich im übrigen zu meinem Login am Windows-Rechner, daran liegt es also nicht. Die smb.config der drei Freigaben sind soweit gleich. Samba-Passwörter wurden gesetzt, jeder relevante User ist darüber hinaus sicherheitshalber in der Gruppe "http". Was ich eigentlich möchte: Bei jeder Freigabe soll nach einem User und einem Passwort gefragt werden.
Und ich versteh an dieser Stelle nicht wieso "test" einfach so reinkommt und "filme" nach Credentials verlangt, diese aber ablehnt.
|
|
chr123
Anmeldungsdatum: 19. Juli 2018
Beiträge: 1632
|
Das was du hier probierst, ist zwar syntakisch ok, aber inhaltlich wenig sinnvoll. Pro Endpunkt sollte es nur eine Freigabe geben. Also: was genau willst du mit den drei Freigabe erreichen? Imho müsste man nur eine Freigabe definieren und dann den Rest über die lokalen Rechte von Ubuntu lösen, wenn du nur eine Freigabe haben möchtest.
|
|
zomgomg
(Themenstarter)
Anmeldungsdatum: 3. Januar 2021
Beiträge: 7
|
chr123 schrieb: Das was du hier probierst, ist zwar syntakisch ok, aber inhaltlich wenig sinnvoll. Pro Endpunkt sollte es nur eine Freigabe geben. Also: was genau willst du mit den drei Freigabe erreichen? Imho müsste man nur eine Freigabe definieren und dann den Rest über die lokalen Rechte von Ubuntu lösen, wenn du nur eine Freigabe haben möchtest.
Das es im praktischen Betrieb nicht sinnvoll ist, ist mir klar. Mir geht es hier darum den Fehler zu finden warum es nicht geht. Ich erstelle drei Freigaben und ändere die Einträge, beispielweise "valid users" durch "force user", etc. um zu schauen wo genau das Problem hier liegt.
Nehmen wir mal die Freigabe "share" und "filme". Diese unterscheiden sich lediglich durch die User und dem "force group = http" Eintrag. Letzteres kann ignoriert werden, ich hab die Feststellung gemacht das es die Fehlermeldungen identisch bleiben. Also unterscheiden die sich lediglich durch die User. Die User jedoch haben extra smb User/Passwort Einträge + einen Account der in der /etc/passwd steht und gehören über letzteren sogar der Gruppe (http) an um auch sicherzugehen, dass diese Zugriff auf /mnt/NC haben. Daher diese Freigaben. Warum geht der User "test" (dafür aber ohne Passworteingabe!) aber der User "filme" nicht, obwohl die Einträge in der smb.conf sowie die Nutzerberechtigungen gleich sind? Am Ende soll natürlich der 'path' anders lauten, zur Fehlerfindung scheinen mir Konstanten aber sinnvoller. Daher die Frage: /mnt/NC wird für user/group "http" (gid/uid 33) über fstab gemountet, jetzt soll /mnt/NC für den Nutzer "test" von einem Windows-Rechner als Netzwerklaufwerk (mit Passwort und Usereingabe!) mit Lese- udn Schreibrechten erreichbar sein. Und genau das will mit der smb.conf nicht funktionieren. Entweder es geht überhaupt nicht oder es geht aber es wird erst garnicht nach einem Passwort verlangt (siehe letzteren Post). smb.conf und fstab stehen oben, hier nochmal der VOllständigkeit halber die Gruppen der beiden relevanten User: [xyz@server~]$ grep "http" /etc/passwd
http:x:33:33::/srv/http:/usr/bin/nologin
[xyz@server~]$ grep "http" /etc/group
http:x:33:filme,test
filme:x:1001:http
[xyz@server~]$ groups test
wheel lp sys network power http www-data test
[xyz@server~]$ groups filme
http www-data filme Nachtrag: Ich hab mal konsequent das Beispiel aus der smb.conf übernommen und bearbeitet: # A private directory, usable only by fred. Note that fred requires write
# access to the directory.
;[fredsdir]
; comment = Fred's Service
; path = /usr/somewhere/private
; valid users = fred
; public = no
; writable = yes
; printable = no # A private directory, usable only by fred. Note that fred requires write
# access to the directory.
[testshare]
comment = Fred's Service
path = /mnt/NC
valid users = test
public = no
writable = yes
printable = no Ich komme wieder auf die Freigabe "testshare", aber es wird erneut nicht nach einem Passwort oder User gefragt.
|
|
chr123
Anmeldungsdatum: 19. Juli 2018
Beiträge: 1632
|
Das Verhalten von Samba verstehe ich nicht. Evtl. hast du "guest ok" als globale Variable bejaht. Zeige mal bitte: Dort sollte ja nur die Freigabe testshare auftauchen. Bei testshare bitte mal das Minimalbeispiel:
[testshare]
path = /mnt/NC
valid users = test
guest ok = no
writeable = yes
|
|
zomgomg
(Themenstarter)
Anmeldungsdatum: 3. Januar 2021
Beiträge: 7
|
chr123 schrieb: Dort sollte ja nur die Freigabe testshare auftauchen. Bei testshare bitte mal das Minimalbeispiel:
Nein, es tauchen mehrere Freigaben auf, weil ich die alten "Test"-Freigaben noch drin. [xyz@server ~]$ testparm -vs
Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Weak crypto is allowed
Server role: ROLE_STANDALONE
# Global parameters
[global]
abort shutdown script =
add group script =
additional dns hostnames =
add machine script =
addport command =
addprinter command =
add share command =
add user script =
add user to group script =
afs token lifetime = 604800
afs username map =
aio max threads = 100
algorithmic rid base = 1000
allow dcerpc auth level connect = No
allow dns updates = secure only
allow insecure wide links = No
allow nt4 crypto = No
allow trusted domains = Yes
allow unsafe cluster upgrade = No
apply group policies = No
async smb echo handler = No
auth event notification = No
auto services =
binddns dir = /var/lib/samba/bind-dns
bind interfaces only = No
browse list = Yes
cache directory = /var/cache/samba
change notify = Yes
change share command =
check password script =
cldap port = 389
client ipc max protocol = default
client ipc min protocol = default
client ipc signing = default
client lanman auth = No
client ldap sasl wrapping = sign
client max protocol = default
client min protocol = SMB2_02
client NTLMv2 auth = Yes
client plaintext auth = No
client schannel = Yes
client signing = default
client use spnego principal = No
client use spnego = Yes
cluster addresses =
clustering = No
config backend = file
config file =
create krb5 conf = Yes
ctdbd socket =
ctdb locktime warn threshold = 0
ctdb timeout = 0
cups connection timeout = 30
cups encrypt = No
cups server =
dcerpc endpoint servers = epmapper, wkssvc, rpcecho, samr, netlogon, lsarpc, drsuapi, dssetup, unixinfo, browser, eventlog6, backupkey, dnsserver
deadtime = 10080
debug class = No
debug encryption = No
debug hires timestamp = Yes
debug pid = No
debug prefix timestamp = No
debug uid = No
dedicated keytab file =
default service =
defer sharing violations = Yes
delete group script =
deleteprinter command =
delete share command =
delete user from group script =
delete user script =
dgram port = 138
disable netbios = No
disable spoolss = No
dns forwarder =
dns proxy = No
dns update command = /usr/bin/samba_dnsupdate
dns zone scavenging = No
domain logons = No
domain master = Auto
dos charset = CP850
dsdb event notification = No
dsdb group change notification = No
dsdb password event notification = No
enable asu support = No
enable core files = Yes
enable privileges = Yes
encrypt passwords = Yes
enhanced browsing = Yes
enumports command =
eventlog list =
get quota command =
getwd cache = Yes
gpo update command = /usr/bin/samba-gpupdate
guest account = nobody
homedir map = auto.home
host msdfs = Yes
hostname lookups = No
idmap backend = tdb
idmap cache time = 604800
idmap gid =
idmap negative cache time = 120
idmap uid =
include system krb5 conf = Yes
init logon delay = 100
init logon delayed hosts =
interfaces =
iprint server =
keepalive = 300
kerberos encryption types = all
kerberos method = default
kernel change notify = Yes
kpasswd port = 464
krb5 port = 88
lanman auth = No
large readwrite = Yes
ldap admin dn =
ldap connection timeout = 2
ldap debug level = 0
ldap debug threshold = 10
ldap delete dn = No
ldap deref = auto
ldap follow referral = Auto
ldap group suffix =
ldap idmap suffix =
ldap machine suffix =
ldap max anonymous request size = 256000
ldap max authenticated request size = 16777216
ldap max search request size = 256000
ldap page size = 1000
ldap passwd sync = no
ldap replication sleep = 1000
ldap server require strong auth = Yes
ldap ssl = start tls
ldap suffix =
ldap timeout = 15
ldap user suffix =
lm announce = Auto
lm interval = 60
load printers = Yes
local master = Yes
lock directory = /var/cache/samba
lock spin time = 200
log file = /var/log/samba/log.%m
logging =
log level = 1
log nt token command =
logon drive =
logon home = \\%N\%U
logon path = \\%N\%U\profile
logon script =
log writeable files on exit = No
lpq cache time = 30
lsa over netlogon = No
machine password timeout = 604800
mangle prefix = 1
mangling method = hash2
map to guest = Never
max disk size = 0
max log size = 50
max mux = 50
max open files = 16384
max smbd processes = 0
max stat cache size = 512
max ttl = 259200
max wins ttl = 518400
max xmit = 16644
mdns name = netbios
message command =
min receivefile size = 0
min wins ttl = 21600
mit kdc command =
multicast dns register = Yes
name cache timeout = 660
name resolve order = lmhosts wins host bcast
nbt client socket address = 0.0.0.0
nbt port = 137
ncalrpc dir = /run/samba/ncalrpc
netbios aliases =
netbios name = NUC
netbios scope =
neutralize nt4 emulation = No
NIS homedir = No
nmbd bind explicit broadcast = Yes
nsupdate command = /usr/bin/nsupdate -g
ntlm auth = ntlmv2-only
nt pipe support = Yes
ntp signd socket directory = /var/lib/samba/ntp_signd
nt status support = Yes
null passwords = No
obey pam restrictions = No
old password allowed period = 60
oplock break wait time = 0
os2 driver map =
os level = 20
pam password change = No
panic action =
passdb backend = tdbsam
passdb expand explicit = No
passwd chat = *new*password* %n\n *new*password* %n\n *changed*
passwd chat debug = No
passwd chat timeout = 2
passwd program =
password hash gpg key ids =
password hash userPassword schemes =
password server = *
perfcount module =
pid directory = /run
preferred master = Auto
prefork backoff increment = 10
prefork children = 4
prefork maximum backoff = 120
preload modules =
printcap cache time = 750
printcap name =
private dir = /var/lib/samba/private
raw NTLMv2 auth = No
read raw = Yes
realm =
registry shares = No
reject md5 clients = No
reject md5 servers = No
remote announce =
remote browse sync =
rename user script =
require strong key = Yes
reset on zero vc = No
restrict anonymous = 0
root directory =
rpc big endian = No
rpc server dynamic port range = 49152-65535
rpc server port = 0
samba kcc command = /usr/bin/samba_kcc
security = USER
server max protocol = SMB3
server min protocol = SMB2_02
server multi channel support = No
server role = standalone server
server schannel = Yes
server services = s3fs, rpc, nbt, wrepl, ldap, cldap, kdc, drepl, winbindd, ntp_signd, kcc, dnsupdate, dns
server signing = default
server string = Samba Server
set primary group script =
set quota command =
share backend = classic
show add printer wizard = Yes
shutdown script =
smb2 disable lock sequence checking = No
smb2 disable oplock break retry = No
smb2 leases = Yes
smb2 max credits = 8192
smb2 max read = 8388608
smb2 max trans = 8388608
smb2 max write = 8388608
smbd profiling level = off
smb passwd file = /var/lib/samba/private/smbpasswd
smb ports = 445 139
socket options = TCP_NODELAY
spn update command = /usr/bin/samba_spnupdate
stat cache = Yes
state directory = /var/lib/samba
svcctl list =
syslog = 1
syslog only = No
template homedir = /home/%D/%U
template shell = /bin/false
time server = No
timestamp logs = Yes
tls cafile = tls/ca.pem
tls certfile = tls/cert.pem
tls crlfile =
tls dh params file =
tls enabled = Yes
tls keyfile = tls/key.pem
tls priority = NORMAL:-VERS-SSL3.0
tls verify peer = as_strict_as_possible
unicode = Yes
unix charset = UTF-8
unix extensions = Yes
unix password sync = No
use mmap = Yes
username level = 0
username map =
username map cache time = 0
username map script =
usershare allow guests = No
usershare max shares = 0
usershare owner only = Yes
usershare path = /var/lib/samba/usershares
usershare prefix allow list =
usershare prefix deny list =
usershare template share =
utmp = No
utmp directory =
winbind cache time = 300
winbindd socket directory = /run/samba/winbindd
winbind enum groups = No
winbind enum users = No
winbind expand groups = 0
winbind max clients = 200
winbind max domain connections = 1
winbind nested groups = Yes
winbind normalize names = No
winbind nss info = template
winbind offline logon = No
winbind reconnect delay = 30
winbind refresh tickets = No
winbind request timeout = 60
winbind rpc only = No
winbind scan trusted domains = Yes
winbind sealed pipes = Yes
winbind separator = \
winbind use default domain = No
winbind use krb5 enterprise principals = No
wins hook =
wins proxy = No
wins server =
wins support = No
workgroup = MYGROUP
write raw = Yes
wtmp directory =
idmap config * : backend = tdb
access based share enum = No
acl allow execute always = No
acl check permissions = Yes
acl group control = No
acl map full control = Yes
administrative share = No
admin users = root smbadmin
afs share = No
aio read size = 1
aio write behind =
aio write size = 1
allocation roundup size = 0
available = Yes
blocking locks = Yes
block size = 1024
browseable = Yes
case sensitive = Auto
check parent directory delete on close = No
comment =
copy =
create mask = 0744
csc policy = manual
cups options =
default case = lower
default devmode = Yes
delete readonly = No
delete veto files = No
dfree cache time = 0
dfree command =
directory mask = 0755
directory name cache size = 100
dmapi support = No
dont descend =
dos filemode = No
dos filetime resolution = No
dos filetimes = Yes
durable handles = Yes
ea support = Yes
fake directory create times = No
fake oplocks = No
follow symlinks = Yes
force create mode = 0000
force directory mode = 0000
force group =
force printername = No
force unknown acl user = No
force user =
fstype = NTFS
guest ok = No
guest only = No
hide dot files = Yes
hide files =
hide new files timeout = 0
hide special files = No
hide unreadable = No
hide unwriteable files = No
hosts allow =
hosts deny =
include =
inherit acls = No
inherit owner = no
inherit permissions = No
invalid users =
kernel oplocks = No
kernel share modes = Yes
level2 oplocks = Yes
locking = Yes
lppause command =
lpq command = %p
lpresume command =
lprm command =
magic output =
magic script =
mangled names = illegal
mangling char = ~
map acl inherit = No
map archive = Yes
map hidden = No
map readonly = no
map system = No
max connections = 0
max print jobs = 1000
max reported print jobs = 0
min print space = 0
msdfs proxy =
msdfs root = No
msdfs shuffle referrals = No
nt acl support = Yes
ntvfs handler = unixuid, default
oplocks = Yes
path =
posix locking = Yes
postexec =
preexec =
preexec close = No
preserve case = Yes
printable = No
print command =
printer name =
printing = cups
printjob username = %U
print notify backchannel = No
queuepause command =
queueresume command =
read list =
read only = Yes
root postexec =
root preexec =
root preexec close = No
short preserve case = Yes
smbd async dosmode = No
smbd getinfo ask sharemode = Yes
smbd max async dosmode = 0
smbd search ask sharemode = Yes
smb encrypt = default
spotlight = No
spotlight backend = noindex
store dos attributes = Yes
strict allocate = No
strict locking = Auto
strict rename = No
strict sync = Yes
sync always = No
use client driver = No
use sendfile = No
valid users =
veto files =
veto oplock files =
vfs objects =
volume =
wide links = No
write list =
[homes]
browseable = No
comment = Home Directories
read only = No
[printers]
browseable = No
comment = All Printers
path = /usr/spool/samba
printable = Yes
[myshare]
comment = Mary's and Fred's stuff
create mask = 0765
force group = http
path = /mnt/NC
read only = No
valid users = filme
[share]
comment = data share
create mask = 0770
directory mask = 0771
force create mode = 0660
force directory mode = 0770
path = /mnt/NC/
read only = No
valid users = test
[shore]
create mask = 0666
directory mask = 0777
force group = http
force user = test
path = /mnt/NC
read only = No
[filme]
create mask = 0770
directory mask = 0771
force create mode = 0660
force directory mode = 0770
force group = http
path = /mnt/NC
read only = No
valid users = filme
[testshare]
comment = Fred's Service
path = /mnt/NC
read only = No
valid users = test
Da steht jedenfalls "guest ok = No" relativ weit oben. Die Freigabe "testshare" mit deinem Minimalbeispiel gibt wieder eine Freigabe welche zwar erreichbar ist, aber es wird kein Passwort verlangt. Es muss aber anscheinend mit den Usern zusammenhängen. Hab das "testshare" Minimalbeispiel zweimal getestet: valid users = test
Zugang geht, Passwort wird nicht verlangt valid users = filme
Zugang geht nicht, Zugangsdaten werden verlangt, korrekte Daten werden abgelehnt
|
|
chr123
Anmeldungsdatum: 19. Juli 2018
Beiträge: 1632
|
zomgomg schrieb: chr123 schrieb: Dort sollte ja nur die Freigabe testshare auftauchen. Bei testshare bitte mal das Minimalbeispiel:
Nein, es tauchen mehrere Freigaben auf, weil ich die alten "Test"-Freigaben noch drin.
So war das nicht gemeint: du solltest erstmal alle anderen Shares auskommentieren und nur noch den testshare drin lassen. Vergibt gleichzeitig mal ein neues Samba Passwort für den Benutzer test:
Wenn das Passwort von Ubuntu an Samba durchgereicht wird, kann das an pam, Kerberos oder den Gnome Schlüsselbund liegen. Durch die Passwortänderung sollte zumindest der Gnome Schlüsselbund nach einem neuen Passwort fragen.
|