# Centos7.3搭建Samba服務器

1. 安裝Samba

$ yum install samba samba-client samba-common 

2. 啓動Samba服務

  • 查看Samba服務運行狀態
$ systemctl status smb.service

此時Samba狀態顯示爲"disable",接下來我們啓動Samba服務。

  • 啓動Samba
$ systemctl start smb.service
  • 設置開機啓動Samba
$ systemctl enable smb.service

再次用命令查看Samba服務狀態,應該顯示爲"running"了,但是現在還不能馬上使用Samba共享文件,在此之前還需要進行一些設置,具體看下文詳細描述。

3. 開放指定端口或者關閉防火牆

Centos7.3默認開啓了防火牆,如果要訪問Samba服務器,必須開放指定端口或者關閉防火牆,使用哪種方式取決於網絡環境:如果僅僅是內網使用,則可以簡單粗暴地關閉防火牆;如果服務器還連接了外網,建議還是開放Samba服務所需的指定端口。下面是這兩種方式的詳細命令:

3.1 關閉防火牆

$ systemctl stop firwwalld.service
$ systemctl disable firwwalld.service

3.2 開放Samba服務端口

  • 將Samba服務的端口加入防火牆“白名單”
$ firewall-cmd --permanent --add-service=samba
$ firewall-cmd --reload
  • 查看防火牆“白名單”列表,確認Samba服務已被添加
$ firewall-cmd --list-services

4. 關閉SELinux

很多人發現在Centos7.3上搞定一切Samba所需配置後,還是無法訪問Samba共享文件夾,罪魁禍首就是SELinux了!
SELinux是NASA搞出來的玩意,對權限管理極爲嚴格,而配置又極其複雜,對大多數人而言都是雞肋,索性禁用了之,下面給出了具體步驟:

  • 關閉SELinux
setenforce 0
  • 禁止SElinux開機啓動
    修改配置文件/etc/selinux/config,將SELINUX值改爲disabled
...
#SELINUX=enforcing
SELINUX=disabled
...

5. 爲Samba服務添加用戶

注意,用戶名必須存在於系統用戶列表中!
可以使用之前已經存在的用戶;爲了方便權限管理,也可以新建一個“smb”用戶。這裏我們以root用戶爲例:

$ smbpasswd -a root

執行上述命令後,按照提示輸入密碼(可以不和系統密碼相同),設置完成後,這組用戶名與密碼就是我們訪問Samba服務時要輸入的登錄信息。

6. 修改Samba配置文件

Samba服務的配置文件路徑爲:/etc/samba/smb.conf,我們需要在這個文件中修改相關配置來設置共享文件夾。例如要共享/mnt目錄,則在文件末尾增加如下配置:

...
[my share]
    #共享文件夾路徑
    path = /mnt
    #網絡上是否可見
    browseable = yes
    #寫入權限控制
    writable = yes
    #是否支持賓客訪問模式
    guest ok = yes

修改完成後,可以運行如下命令測試是否配置正確:

$ testparam

如果有報錯信息,說明配置文件有些地方配置錯誤了,需要返回修改,否則Samba服務無法運行。

確認配置無誤後,重啓Samba服務以使修改過的配置生效:

$ systemctl restart smb.service

7. 訪問Samba共享文件夾

7.1 從Windows訪問Samba

在文件管理器的地址欄或“運行”窗口輸入IP地址,即可訪問Samba共享文件夾,輸入格式爲:雙斜槓+IP地址,舉例如下:

\\192.168.0.101

7.2 從Linux訪問Samba

  • UI界面
    以Ubuntu爲例,在文件資源管理器中側欄選擇“Connect to Server”輸入:
smb://192.168.2.106
  • 命令行
    將Samba共享文件夾掛載至本地:
$ mount -t cifs -o username=root,password=123456 //192.168.0.101 /mnt/
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章