Linux12samba軟件包
samba軟件包主要用於共享文件的管理
總共分為三種:1服務器 保存主機列表,文件,目錄對客戶端進行授權
2客戶端 請求驗證,訪問文件,目錄
3浏覽服務器 緩存主機列表
首先了解windiws網上鄰居,對於一台客戶端需要設置自己的主機名,工作組(或者域)。工作組和域的區別:工作組裡的計算機平等,只需要修改客戶端的工作組後就可以進入某個工作組;域裡的計算機相互不平等,需要域服務器,必須通過認證才能加入,包括主域控制器和輔域控制器。
windows客戶端訪問共享文件夾方式:1 在網上鄰居---整個網絡---microsoft---workgroup從這裡可以看到在workgroup組裡的計算機
2 根據主機名或者主機ip地址直接訪問,要求主機名(Ip地址)唯一,在地址欄中直接輸入\\myhostname或者\\192.168.1.150
下面使用samba創建文件共享
修改/etc/samba/smb.conf文件,該文件包含三種字段:[global] [homes]以及自定義字段 #表示注視 ;表示不生效 可以使用man smb.conf查看幫助
[global]
workgroup = WORKGROUP //設置其工作組的名稱
netbios name = redhatEL5 //設置其主機名,該主機名可以任意設定,該名稱並不是hostname,查看本機的hostname方法#hostname
server string = Samba Server //對其描述
security = user //可設置3種share/user/server 設置為share客戶端訪問時不需要輸入用戶名;設置為user時需要輸入smb設置的用戶密碼;設置為server時必須輸入啟用下面的password server項,其身份認證由相應服務器進行
password server = <server>
log file = /var/log/samba/log.%m //使用客戶機的netbios主機名創建不同的日志,%I表示Ip地址,更多通配符可以查看幫助#man 5 hosts_access
encrypt password = yes //是否加密密碼
smb passwd file = /etc/samba/sbmpasswd //密碼文件存放位置
include = /etc/samba/smb.conf.%m //為不同的客戶端主機使用不同的配置文件,%I表示Ip地址,更多通配符可以查看幫助#man 5 hosts_access
interfaces = 192.168.1.0/24
name resolve order = wins //設置名稱解析順序,可設置為wins/lmhosts/bcast分別表示wins服務器/本地lmhosts文件/局域網廣播,如開啟wins下面兩項必開一個
wins support = yes //本機做為wins服務器
wins server = 12.12.21.12 //wins服務器地址
host deny = ALL EXCEPT 192.1.1.1 //設置不可訪問的限制,支持主機名、ip、通配符,更多通配符可以查看幫助#man 5 hosts_access
host allow = 192.0.0 //設置可以訪問的,支持主機名、ip、通配符,更多通配符可以查看幫助#man 5 hosts_access 注意某ip或主機只要在一處允許了其他地方禁用將失效。
[homes]
comment = Home Directions //共享文件夾描述
valid users = %S //用戶設置為只有用戶自己可以訪問
browseable = no //是否可以浏覽
writeable = yes //是否可寫
[myshare]
path = /var/share //共享文件路徑
comment = myshareFiles //對共享文件的描述
public = no //是否需要驗證用戶
valid users = redhat //設置可以訪問的用戶,可以是戶名或者工作組名@workgroup
write list = redhat //允許寫的控制,可以是用戶名或者工作組名@workgroup
creat mask = 0660 //創建的文件權限 ,注意無論是創建還是修改,在服務器上的操作系統默認都是系統用戶進行的而不是samba用戶,假設系統用戶名test,使用samba的名稱映射後為smbtest(方法:首先啟動名稱映射,在smb.conf文件中使username map生效,執行#smbuseradd test:smbtest,或者直接修改/etc/samba/smbusers文件),服務器上默認的操作都是test用戶
directory mask = 0770 //創建的文件夾權限
進行一個簡單實例:設置一個共享文件夾,需要用戶登錄,並且可以創建、修改文件
使用root身份登錄(su - )
#mkdir /tmp/sharefile
#chmod 777 /tmp/sharefile
修改/etc/samba/smb.conf文件:
security = user
netbios name = redhatserver
添加一下內容
path = /tmp/sharfile
comment = mysharefile
public = no
valid users = redhat
write list = redhat
creat mask = 0660
directory mask = 0770
保存後退出
創建samba用戶
#useradd redhat
#passwd redhat
#smbpassswd -a redhat
重新啟動smb
#service smb restart
在win客戶機上訪問,地址欄輸入\\redhatserver後輸入用戶名redhat和密碼