1. 程式人生 > >CentOS 7建立Samba共享目錄

CentOS 7建立Samba共享目錄

1. 安裝Samba服務

yum -y install samba
# 檢視yum源中Samba版本yum list | grep samba
# 檢視samba的安裝情況
rpm -qa | grep samba

Samba伺服器安裝完之後, 會生成配置檔案目錄/etc/samba, /etc/samba/smb.conf是samba的核心配置檔案.

2. 啟動Samba服務

Samba服務安裝完成之後有兩種方法啟動:

service smb start/stop/restart/status
# 或者
systemctl start/stop/restart/status smb.service

# 設定smb服務開機啟動
systemctl enable smb.service

3. 開放Samba服務使用到的埠號

Samba服務會用到如下的一些埠號:

  • 137(UDP): NetBIOS名字服務

  • 138(UDP): NetBIOS資料報服務

  • 139(TCP): 檔案和列印共享

  • 389(TCP): 用於LDAP

  • 445(TCP): NetBIOS服務在windows 2000及以後使用此埠

  • 901(TCP): 用於SWAT, 網頁管理Samba

如果不想關閉防火牆的話, 就要在CentOS中放開Samba使用到的TCP埠號

firewall-cmd --zone=public --add-port=139/tcp --permanent
firewall-cmd --zone=public --add-port=389/tcp --permanent
firewall-cmd --zone=public --add-port=445/tcp --permanent
firewall-cmd --zone=public --add-port=901/tcp --permanent

firewall-cmd --reload

# 檢視已經放開的埠號
firewall-cmd --list-all

4. 配置Samba服務

配置匿名訪問, 任何人都可以訪問的共享目錄

    4.1 建立共享目錄

mkdir /opt/shares# 因為需要設定匿名使用者可以上傳下載檔案, 所以需要給shares目錄授予nobody許可權
chown -R nobody:nobody /opt/shares

    4.2 修改/etc/samba/smb.conf檔案

cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
vi /etc/samba/smb.conf

修改配置如下:

# See smb.conf.example for a more detailed config file or
# read the smb.conf manpage.
# Run 'testparm' to verify the config is correct after
# you modified it.

[global]
        workgroup = SAMBA
        security = user
        map to guest = Bad User
        log file = /var/log/samba/log.%m


[public]
        comment = Public Stuff
        path = /opt/shares
        public = yes
        read only = No

其中 path就是上邊設定的共享目錄, read only 表示是否有寫許可權

    4.3 修改完配置檔案之後重啟samba服務

systemctl restart smb.service

    4.4 測試smb.conf配置是否正確

# 使用testparm命令
testparm

    4.5 至此就配置完成, 可以從Windows下訪問samba的共享目錄.

 

配置指定使用者可以訪問的共享目錄

設定共享目錄, 只允許指定使用者組的使用者訪問

1. 新增工作組cnki和使用者share

groupadd cnki
# useradd -g 組名 使用者名稱
useradd -g cnki share
# 設定使用者share的密碼
passwd share

#刪除使用者
userdel -r 使用者名稱

   把要訪問的賬戶新增到samba的賬戶中

光新增系統賬戶還不夠, 需要把已經存在的系統賬戶新增到samba中才可以訪問共享目錄

# smbpasswd 引數: -a: 新增 -x: 刪除 -d: 禁用 -e: 啟用
smbpasswd -a share

2. 建立共享目錄

mkdir /opt/shares1

# chown -R 使用者名稱:組名 目錄
chown -R share:cnki /opt/shares1

3. 設定samba服務

修改配置檔案/etc/samba/smb.conf如下

# See smb.conf.example for a more detailed config file or
# read the smb.conf manpage.
# Run 'testparm' to verify the config is correct after
# you modified it.

[global]
        workgroup = SAMBA
        security = user
        map to guest = Bad User
        log file = /var/log/samba/log.%m

[shares]
        comment = CNKI
        path = /opt/shares1
        # 表示使用者組
        valid users = @cnki
        read only = No

4. 重啟smb服務

systemctl restart smb.service
# 檢查smb.conf檔案是否配置正確
testparm

5. 在Windows系統上按下“win+r”鍵,輸入"\\共享資料夾的IP地址",在看到資料夾後,點選進入資料夾,輸入賬戶名和密碼即可