SAMBA 的配置與淺談

SMB   (server message block )服務消息塊協議

 

linux之間的共享可以用 nfs     network file system
linux與windows之間就要用到 samba
samba使用netbios (network basic  input and output system)
netbeui      (netbios extened  user interface)


samba  通過兩個守護進程來控制
nmbd   用來管理工作組,netbios名的解析等 udp 137,138端口


smbd    用來管理samba主機共享的目錄,檔案     tcp 139,445

特點:
1,能夠支持更詳細的訪問控制
2,能夠跨平臺(linux和windows)共享文件

大概的就說到這裏吧具體的可以登錄官網

http://www.samba.org

下面具體談談配置吧:

[root@li ~]# yum list |grep samba
This system is not registered with RHN.
RHN support will be disabled.
samba-common.i386               --公共的工具包,包括samba.conf和檢測其語法的測試工具testparm 
samba.i386                    --samba服務端         
samba-client.i386               --客戶端的工具指令           
samba-swat.i386                 --圖形化samba配置工具,其於web接口
[root@li ~]# yum install samba* -y


服務器端主配置文件: /etc/samba/smb.conf
netbios名與ip對應文件 /etc/samba/lmhosts
密碼存放文件: /etc/samba/passdb.tdb   --用sampasswd -a加入用戶後就存在了
日誌文件:   /var/log/samba/


man smb.conf --查找幫助

[root@li ~]# cat /etc/samba/smb.conf |grep -v ^# |grep -v ^$ |grep -v ^";"|grep -v "#"

[global] --定義全局的參數
        workgroup = MYGROUP --定義工作組
        server string = Samba Server Version %v  --定義服務器的描述
        security = user   --定義工作模式:share,user,domain,ads
        passdb backend = tdbsam  --使用本地的.tdb文件保存賬號密碼
        load printers = yes --加載打印機
        cups options = raw --打印機類型
[homes] --保留的的資源名
        comment = Home Directories
        browseable = no
        writable = yes
[printers] --保留的資源名
        comment = All Printers
        path = /var/spool/samba
        browseable = no
        guest ok = no
        writable = no
        printable = yes


security =
share 不用密碼,包括匿名用戶
user 使用samba自己的密碼資料庫
server,domain,ads     使用外部主機的密碼

共享目錄有關的參數

browseable  是否可見
public    是否讓所有可以登入的使用者看到
guest ok   和public一樣,使用其中之一就可以
writable   是否可寫
read only  是否只讀  --這個參數與writable同時存在會有衝突,以後面出現的設定值爲主
create  mode   umask類似
valid users   指定能夠進入的使用者


 

/etc/init.d/smb start

[root@li ~]# netstat -ntlup | grep bd
tcp        0      0 0.0.0.0:139                 0.0.0.0:*                   LISTEN      3000/smbd          
tcp        0      0 0.0.0.0:445                 0.0.0.0:*                   LISTEN      3000/smbd          
udp        0      0 10.1.1.45:137               0.0.0.0:*                               3003/nmbd          
udp        0      0 10.1.1.46:137               0.0.0.0:*                               3003/nmbd          
udp        0      0 192.168.195.1:137           0.0.0.0:*                               3003/nmbd          
udp        0      0 192.168.205.1:137           0.0.0.0:*                               3003/nmbd          
udp        0      0 0.0.0.0:137                 0.0.0.0:*                               3003/nmbd          
udp        0      0 10.1.1.45:138               0.0.0.0:*                               3003/nmbd          
udp        0      0 10.1.1.46:138               0.0.0.0:*                               3003/nmbd          
udp        0      0 192.168.195.1:138           0.0.0.0:*                               3003/nmbd          
udp        0      0 192.168.205.1:138           0.0.0.0:*                               3003/nmbd          
udp        0      0 0.0.0.0:138                 0.0.0.0:*                               3003/nmbd          

 


實驗一:

使用linux的客戶端工具做測試:
       smbclient - ftp-like client to access SMB/CIFS resources
       on servers

[root@li ~]# smbclient -L //10.1.1.45
Password: --直接回車,表示以匿名用戶登錄,但沒有看到共享資源,只有服務器的基本信息

[root@li ~]# smbclient -L //10.1.1.45  -U a --使用用戶名登錄,登錄失敗
Password:
session setup failed: NT_STATUS_LOGON_FAILURE


原因: 
1,默認security = user 模式,這種模式指定訪問用戶需要密碼,匿名用戶除外
2, samba賬號有兩個要求,一,要求是系統用戶  二,要把系統用戶通過samba的命令把它加入到samba服務裏去

smbpasswd - change a user’s SMB password

[root@li ~]# smbpasswd -a a --把a用戶加入到samba用戶裏
New SMB password:
Retype new SMB password:
Added user a.

[root@li ~]# smbclient -L //10.1.1.45  -U a --再使用a用戶登錄
Password:
Domain=[LI] OS=[Unix] Server=[Samba 3.0.33-3.14.el5]

        Sharename       Type      Comment
        ---------       ----      -------
        IPC$            IPC       IPC Service (Samba Server Version 3.0.33-3.14.el5)
        a               Disk      Home Directories  --發現多了一個共享資源,共享資源名爲用戶名一樣

[root@li ~]# smbclient //10.1.1.45/a -U a
Password:
Domain=[LI] OS=[Unix] Server=[Samba 3.0.33-3.14.el5]
smb: \> pwd --查看當前登錄的目錄
Current directory is \\10.1.1.45\a\
smb: \> ? --幫助
smb: \> help get --查看get命令的幫助
smb: \> ls --列表
smb: \> put install.log --上傳
putting file install.log as \install.log (966.9 kb/s) (average 966.9 kb/s)
smb: \> get vvv
getting file \vvv of size 0 as vvv (0.0 kb/s) (average 0.0 kb/s)
smb: \> rm vvv


上面的實驗知道,就是配置段內的homes這個保留資源
[homes] --定義共享資源的名字,   自動變成對應的用戶名
        comment = Home Directories --資源描述
        browseable = no --指定在匿名用戶使用-L時是否可見
writable = yes --表示可寫,能夠上傳刪除等操作



 





 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章