鳥哥的Linux私房菜學習筆記之SAMBA

NFS僅能讓Unix/linux之間共享數據,CIFS僅能讓Win之間溝通php

SAMBA:
跨平臺的文件共享服務
主要用於局域網內linux

SAMBA常見的應用:
    共享文件與打印機服務
    能夠提供用戶登陸SAMBA主機時的身份認證,以提供不一樣身份用戶的個別數據
    能夠進行Windows網絡上的主機名解析(NetBIOS Name)
    能夠進行設備的共享(例如Zip、CD-ROM)

SAMBA是架構在NetBIOS這個通訊協議上面開發出來的

NetBIOS
    由IBM開發
    NetBIOS: Windows基於於主機實現互相通訊的機制;
            15個字符
    NetBIOS沒法跨路由通訊

    經過NetBIOS over TCP/IP 能夠實現跨路由使用SAMBA服務器所提供的功能

NetBIOS Name
    因爲NetBIOS主要定義在局域網內,所以並無使用TCP/IP之類的傳輸協議,也就不須要IP的設置。
    倆臺主機間的通訊,經過主機在NetBIOS協議中使用NetBIOS Name,每臺主機使用不一樣的NetBIOS
    文件數據在不一樣的NetBIOS Name之間溝通。

SAMBA的主要服務:
    nmbd: 管理工做組,NetBIOS Name 等的解析,使用UDP 137,138端口,向客戶端提供構造在IP之上的NetBios名字服務的NetBios名字服務器
    smbd:管理SAMBA主機共享的目錄,提供文件共享和打印服務的服務器進程。使用TCP 139和445端口。使用smb或cifs協議
    向客戶提供文件共享空間和打印服務。

SAMBA的常見局域網鏈接方式:
    Peer/Peer對等模式(Workgroup model,對等模式)
        每臺計算機都可以獨立運做,不受他人影響。
        適用於小型的網絡,或者是不須要經常進行文件數據共享的網絡環境,或者每一個用戶都擁有該計算機的擁有權。

    Domain model(主控模式)
        將全部計算機的帳號和密碼都放置在一臺主控計算機(PDC)上面,任何人使用任何計算機時,都須要經過PDC服務器的辨識後,纔給以適當的權限。

SAMBA所須要的軟件:
    samba:samba服務端程序
    samba-client:samba的Linux客戶端
    samba-common:服務端與客戶端都會使用到的數據

SAMBA 用戶帳號必需要存在於Linux系統當中(/etc/passwd),可是SAMBA的密碼與linux的密碼文件並不相同
samba用戶:
帳號:都是系統用戶, /etc/passwd
密碼:samba服務自有密碼文件, ios

將系統用戶添加爲samba的命令:pdbedit 

            pdbedit 
                -u :指定用戶名
                -a :添加一個可以使用的SAMBA帳號,帳號須要在/etc/passwd 內存在
                -r :修改一個帳號的相關信息
                -x :刪除一個SAMBA帳號
                -L :列出目前在數據庫當中的帳號與UID等相關信息
                -v :與 -L 搭配使用列出更詳細的信息

        修改SAMBA帳號密碼
            smbpasswd:

SAMBA的配置文件:
    /etc/samba/smb.conf   #samba主配置文件
    /etc/sysconfig/samba  #提供啓動smbd,nmbd時,還想要加入的相關參數。
    /var/lib/samba/private/{passdb.tdb,secrets.tdb} 管理samba的用戶帳號/密碼時,會用到的數據庫文件
    /usr/share/doc/samba-<版本>:samba技術手冊

    /usr/bin/{smbd,nmbd} #samba服務端服務程序
    /usr/bin/{tdbdump,tdbtool} #samba3.0之後的版本中,用戶的帳號密碼參數已經使用數據庫管理,samba使用的數據庫爲TDB。
                                tdbdump能夠查看數據庫的內容,tdbtool能夠進入數據庫手動修改帳戶及密碼參數。(需安裝tdb-tools)

    /usr/bin/smbstatus   #列出當前samba的鏈接情況,包括PID,共享的資源,使用的用戶來源等。

    /usr/bin/pdbedit     #管理samba用戶數據
    /usr/bin/testparm    #檢查主配置文件smb.conf的語法錯誤

    /usr/bin/smbclient   #查看其餘計算機共享出來的目錄與設備,或在本身的samba主機上,查看samba是否設置成功

    /usr/bin/nmblookup   #查出NetBios Name
    /usr/bin/smbtree     #查出工做組與計算機名稱的樹形目錄分佈圖

SAMBA的主配置文件;(#號與;都是註釋文件)
        /etc/samba/smb.conf

         主機信息的配置:
            [global]
                workgroup = MYGROUP  #工做組的名稱,共享文件客戶端服務端工做組要相同
                netbios name = MYSERVER #主機的NetBIOS Name名稱,每部主機均不一樣
                server string = Samba Server Version %v #主機的簡易說明
                display charset=xx 本身服務器上面的顯示編碼
                unix charset=xx    在Linux服務器上所使用的編碼
                dos charset=xx     Windows客戶端的編碼

                host allow=IP      訪問權限設定,指定IP的主機能夠訪問SAMBA服務

                關於語言的設定可參考:
                    http://phorum.vbird.org/viewtopic.php?t=22001

                log file=xx 日誌文件的存儲文件
                max log size=xx 日誌文件最大多大

                security=xxx share,user,domain 三選一 
                    share:共享的數據不須要密碼,你們都可使用(安全性差)
                    user:使用samba服務器自己的密碼數據庫
                    domain:使用外部服務器的密碼,也就是samba時客戶端的意思,須要password server=IP 的設置值

                encrypt passwords=YES     密碼是否加密
                passdb backend=數據庫格式 

         共享信息的配置:
                [共享名稱]
                path=xxx       實際共享的目錄
                comment:共享目錄的說明
                guest ok=yes    容許以缺省的guest用戶權限進行訪問(缺省權限爲guest account 設置的權限,缺省設置爲nobody,編譯時指定)

                browseable:是否讓全部用戶看到這個目錄
                writable:是否能夠寫入
                write list=@組 能夠進入此資源的特定用戶組
                create mode=xx  建立文件的相關權限
                directory mode=xx  建立目錄的權限
                read only = yes 是否只讀

     檢查配置文件語法正確:
        testparm 命令
            -v:查閱完整的參數設置,連同默認值也會顯示出來

 smbclient命令: 查看其餘計算機共享出來的目錄與設備,或在本身的samba主機上,查看samba是否設置成功

    smbclient -L [//主機或IP] [-U 用戶帳號]

        -L:僅查詢後面鏈接的主機所提供的共享資源目錄
        -U:以指定的帳號來嘗試訪問該主機的可用資源

基於掛載的方式訪問:
        mount -t cifs //SERVER/shared_name  /mount_point -o username=USERNAME,password=PASSWORD
相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息