1.samba常用配置
(1)rpm -ivh perl-Convet-ASN1-----
rpm -ivh samba----
rpm -ivh system-config-samba------
(2)useradd test
smbpasswd -a test
useradd abc
msbpasswd -a abc
(3)cd /etc/samba/
vim smb.conf
在末尾添加:
[public]
comment = pulic stuff
path = /pub
writable = no
write list = @test
printale = no
testparm
/etc/init.d/smb restart
這個時候,在public目錄中都不能創建文件!
(4)mkdir /pub
chmod 777 /pub
這個時候,只用test可以在public目錄中創建文件夾!
因爲write list = @test
----
(1).修改主配置文件
[public]
comment = pulic stuff
path = /pub
writeble = no
write list = @test
printale = no
only guest = yes
(2).發現當在public中創建文件的時候,ll出來的都是nobody用戶!
------------------------------------------
2.用戶目錄
2-1:
(1)rpm -ivh perl-Convet-ASN1-----
rpm -ivh samba----
rpm -ivh system-config-samba------
(2)useradd test
smbpasswd -a test
useradd abc
msbpasswd -a abc
(3).cp /etc/smaba/smb.conf /etc/samba/smb.conf.test
(4).vim /etc/samba/smb.conf
添加一行:
config file = /etc/samba/smb.conf.%U
在去掉文件中起任意個[]
(5).vim /etc/samba/smb.conf.test
[test]
path = /test
writable = yes
(6). chown test.test /test/
當test用戶登入時,只能看見自己的test目錄!
當其他用戶登入時,看不見test目錄!
-----------
2-2
(1).useradd jingli
smbpasswd -a jingli
cp -a smb.conf jingli.smb.conf
(2).vim smb.conf
include = /etc/samba/%U.smb.conf
(3).vim jingli.smb.conf
[jingli]
comment = jingli
path = /jingli
public = yes
writable = yes
vali users = jingli
(4).chown jingli:jingli /jingli
/etc/init.d/smb restart
當jingli用戶登入的時候,有jingli文件
其他用戶登入的時候,沒有!
-----------
2-3
分別創建tech組和sales組,s1-3爲sales組,t1-3爲tech組!
s1-3登入後只有自己和組的目錄!
t1-3登入後只有自己和組的目錄!
master登入和可以見sales組和tech組和自己的目錄!
(1).groupadd tech
groupadd sales
useradd master
useradd -g sales s1
useradd -g tech t1
smbpass -a master---t1
(2).cp /etc/samba/smb.conf /etc/samba/master.smb.conf
cp /etc/samba/smb.conf /etc/samba/sales.smb.conf
cp /etc/samba/smb.conf /etc/samba/tech.smb.conf
(3).vim /etc/samba/smb.conf
include = /etc/smaba/%U.smb.conf
include = /etc/smaba/%G.smb.conf
(4).cd /etc/samba
vim master.smb.conf
[sales]
comment = sales
path = /sales
valid users = master
[tech]
comment = tech
path = /tech
valid users = master
(5).vim sales.smb.conf
[sales]
comment = sales
path = /sales
valid users = @sales,master
(6).vim tech.smb.conf
[tech]
comment = tech
path = /tech
valid users = @tech,master
(7).cd /
mkdir tech sales
此時以master身份登入時:有master sales tech文件!
如果想讓master有對sales和tech文件控制的權限
就要加上:writable = yes
以t1和s1登入的時候,只能看見自己的目錄和所有組的文件夾!
---
2-4
某企業,有財務部、銷售部、還有公共共享文件目錄
實現:只有公司經理能讀取和寫入財務部、銷售部的共享目錄
各個部門的員工只能訪問和寫入本部門的共享目錄,但不能刪除其他用戶的文件
公共目錄只能讀取和寫入。
(1)cp smb.conf jingli.smb.conf -p
cp smb.conf sales.smb.conf -p
cp smb.conf tech.smb.conf -p
(2)vim smb.conf
include = /etc/samba/%U.smb.conf
include = /etc/samba/%G.smb.conf
[public]
comment = public
path = /wqmsl/public
writable = no
printalbe = no
(3)groupadd caiwu
gourpadd xiaoshou
useradd -g caiwu -s /sbin/nologin s1
useradd -g caiwu -s /sbin/nologin s2
useradd -g xiaoshou -s /sbin/nologin t1
useradd -g xiaoshou -s /sbin/nologin t2
useradd jingli
smbpass -a ---------
(4)vim xiaoshou.smb.conf
[xiaoshou]
comment = xiaoshou
path = /wqmsl/xiaoshou
writable = yes
valid users = @xiaoshou,jingli
public = no
vim caiwu.smb.conf
[caiwu]
comment = caiwu
path = /wqmsl/caiwu
writable = yes
valid users = @caiwu,jingli
public = no
vim jignli.smb.conf
[xiaoshou]
comment = xiaoshou
path = /wqmsl/xiaoshou
writable = yes
valid users = jingli,@xiaoshou
[caiwu]
comment = caiwu
path = /wqmsl/caiwu
writable = yes
valid users = jingli,@caiwu
(5)cd /
mkdir wqmsl
cd wqmsl
mkdir caiwu xiaoshou
chmod 777 .
案例:
公司有財務,技術,領導3個部門,
我們分別爲3個部門建立3個用戶組爲caiwu,network,lingdao;
三個部門裏各有2個用戶,我們建用戶分別爲caiwu01,caiwu02,network01,network02,lingdao01,lingdao02
1首先服務器採用用戶驗證的方式,每個用戶可以訪問自己的宿主目錄,
並且只有該用戶能訪問宿主目錄,並具有完全的權限,而其他人不能看到你的宿主目錄。
1-1.make /home/samba/network
make /home/samba/jingdao
make /home/samba/caiwu
我們爲了避免麻煩可以在這裏把上面所有的文件夾的權限都設置成777,
我們通過samba靈活的權限管理來設置上面的4點要求
1-2.設置主配置文件:
以下是我的smb.conf的配置文件
[global]
workgroup = DONGFANG #我的網絡工作組
server string =DONGFANG’S SAMBA SERVER #我的服務器名描述
security = user #使用用戶驗證機制
encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd
#使用加密密碼機制,在win95和winnt使用的是明文
其他的基本上可以按照默認的來。
1-3.設置用戶的宿主目錄,滿足第一個條件:
[homes]
comment = Home Directories
browseable = no
writable = yes
valid users = %S
create mode = 0664
directory mode = 0775
2.建立一個caiwu的文件夾,希望caiwu組和lingdao組的人能看到,network02也可以訪問,但只有caiwu01有寫的權限。
[caiwu]
comment = caiwu
path = /home/samba/caiwu
public = no
valid users = @caiwu,@lingdao,network02
write list = caiwu01
printable = no
3.建立一個lindao的目錄,只有領導組的人可以訪問並讀寫,還有network02也可以訪問,但外人看不到那個目錄
[lingdao]
comment = lingdao
path = /home/samba/lingdao
public = no
valid users = @lingdao,network02
write list = @lingdao
printable = no
4.建立一個文件交換目錄exchange,所有人都能讀寫,包括guest用戶,但每個人不能刪除別人的文件。
[network]
comment = Network File Directory
path = /home/samba/network
public = yes
writable = yes
#network段基本能滿足我們的第4要求,但不能滿足每個人不能刪除別人的文件這個條件,即使裏設置了mask也是沒用,其實這個條件只要unix設置一個粘着位就行
chmod -R 1777 /home/samba/network
注意這裏權限是1777,類似的系統目錄/tmp也具有相同的權限,這個權限能實現每個人能自由寫文件,但不能刪除別人的文件這個要求
到此爲止我們的設置已經能實現我們的共享文件要求,重啓服務