Fórum Root.cz
Hlavní témata => Server => Téma založeno: Igor Křížka 08. 04. 2015, 14:50:43
-
Dobrý den. Pokouším se nakonfigurovat sambu na Sdílení společných souborů (ev. adresářů) s právem čtení a zápisu (vyžadována autentikace). Přístupem z WinXPPro SP3 vidím server i sdílené složky. Dokonce vyskočí i logovací okno s autentizačními požadavky. Uřivatele mám nadefinovaného, ale autentizaci mi Samba nevezme. Nepustí mně do adresáře. Přestože u starší distribuce OpenSuse a samby jsem s tím neměl problémy, nyní ne a ne prorazit. Přikládám sekci [global] a konfiguraci sdílení [public].
Samba verze 4.1.12-2.1-3307-SUSE-oS13.2-i386.
[global]
workgroup = UIS
passdb backend = smbpasswd
printing = cups
printcap name = cups
printcap cache time = 750
cups options = raw
map to guest = Bad User
logon path = \\%L\profiles\.msprofile
logon home = \\%L\%U\.9xprofile
logon drive = P:
usershare allow guests = No
netbios name = SERVERX
security = user
username map = /etc/samba/smbusers
wins support = No
dns proxy = No
encrypt passwords = Yes
null passwords = Yes
smb passwd file = /etc/samba/smbpasswd
unix password sync = Yes
[public]
path = /home/public #(root, users)
public = yes
writeable = yes
create mask = 0777
directory mask = 0777
force user = nobody
force group = nogroup
-
První věc co ti poradím je, nepoužívat smbpasswd backend. Dnes se používá tdbsam. I když to by nemělo mít vliv na samotnou věc.
Problém by mohl být, že v zadání píšeš že vyžaduješ autentifikaci a sdílení public je nastaveno na public = yes, což je myslim pravý opak . Co bych řekl že se děje je, že máš nastaveno sdílení bez oprávnění které používá účet guest který ovšem neni definovaný v sekci global. A rozhodně neni moc vhodné vynucovat uživatele nobody a skupinu nogroup ... nogroup? :o
-
1. Používám tdbsam a s smbpasswd nemám problém.
2. Máš správně nastavená práva adresáře /home/public?
Zakomentuj řádek s: usershare allow guests = No
V mé sekci [global] je mimo jiné:
map to guest = bad user
passdb backend = tdbsam
Pro "public" sdílení mám:
[SDILENA]
path = /mnt/sdilena
guest ok = yes
read only = no
writable = yes
invalid users = root,admin,@wheel
follow symlinks = no
wide links = no
create mask = 0660
directory mask = 0770
force user = smbpublic
force group = smbpublic
3. Toho uživatele "nobody" ve "force user" a "force group" bych nahradil něčím jiným.
-
read only = no
writable = yes
Tyhle dva řádky říkají totéž. Viz https://www.samba.org/samba/docs/man/manpages-3/smb.conf.5.html
writeable (S)
Inverted synonym for read only.
-
nogroup? :o
jestli se ti neco nezda, tak zkoukni moji wiki (http://en.wikipedia.org/wiki/Nobody_(username)) ;)
-
nogroup? :o
jestli se ti neco nezda, tak zkoukni moji wiki (http://en.wikipedia.org/wiki/Nobody_(username)) ;)
Nelíbí se mi to. Podle mě je lepší přemýšlet a udělat nějakou konkrétní skupinu.
-
read only = no
writable = yes
Tyhle dva řádky říkají totéž. Viz https://www.samba.org/samba/docs/man/manpages-3/smb.conf.5.html
writeable (S)
Inverted synonym for read only.
Ne že bych to nevěděl, ale znáš to, do leta funkční konfigurace se nešahá:
1. "Pokud to funguje, nešahej na to!"
2. "Já ti to říkal." ;D
-
není náhodou potřeba specifikovat v GLOBAL server role?
http://edoceo.com/howto/samba4-server-role
-
Ne že bych to nevěděl, ale znáš to, do leta funkční konfigurace se nešahá:
1. "Pokud to funguje, nešahej na to!"
2. "Já ti to říkal." ;D
Kód by měl být čistý a nechávat duplicitní direktivy jen proto že se na to bojim šáhnout ... .
-
A kdybych nastavoval Sambu s ověřením uživatelů tak bych udělal skupinu sdíleni kam bych přiřadil všechny uživatele co tam maji mít přístup a pak to konfiguroval takhle (funkční z mých poznámek a výzkumů):
# ----------------------- Standalone Server Options ------------------------
<------>security = user
<------>passdb backend = tdbsam
#============================ Share Definitions ==============================
[backup]
<------>path = mnt/disk/sdileni/backup
<------>browseable = no
<------>guest ok = no
<------>writable = yes
<------>valid users = @sdileni
<------>create mask = 0770 (možná 0660?)
<------>directory mask = 0770
<------>force create mode = 0770 (možná 0660?)
<------>force directory mode = 0770
[root@spserver backup]# id administrator
uid=500(administrator) gid=500(sdileni) groups=500(sdileni)
sdileni 711 root:root
->backup 770 root:sdileni
-
Kdyz nevim kudy kam, zkopiruji defaultni conf z debianu. A pak u konkretniho adresare nastavim jenom path, browsable, writeable, valid users, create mask a directory mask. Anebo nastav v systemu na konkretnim adresari prava 777 a v confu nastav path, browsable, writeable a guest ok. Dalsi direktivy jsem nikdy nepotreboval, v debianskem confu je vse pekne uz prednastavene.
-
Ne že bych to nevěděl, ale znáš to, do leta funkční konfigurace se nešahá:
1. "Pokud to funguje, nešahej na to!"
2. "Já ti to říkal." ;D
Znám - a tipnul bych si, ze nekde na nejakem serveru to mam taky ;) Ta poznamka byla spis pro ostatni, aby se to zbytecne nesirilo...
-
selinux? Mnozi to zapominaji pri instalaci vypnout.
-
selinux? Mnozi to zapominaji pri instalaci vypnout.
Já ho nechávám zapnutý a přepnu ho do permissive modu. Ale asi to neni velký rozdíl.
-
Pokud už nemám chuť a sil zasahovat do nastavení SElinuxu v kombinaci se Sambou, tak je možná vhodnější ten permissive mód, než SElinux úplně vypnout. Ono totiž už pobíhá někalik dalších věcí, co jsou udělány tak, že korektně bez SELinuxu nefungují. Pokud ho vypnu natvrdo, smůla, pokud je permisivní mód, tak to jede. Navíc v tomto případě si pak dle audit logu můžu doupravit nastavení tak, aby to jelo i s plnotučně zapnutým SElinux.
-
A toho uživatele máš nadefinovaného v Sambě nebo jen jako unix usera?