Debian Samba Freigabe - habe nur Zugriff auf Homeverzeichnis

schoolisoutfan

Lt. Commander
Registriert
Nov. 2004
Beiträge
1.099
Hi,

ich bastel aktuell an einem Debianserver mit Dateifreigabe für Kodi. Allerdings habe ich noch einen Fehler in der Freigabe, so das ich von Windows aus mit dem User "dateiaustausch" nur auf Server/dateiaustausch komme. Ich wollte außerdem noch den Ordner kodi mit folgendem Pfad freigeben: /media/martin/Lager/kodi
Ziel war eine Ordner Freigabe welche nur für den Benutzer dateiaustausch ist

- Ich habe den Benutzer "dateiaustausch" angelegt und ein Passwort vergeben.
- Auf der Festplatte namens Lager habe ich den Ordner "kodi" angelegt, zum testen stehen die Rechte aktuell auf 777 werden aber natürlich wieder geändert.
- chown dateiaustausch:dateiaustausch /media/martin/Lager/kodi/

Weis jemand was ich vergessen/falsch gemacht habe?

Ausgabe von testparm -v
Code:
Load smb config files from /etc/samba/smb.conf
Processing section "[homes]"
Processing section "[printers]"
Processing section "[kodi]"
Loaded services file OK.
Server role: ROLE_STANDALONE

net usershare info
Code:
[Kodi]
path=/media/martin/Lager/kodi
comment=kodi
usershare_acl=Everyone:R,

Komplette smb.config

Code:
# Global parameters
[global]
	dos charset = CP850
	unix charset = UTF-8
	workgroup = WORKGROUP
	realm = 
	netbios name = SERVER
	netbios aliases = 
	netbios scope = 
	server string = Server
	interfaces = 
	bind interfaces only = No
	config backend = file
	server role = auto
	security = USER
	auth methods = 
	encrypt passwords = Yes
	client schannel = Auto
	server schannel = Auto
	allow trusted domains = Yes
	map to guest = Never
	null passwords = No
	old password allowed period = 60
	obey pam restrictions = No
	password server = *
	smb passwd file = /etc/samba/smbpasswd
	private dir = /var/lib/samba/private
	passdb backend = tdbsam
	algorithmic rid base = 1000
	root directory = 
	guest account = nobody
	enable privileges = Yes
	pam password change = No
	passwd program = 
	passwd chat = *new*password* %n\n *new*password* %n\n *changed*
	passwd chat debug = No
	passwd chat timeout = 2
	check password script = 
	username map = 
	username level = 0
	unix password sync = No
	restrict anonymous = 0
	lanman auth = No
	ntlm auth = Yes
	raw NTLMv2 auth = No
	client NTLMv2 auth = Yes
	client lanman auth = No
	client plaintext auth = No
	client use spnego principal = No
	preload modules = 
	dedicated keytab file = 
	kerberos method = default
	map untrusted to domain = No
	log level = 2
	syslog = 1
	syslog only = No
	log file = /usr/local/samba/var/log.%m
	max log size = 50
	debug timestamp = Yes
	debug prefix timestamp = No
	debug hires timestamp = Yes
	debug pid = No
	debug uid = No
	debug class = No
	enable core files = Yes
	smb ports = 445 139
	large readwrite = Yes
	server max protocol = SMB3
	server min protocol = LANMAN1
	client max protocol = default
	client min protocol = CORE
	unicode = Yes
	min receivefile size = 0
	read raw = Yes
	write raw = Yes
	disable netbios = No
	reset on zero vc = No
	log writeable files on exit = No
	defer sharing violations = Yes
	nt pipe support = Yes
	nt status support = Yes
	max mux = 50
	max xmit = 16644
	name resolve order = lmhosts wins host bcast
	max ttl = 259200
	max wins ttl = 518400
	min wins ttl = 21600
	time server = No
	unix extensions = Yes
	use spnego = Yes
	client signing = default
	server signing = default
	client use spnego = Yes
	client ldap sasl wrapping = sign
	ldap server require strong auth = Yes
	enable asu support = No
	svcctl list = 
	cldap port = 389
	dgram port = 138
	nbt port = 137
	krb5 port = 88
	kpasswd port = 464
	web port = 901
	rpc big endian = No
	deadtime = 0
	getwd cache = Yes
	keepalive = 300
	lpq cache time = 30
	max smbd processes = 0
	max disk size = 0
	max open files = 16424
	socket options = TCP_NODELAY
	use mmap = Yes
	use ntdb = No
	hostname lookups = No
	name cache timeout = 660
	ctdbd socket = 
	cluster addresses = 
	clustering = No
	ctdb timeout = 0
	ctdb locktime warn threshold = 0
	smb2 max read = 8388608
	smb2 max write = 8388608
	smb2 max trans = 8388608
	smb2 max credits = 8192
	load printers = Yes
	printcap cache time = 750
	printcap name = 
	cups server = 
	cups encrypt = No
	cups connection timeout = 30
	iprint server = 
	disable spoolss = No
	addport command = 
	enumports command = 
	addprinter command = 
	deleteprinter command = 
	show add printer wizard = Yes
	os2 driver map = 
	mangling method = hash2
	mangle prefix = 1
	max stat cache size = 256
	stat cache = Yes
	machine password timeout = 604800
	add user script = 
	rename user script = 
	delete user script = 
	add group script = 
	delete group script = 
	add user to group script = 
	delete user from group script = 
	set primary group script = 
	add machine script = 
	shutdown script = 
	abort shutdown script = 
	username map script = 
	username map cache time = 0
	logon script = 
	logon path = \\%N\%U\profile
	logon drive = 
	logon home = \\%N\%U
	domain logons = No
	init logon delayed hosts = 
	init logon delay = 100
	os level = 20
	lm announce = Auto
	lm interval = 60
	preferred master = Auto
	local master = Yes
	domain master = Auto
	browse list = Yes
	enhanced browsing = Yes
	dns proxy = No
	wins proxy = No
	wins server = 
	wins support = No
	wins hook = 
	smb2 leases = No
	lock spin time = 200
	oplock break wait time = 0
	ldap admin dn = 
	ldap delete dn = No
	ldap group suffix = 
	ldap idmap suffix = 
	ldap machine suffix = 
	ldap passwd sync = no
	ldap replication sleep = 1000
	ldap suffix = 
	ldap ssl = start tls
	ldap ssl ads = No
	ldap deref = auto
	ldap follow referral = Auto
	ldap timeout = 15
	ldap connection timeout = 2
	ldap page size = 1024
	ldap user suffix = 
	ldap debug level = 0
	ldap debug threshold = 10
	eventlog list = 
	add share command = 
	change share command = 
	delete share command = 
	config file = 
	preload = 
	lock directory = /var/run/samba
	state directory = /var/lib/samba
	cache directory = /var/cache/samba
	pid directory = /var/run/samba
	ntp signd socket directory = /var/lib/samba/ntp_signd
	utmp directory = 
	wtmp directory = 
	utmp = No
	default service = 
	message command = 
	get quota command = 
	set quota command = 
	remote announce = 
	remote browse sync = 
	nbt client socket address = 0.0.0.0
	nmbd bind explicit broadcast = Yes
	homedir map = auto.home
	afs username map = 
	afs token lifetime = 604800
	log nt token command = 
	NIS homedir = No
	registry shares = No
	usershare allow guests = No
	usershare max shares = 100
	usershare owner only = Yes
	usershare path = /var/lib/samba/usershares
	usershare prefix allow list = 
	usershare prefix deny list = 
	usershare template share = 
	allow insecure wide links = No
	async smb echo handler = No
	panic action = 
	perfcount module = 
	host msdfs = Yes
	passdb expand explicit = No
	idmap backend = tdb
	idmap cache time = 604800
	idmap negative cache time = 120
	idmap uid = 
	idmap gid = 
	template homedir = /home/%D/%U
	template shell = /bin/false
	winbind separator = \
	winbind cache time = 300
	winbind reconnect delay = 30
	winbind request timeout = 60
	winbind max clients = 200
	winbind enum users = No
	winbind enum groups = No
	winbind use default domain = No
	winbind trusted domains only = No
	winbind nested groups = Yes
	winbind expand groups = 0
	winbind nss info = template
	winbind refresh tickets = No
	winbind offline logon = No
	winbind normalize names = No
	winbind rpc only = No
	create krb5 conf = Yes
	ncalrpc dir = /var/run/samba/ncalrpc
	winbind max domain connections = 1
	winbindd socket directory = /var/run/samba/winbindd
	winbindd privileged socket directory = /var/lib/samba/winbindd_privileged
	winbind sealed pipes = Yes
	neutralize nt4 emulation = No
	reject md5 servers = No
	require strong key = Yes
	allow dns updates = secure only
	dns forwarder = 
	dns update command = /usr/sbin/samba_dnsupdate
	nsupdate command = /usr/bin/nsupdate -g
	rndc command = /usr/sbin/rndc
	multicast dns register = Yes
	samba kcc command = /usr/sbin/samba_kcc
	server services = s3fs, rpc, nbt, wrepl, ldap, cldap, kdc, drepl, winbindd, ntp_signd, kcc, dnsupdate, dns
	dcerpc endpoint servers = epmapper, wkssvc, rpcecho, samr, netlogon, lsarpc, spoolss, drsuapi, dssetup, unixinfo, browser, eventlog6, backupkey, dnsserver
	spn update command = /usr/sbin/samba_spnupdate
	share backend = classic
	allow nt4 crypto = No
	reject md5 clients = No
	tls enabled = Yes
	tls keyfile = tls/key.pem
	tls certfile = tls/cert.pem
	tls cafile = tls/ca.pem
	tls crlfile = 
	tls dh params file = 
	tls priority = NORMAL:-VERS-SSL3.0
	tls verify peer = as_strict_as_possible
	client ipc max protocol = default
	client ipc min protocol = default
	client ipc signing = default
	allow dcerpc auth level connect = No
	idmap config * : backend = tdb
	comment = 
	path = 
	username = 
	invalid users = 
	valid users = 
	admin users = 
	read list = 
	write list = 
	force user = 
	force group = 
	read only = Yes
	acl check permissions = Yes
	acl group control = No
	acl map full control = Yes
	acl allow execute always = No
	create mask = 0744
	force create mode = 0000
	directory mask = 0755
	force directory mode = 0000
	force unknown acl user = No
	inherit permissions = No
	inherit acls = No
	inherit owner = No
	guest only = No
	administrative share = No
	guest ok = No
	only user = No
	hosts allow = 
	hosts deny = 
	allocation roundup size = 1048576
	aio read size = 0
	aio write size = 0
	aio write behind = 
	ea support = No
	nt acl support = Yes
	profile acls = No
	map acl inherit = No
	afs share = No
	smb encrypt = default
	durable handles = Yes
	block size = 1024
	change notify = Yes
	directory name cache size = 100
	kernel change notify = Yes
	max connections = 0
	min print space = 0
	strict allocate = No
	strict rename = No
	strict sync = No
	sync always = No
	use sendfile = No
	write cache size = 0
	max reported print jobs = 0
	max print jobs = 1000
	printable = No
	print notify backchannel = No
	print ok = No
	printing = cups
	cups options = 
	print command = 
	lpq command = %p
	lprm command = 
	lppause command = 
	lpresume command = 
	queuepause command = 
	queueresume command = 
	printer name = 
	use client driver = No
	default devmode = Yes
	force printername = No
	printjob username = %U
	default case = lower
	case sensitive = Auto
	preserve case = Yes
	short preserve case = Yes
	mangling char = ~
	hide dot files = Yes
	hide special files = No
	hide unreadable = No
	hide unwriteable files = No
	delete veto files = No
	veto files = 
	hide files = 
	veto oplock files = 
	map archive = Yes
	map hidden = No
	map system = No
	map readonly = yes
	mangled names = Yes
	store dos attributes = No
	dmapi support = No
	browseable = Yes
	access based share enum = No
	blocking locks = Yes
	csc policy = manual
	fake oplocks = No
	kernel oplocks = No
	kernel share modes = Yes
	locking = Yes
	oplocks = Yes
	level2 oplocks = Yes
	oplock contention limit = 2
	posix locking = Yes
	strict locking = Auto
	dfree cache time = 0
	dfree command = 
	copy = 
	include = 
	preexec = 
	preexec close = No
	postexec = 
	root preexec = 
	root preexec close = No
	root postexec = 
	available = Yes
	volume = 
	fstype = NTFS
	wide links = No
	follow symlinks = Yes
	dont descend = 
	magic script = 
	magic output = 
	delete readonly = No
	dos filemode = No
	dos filetimes = Yes
	dos filetime resolution = No
	fake directory create times = No
	vfs objects = 
	msdfs root = No
	msdfs proxy = 
	ntvfs handler = unixuid, default


[homes]
	comment = Home Directoreries
	read only = No
	browseable = No


[printers]
	comment = All Printers
	path = /usr/spool/samba
	printable = Yes
	print ok = Yes
	browseable = No


[kodi]
	comment = kodi
	path = /media/martin/Lager/kodi
	read only = No
 
Zuletzt bearbeitet:
​Verstehe ich das richtig, du kannst die Freigabe "kodi" nicht über das Netzwerk ansprechen? Auch nicht wenn du die Adresse direkt einträgst (server.ip.adresse.xx/kodi)? Und die Freigabe für das Home-Verzeichnis funktioniert aber?

Erstmal der klassische Hinweis: "Have you tried turning it off and on again?" Starte mal beide Maschinen neu, gerade Windows zickt gerne bei Samba rum.

Sofern die home-Freigabe funktioniert sollte zumindest der Nutzer richtig konfiguriert sein, es dürfte also an der kodi-Freigabe liegen. Einen Fehler sehe ich in deiner Config nicht, aber die kodi-freigabe ist eher spärlich mit Optionen versehen. Ich persönlich habe bei Samba die Erfahrung gemacht dass die Shares oft etwas zickig sind, gerade wenn man alle Optionen nicht explizit einträgt. Im Zweifelsfall also lieber ein paar Parameter mehr angeben. Siehe Samba-Dokumentation. Bei mir sieht das dann z.B. so aus (nutze allerdings Ubuntu Server 16.04 und nicht Debian):

Code:
[Nas_Files]
path = /media/NAS/Nas_Files 
guest ok = no 
browseable = yes 
writeable = yes 
valid users = thane

Tipp: Wenn du willst das nur ein spezieller Nutzer Zugriff auf die Freigabe hat kannst du das mit "valid users" einfach angeben. So können andere Nutzer die Freigabe auch nicht lesen, falls das in deinem Fall wünschenswert ist.

Ansonsten würde ich noch versuchen auf die Freigabe von einem anderen Gerät zuzugreifen. Windows hat bei mit schon manchmal Probleme mit Freigaben gehabt, obwohl auf meinem Linux-PC alles ok war. Wenn du keinen 2. PC hast kannst du auch einfach ein Android-Handy nehmen und versuchen von dort auf die Freigabe zuzugreifen, z.B. mit Solid Explorer. Wenn es da geht, dann ist Windows schuld, wenn nicht dann stimmt etwas an der config nicht. Im letzeren Fall würde ich dann einfach mal ausprobieren welche Optionen Besserung bringen :)

Ach ja, noch was: Hast du den Benutzer sowohl in Debian ("useradd") als auch in Samba ("sudo smbpasswd -a <username>") angelegt? Den Debian-Nutzer brauchst du für den Zugriff auf das Dateisystem, während der Samba-Nutzer für den Zugriff von außen benutzt wird. Beide müssen meines Wissens nach den selben Namen haben. Siehe auch hier: https://wiki.ubuntuusers.de/Samba_Server/
 
Zuletzt bearbeitet: (Samba Nutzer hinzugefügt)
Danke für die Rückmeldung.

Dann mal von oben nach unten :)

Genau der Nutzer dateiaustausch kommt auf sein home Verzeichnis aber nicht auf Kodi.
writeable hatte ich bereits probiert, ging leider auch nicht.
Bliebe nur noch neustarten, das werde ich erst morgen machen können da ich aktuell noch Dateien wiederherstellen lasse.

dateiaustausch ist sowohl Samba als auch Debian Nutzer.

Meine config ist noch die Originale da ich bei meinen gekürzten immer das Problem hatte das der
Server nicht richtig neustarten wollte. Ich habe zwar schon öfters gelesen das die Grundlegenden Global Variablen und die Freigabe an sich reichen. Aber bisher ist es mir nicht geglückt.
 
Zuletzt bearbeitet:
Thema Neustart: Eventuell reicht es auch den Samba-Dienst auf dem Server neuzustarten. Dass müsste unter Debian 8 mit "systemctl restart smbd.service" gehen, bei den älteren Varianten kenne ich mich nicht aus. Eine Google-Suche sollte hier weiterhelfen ;)

Was die config angeht, an sich stimmt es dass die globalen Variablen + deine Freigabe reichen sollten. Die Betonung liegt hier auf "sollten" - leider klappt das in der Praxis meiner Erfahrung nach nicht so gut wie erhofft. Daher gebe ich bei Samba die Parameter lieber einmal zu viel als einmal zu wenig an. Ich würde aber beide Systeme erst mal neustarten bevor du dich an die config machst, einfach um eine weitere Fehlerquelle auszuschließen.
 
Samba selber habe ich definitv mehrfach bereits neugestartet. Wenn ich die Ip direkt nehme habe ich die selbe Fehlermeldung.
 
Entschuldigt, habe mich unklar ausgedrückt. Fehlermeldung ist die Standard Windowsmeldung das auf den Ordner nicht zugegriffen werden kann. Ich habe mich eben nochmals per SSH durch gehangelt und diverse Fehler meiner Seits festgestellt.
1. Das entsprechende Laufwerk wurde nicht automatisch eingehangen - ist mir jedoch nicht aufgefallen da ich die HDD erst neu eingesetzt/partitioniert habe
2. konnte ich per SSH nicht auf den Ordner zugreifen da der Ordner nicht gefunden wurde :rolleyes:

Ich habes nun hinbekommen in dem ich den direkten Mountpfad in die Freigabe eingefügt habe: /mnt/d1a7be27-f78d-4d53-a175-14c24f4d7236/kodi

Nun funktioniert es, ich würde der Vollständigkeit halber aber gerne wissen wo der Fehler liegt.

- Was muss ich ändern damit das home Verzeichniss von "dateifreigabe" nicht per samba zu erreichen ist?
 
schoolisoutfan schrieb:
Nun funktioniert es, ich würde der Vollständigkeit halber aber gerne wissen wo der Fehler liegt.
Ohne Logs schwer zu sagen. Und ich hab ehrlich gesagt keine Lust Deine endlos lange Konfiguration durchzusehen.

Möglicherweise war ursprünglich im Pfad ein Sym-Link dazwischen. Standardmäßig folgen denen aus Sicherheitsgründen viele Serviceses nicht.


schoolisoutfan schrieb:
- Was muss ich ändern damit das home Verzeichniss von "dateifreigabe" nicht per samba zu erreichen ist?
Ähm. Wenn das Home-Verzeichnis nicht freigegeben werden soll, dann gib es nicht frei?!
 
Thema Home-verzeichnis: nimm die [home]-Freigabe aus der config raus und starte dann neu.

Was das Thema Ordner angeht - schwer zu sagen, evtl hat sich der Mountpoint geändert. Ich weiss leiser nicht wie Debian mit so etwas umgeht - bei vielen Distros kommen bei automounts aber komische Ergebnisse raus. Wenn es da in der Zukunft Probleme gibt kannst du die Platte auch mithilfe der fstab einhängen. Dann hat die immer einen festen Mountpoint, der da bleibt wo du ihn haben willst :)
 
Zurück
Oben