• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    Linux 系統中的Samba配置

    發布: 2007-7-04 12:06 | 作者: admin | 來源:  網友評論 | 查看: 15次 | 進入軟件測試論壇討論

    領測軟件測試網

    于千萬人之中遇見你,緣份啊。。。。。。

    前言:
    為了實現windows 和 Linux以及其他操作系統之間的資源共享,軟件商推出nfs 和samba兩種解決方式。由于市場上缺乏象pc-nfs那樣的客戶端工具,使得Linux和windows的資源共享變得復雜。Samba的出現解決了這一問題,它以其簡潔、實用、靈活配置的特點受到越來越多人們的廣泛關注。
    Windows利用SMB協議來實現操作系統間文件和打印機共享,而Samba本身具備SMB協議,它實現局域網內和Windows系列計算機的資源共享。
    本文就Samba在Linux系統下的配置為重點,討論局域網內windows 與 Linux 的資源共享。
    一、Samba 介紹
    1、SMB協議
    SMB (Server Message Block,服務信息塊) 協議,是局域網上的共享文件/打印機的一種協議,它可以為網絡內部的其他windows和linux 機器提供文件系統、打印服務。SMB的工作原理是讓NetBIOS和SMB運行在TCP/IP之上,且使用NetBIOS的nameserver讓linux機器可以在windows 網絡鄰居里被瀏覽。
    2、Samba
    Samba是用來實現SMB的一種軟件,由澳大利亞的Andew Tridgell開發,是一種在Linux 環境里運行的自由軟件。它可以完成如下功能:
    文件服務和打印服務,實現Windows和Linux的資源共享。
    登錄服務器,可以作為局域網的服務器。
    作為主域控制器。
    WINS服務器。
    支持SSL。
    支持SWAT。
    二、 Samba服務
    1、 核心進程
    Samba 有兩個守護進程:smbd 和nmbd,它們是Samba的核心進程。nmbd進程使其他計算機瀏覽Linux服務器,Smbd進程在SMB服務請求到達時對它們進行處理,并且為使用或共享的資源進行協調。
    2、 啟動服務
    Samba 有兩種啟動方式:Daemon形式和Inetd形式。
    (1)Daemon形式 建立啟動腳本:rc.samba
    smbd -D -d1
    nmbd -D -d1
    -D 表示以Daemon形式執行;-d1 表示除錯記錄級別
    執行腳本文件rc.samba
    (2)Inetd形式
    設置文件:/etc/services
    netbios -ssn 139/ tcp
    netbios -ns 137/ udp
    設置文件:/etc/inetd.conf
    netbios -ssn stream tcp nowait root /usr/sbin/smbd smbd
    netbios -ns dgram udp wait root /usr/sbin/nmbd nmbd
    重啟動Inetd daemon
    # kill -HUP 1
    3、 客戶工具 smbclient
    Smbclient命令用來存取遠程Samba服務器上的資源。其命令形式與ftp相似。
    命令語法是:#smbclient [password] [option]
    (1) 解釋:servicename是要連接的資源名稱,資源名稱的形式如下:
    //server/service server 是遠程服務器的NetBIOS名字,對于windows服務器而言,就是出現在網上鄰居中的名字。
    Service是各server所提供的資源的名字。
    pssword 是存取該資源所需的口令
    option 各種命令選項,其中 -L 用于列出遠程服務器提供的所有資源
    -I 指定遠程服務器的IP地址。此時,servicesname 中的NetBIOS名部分將被忽略。
    (2)多種smbclient命令:
    執行smbclient命令成功后,進入smbclient環境,出現提示符: smb:\>
    這里有許多命令和ftp命令相似,如cd 、lcd、get、megt、put、mput等。通過這些命令,我們可以訪問遠程主機的共享資源。
    4、 Samba系統裝載與卸載
    (1) 裝載其他主機的資源
    我們可以利用Samba提供的smbmount命令,裝載其他主機的共享資源。
    Smbmount的命令語法:# smbmount
    其中 servicename 是資源名,mount-point是安裝點。
    例如: # smbmount "\server\tmp" -c ' mount /mnt'
    表示:把名字為“server”的計算機上的共享資源“tmp”的內容裝載到本地的 /mnt
    目錄下。
    (2) 卸載資源
    卸載一個已經裝載的SMB文件系統,使用smbunmount命令,同時指定要卸載的裝載點。 例如: # smbunmount / mnt
    三、Samba配置
    Samba組件的配置文件是 /etc/smb.conf ,該文件幾乎包含了Samba系統程序運行時所需的所有配置信息。
    1、 配置選項
    配置文件中有比較重要的幾個節:[gloabal]、[homes]、[printers],下面分別給與說明。
    (1)[gloabal]節 在全局參數中,參數的設置直接影響samba系統。
    NetBIOS name:設置主機名稱
    Workgroup:用來指定主機所在網絡上所屬的NT域名或者工作組名稱。格式是
    Workgroup= Nt Domain-Name or workgroup-name
    Server string:用來設置本機描述,缺省是 Samba Server
    Host Allow:它允許設置哪些領域的機器可以訪問它的Samba服務器
    Load printers:允許自動加載打印機列表,而不需要單獨設置每一臺打印機。
    Interface:配置Samba使用多個網絡界面。
    Domain controller: 僅當網絡中有一臺在安裝時設置為主域控制器時使用此選項。
    Security: 設置安全參數,定義安全模式。Samba 的安全模式有四種
    Share、 user、 server 、domain
    encrypt passwords 、smb passwd file:用于適用加密口令。
    下面是一段參數配置例子:
    [global]
    smb passwd file = /etc/smbpasswd
    remote announce = 172.18.158.234 172.18.153.55 172.18.153.255
    dns proxy = no
    security = user
    encrypt passwords = yes
    server string = Ftp Server
    workgroup = turing
    socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
    log file = /var/log/samba/log.%m
    load printers = yes
    guest account = dscan
    remote browse sync = 172.18.158.234 172.18.153.55 172.18.153.255
    printcap name = /etc/printcap
    max log size = 50
    hosts allow = 172.18.158. 172.18.153. 127.
    ... ...
    (2)[homes]節 所有使用者的home目錄
    當任何一個客戶訪問Samba服務器時,在網絡資源中都能出現自己的home目錄共享。其配置如下:
    [homes]
    comment = Hnnw Directories
    browseable = no
    writable = yes
    (3)用戶共享目錄
    用來指定某一特定用戶組或者用戶擁有訪問權限的目錄配置,下列參數配置僅有hnnw組的用戶有權訪問目錄/home/samba。
    [public]
    comment = Public Hnnw
    path = /home/samba
    public = yes
    writable = yes
    printable = no
    write list = @hnnw
    2、 用戶映射
    全局參數“username map”用來控制用戶映射,它允許管理員指定一個映射文件,該文件包含了在客戶機和服務器之間進行用戶映射的信息。
    如:username map= /etc/smbuser
    用戶映射經常在windows 和linux 主機間進行。 兩個系統擁有不同的用戶賬號,用戶映射的目的是將不同的用戶映射成為一個用戶,便于共享文件。
    下面是一個映射文件的例子:
    # Map Windows admin to root
    root=admin administrator
    ;Map the member of developer to studio
    studio = @developer
    等號左邊是單獨的Linux賬號,等號右邊是要映射的賬號列表。
    服務器逐行分析映射文件,如果提供的賬號和某行有右側列表中的賬號匹配,就把它
    替換為等號左邊的賬號。
    3、 使用加密口令
    新版本的windows 95以及windows98、winnt(sp3以上版本),在網絡傳輸中僅傳遞加密口令作為用戶認證的信息。這類客戶機和不支持加密口令并且以user安全級運行的Samba服務器通訊時,會出現故障。為了正常的通訊,samba服務器使用加密口令。下面討論如何在samba中使用加密口令。
    (1) 口令文件 /etc/smbpasswd
    為了使用加密口令,samba 需要一份口令文件(/etc/smbpasswd),并且該文件應該和Linux的口令文件(/etc/passwd)保持同步。下面是生成文件命令:
    # cat /etc/password | mksmbpasswd > /etc/smbpasswd
    smbpasswd 是需要的口令文件,其權限是0600,所有者是root
    smbpasswd和passwd文件的記錄對應,密碼部分不同。密碼有兩部分組成,每部分
    是32個"X",前部分用于和Lanman通訊,后部分和Windows NT通訊。
    Root用戶可以使用smbpasswd命令為每個用戶設定samba口令。
    (2) 修改配置文件 /etc/smb.conf
    要使Samba使用加密口令,需要在配置文件smb.conf中加入如下參數。
    Encrypt passwords=yes
    Smb passwd file= /etc/smbpasswd
    第一行通知samba使用加密口令,第二行給出口令文件的位置。
    (3) 重啟動samba 服務。
    修改完配置文件后,需要重新啟動samba服務,可用如下命令:
    # /usr/sbin/samba restart
    4、windows系統中的明碼口令使用
    Samba系統中使用明碼口令作為連接SMB的默認設置。當SMB服務器對協商協議做出響應時,響應信息包含了一位,以說明服務器是否支持詢問或者響應加密。隨著win95的網絡重定向更新程序的發布,Microsoft修改了默認值,這樣,windows客戶就不會向不支持加密的服務器發送明碼口令了。
    在這種情況下,有兩種解決辦法:
    (1)設置Samba服務器使用加密口令
    (2)讓windows客戶使用明碼口令
    這里選用第2種解決辦法,通過修改注冊表來實現。下面對win95/win98、winnt用戶分別給與說明。
    (1)win98/win95系統用戶
    在注冊表中加入下列注冊字,并重新啟動機器:
    [HKLM\System\CurrentCntrolSet\Services\VxD\VNETSUP]
    “EnablePlainTextPAssword”= dword:00000001
    (2)Winnt系統用戶
    修改注冊表,加入下列注冊表項,并重新啟動機器:
    [HKLM\System\CurrentCntrolSet\Services\Rdr\Parameters]
    “EnablePlainTextPAssword”= dword:00000001
    四、Samba應用
    1、 windows資源共享與使用
    (1)windows資源共享
    a. 使用TCP/IP協議作為網絡默認通訊協議
    b. 修改網絡配置,設置文件和打印機共享。
    c. 設置好計算機名和所屬工作組
    d.共享系統資源
    (2)在windows系統中使用Linux共享資源
    a. 登錄進入windows網絡
    b. 通過網上鄰居查看、使用共享資源。
    c. 命令行下工具使用共享資源
    使用命令行下的net.txt工具來查看、使用共享資源:
    net use 命令的語法: c:>net use X:\servername\sharename
    在這里,X:是共享的驅動器盤符,\servername\sharename是到共享的UNC的網絡路徑。
    例如: c:\>net use h:\hey\myfile
    表示:將hey機器上的myfile共享資源映射為本地的h盤
    2、Linux資源共享與使用
    (1)將Linux 的資源共享
    通過編輯Samba配置文件,添加需要共享的Linux資源。同時可以設定訪問此資源的用戶群及其訪問權限。下面是一段例子,將本機的 /public/data 目錄共享,所有人都有讀寫權限。
    [data]
    comment = Public Data
    path = /public/data
    public = yes
    writable = yes
    printable = no
    (2)在Linux中使用共享資源
    可以使用smbclient命令,訪問所有的Samba資源。具體使用方法見前述。
    五、Samba應用程序
    smbclient :訪問所有共享資源
    smbstatus: 列出當前所有的samba連接狀態
    smbpasswd:修改samba用戶口令、增加samba用戶。
    Nmblookup:用于查詢主機的NetBIOS名,并將其映射為IP地址
    Testparam: 用于檢查配置文件中的參數設置是否正確
    Linux 系統中的Samba配置

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>