Smb服務器搭建

CentOS 6.4安裝和配置Samba服務

  1. 環境說明
    samba服務端系統:CentOS 6.4 x86_64
    samba服務端IP:10.1.1.1
    samba客戶端系統:CentOS 6.4 x86_64
    samba客戶端IP:10.1.1.1
  2. 安裝samba服務端
    Step-1:爲samba打開防火牆上的相應端口,運行以下命令:
    iptables -I INPUT -p tcp --dport 137 -j ACCEPT
    iptables -I INPUT -p udp --dport 137 -j ACCEPT
    iptables -I INPUT -p tcp --dport 138 -j ACCEPT
    iptables -I INPUT -p udp --dport 138 -j ACCEPT
    iptables -I INPUT -p tcp --dport 139 -j ACCEPT
    iptables -I INPUT -p udp --dport 139 -j ACCEPT
    iptables -I INPUT -p tcp --dport 445 -j ACCEPT
    iptables -I INPUT -p udp --dport 445 -j ACCEPT
    service iptables save
    service iptables restart
    Step-2:將SELinux配置爲permissive模式,運行以下命令:
    setenforce 0 #零時生效,重啓後失效
    vim /etc/selinux/config

                        將上述文件中的
                        SELINUX=enforcing
                        替換爲
                        SELINUX=permissive或者SELINUX=disable

    Step-3:安裝samba服務端,運行以下命令:
    yum install -y samba
    Step-4:配置smb.conf文件,運行以下命令:
    mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
    vi /etc/samba/smb.conf

                        上述配置文件的內容如下所示:

    [global]
    ##samba服務器的工作組爲WORKGROUP
    workgroup = WORKGROUP
    ##samba服務器的描述信息
    server string = Samba Server Version %v
    ##samba服務器的NetBIOS名稱
    netbios name = CentOS.Server
    ##samba服務器的客戶端訪問日誌
    log file = /var/log/samba/log.%m
    ##日誌的最大尺寸爲50 KB
    max log size = 50
    ##使用tdbsam存儲用戶信息
    passdb backend = tdbsam

    ##使用用戶驗證的方式確保安全性
    security = user

    ##映射匿名用戶訪問
    map to guest = bad user
    guest account = nobody

    [homes]
    ##共享目錄說明
    comment = Home Directories
    ##有效用戶,此目錄在/home目錄中
    valid users = %S
    ##在Windows的網絡共享中看不到此目錄
    browseable = No
    ##此目錄可寫
    writable = Yes

    [private]
    ##共享目錄說明
    comment = Demo Directory

    ##共享目錄路徑
    path = /samba/private

    ##有效用戶
    valid users = @user1

    ##在Windows的網絡共享中能夠看到此目錄
    browseable = Yes

    ##此目錄不能匿名公開訪問
    public = No

    ##此目錄可寫
    writable = Yes

    [public]
    ##共享目錄說明
    comment = Public Stuff

    #共享目錄路徑
    path = /samba/public
    ##在Windows的網絡共享中能夠看到此目錄
    browseable = Yes

    ##此目錄可以公開匿名訪問
    public = Yes

    ##此目錄可寫
    writable = Yes
    Step-5:在系統中建立兩個用戶組和用戶,分別是user1和user2,運行以下命令:
    groupadd user1
    useradd -g user1 user1
    passwd user1
    groupadd user2
    useradd -g user2 user2
    passwd user2

    注意:user1和user2的密碼都爲password。
    Step-6:在samba服務端建立兩個用戶,運行以下命令:
    smbpasswd -a user1
    smbpasswd -a user2

    注意:user1和user2的samba訪問密碼都爲password。
    Step-7:建立相應的目錄,並且設置訪問權限,運行以下命令:
    mkdir -p /samba/public
    mkdir -p /samba/private
    chmod -R 777 /samba
    Step-8:配置和啓動samba服務,運行以下命令:
    chkconfig smb on
    chkconfig nmb on
    service smb start
    service nmb start
    通過上述8個步驟的配置,在客戶端便能訪問共享目錄了。user1和user2都能夠訪問public目錄,具有讀寫權限;只有user1能夠訪問private目錄,具有讀寫權限;user1和user2的個人目錄不可見,只能通過url進行訪問,各自都具有讀寫權限。

  3. 安裝samba客戶端
    Step-1:安裝samba客戶端,運行以下命令:
    yum install -y samba-client
    Step-2:連接服務端上的共享目錄,運行以下命令:
    ##連接公開目錄
    smbclient //10.1.1.1/public -U user1

            ##連接個人目錄
            smbclient //10.1.1.1/user1 -U user1
            若登錄成功,Shell命令就會變爲這樣的提示符:
            smb: \>
            Step-3:使用完之後,斷開連接,在samba命令行中運行以下命令:
            quit
            通過上述3個步驟,samba客戶端便能夠使用samba共享了。
  4. 手動掛載samba共享目錄
    Step-1:掛載user1的個人目錄至samba客戶端的/samba目錄下,運行以下命令:
    mkdir -p /samba
    mount -t cifs //192.168.4.211/user1 /samba -o user=user1,password=password,workgroup=WORKGROUP
    Step-2:個人目錄用完之後,卸載掛載,運行以下命令:
    umount /samba
  5. 開機自動掛載samba共享目錄
    向fstab文件中添加共享目錄的掛載條目,即可實現開機自動掛載,但是隨後與samba服務端的連接將始終處於活動狀態。運行以下命令:
    mkdir /samba
    vi /etc/fstab

            在上述文件末尾加入共享目錄的掛載條目,如下所示:
            //10.1.1.1/user1 /samba cifs defaults,username=user1,password=password 0 0
    
            其中,第5個字段設置爲0表示共享目錄的文件系統不需要使用dump命令進行轉儲,第6個字段設置爲0表示共享目錄的文件系統不需要使用fsck命令進行檢查。
            除此之外,還可以使用自動掛載器(autofs)實現按需自動掛載網絡共享目錄。當共享不再使用,並處於不活動狀態一定時間之後,自動掛載器會對共享解除掛載。
  6. 按需自動掛載samba共享目錄
    Step-1:修改不活動狀態的超時時間,運行以下命令:
    vi /etc/sysconfig/autofs

將上述文件中的
TIMEOUT=300
替換爲
TIMEOUT=600
也就是將不活動狀態的超時時間由5分鐘修改爲10分鐘。
Step-2:建立共享目錄掛載點的父目錄,運行以下命令:
mkdir -p /samba Step-3:配置共享目錄掛載點的父目錄,運行以下命令:
vi /etc/auto.master

在上述文件的最後新增一行,如下所示:
/samba /etc/auto.samba

其中,/samba是掛載點的父目錄,這個目錄在系統中始終可見,並由autofs服務監控,以確定是否“需要”掛載/創建子目錄掛載點。/etc/auto.samba爲單個配置文件,包含由autofs服務在此父目錄下管理的子目錄掛載點的列表。 Step-4:配置共享目錄掛載點目錄,運行以下命令:
vi /etc/auto.samba
上述文件的內容如下所示:
user1 -fstype=cifs,username=user1,password=password ://10.1.1.1/user1

其中,user1爲子目錄掛載點,此目錄通常不可見,只有當autofs服務創建此目錄和掛載共享之後對其進行直接命名/訪問時,它纔會變爲可見。 Step-5:重新啓動autofs服務,運行以下命令:
service autofs restart Step-6:訪問網絡共享目錄,運行以下命令:
cd /samba/user1

運行上述命令之後,autofs將自動創建掛載點目錄,並且掛載共享目錄。 Step-7:卸載網絡共享目錄,詳情如下所示:
在/samba/user1之下的所有文件和目錄停止使用且超時期滿之後(10分鐘),autofs將卸載共享目錄。

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