非常詳細的 CentOS-8.3.2011-64版本 Samba 服務器的安裝與配置方式


 1. 環境准備

    1、CentOS 8.3版本(64位)

         2、虛擬機:VMware® Workstation 15 Pro 15.5.7 build-17171714

         3、samba軟件:samba-4.12.3-12.el8.3.x86_64

         4、Windows版本:Windows10

 

2. 安裝軟件

2.1 准備工作

Windows 下:

 確保 Windows 和 Linux 系統在同一工作組中。因此,轉到Windows PC並啟動命令提示符。輸入命令:

 net config workstation 

C:\Users\Administrator>net config workstation
計算機名                     \\ZHIYUAN-SUO
計算機全名                    zhiyuan-suo
用戶名                       Administrator

工作站正運行於
        NetBT_Tcpip_{218C6515-99FF-4131-9F4F-8582F6472E24} (005056C00001)
        NetBT_Tcpip_{3A06D971-EF0B-4FE6-BEC0-B8B0B1629F9D} (005056C00008)
        NetBT_Tcpip_{90D9EB6B-F732-438C-9295-09D71CC6A08C} (38D547AAD0E9)

軟件版本                     Windows 10 Pro

工作站域                     WorkGroup
登錄域                       ZHIYUAN-SUO

COM 打開超時 (秒)            0
COM 發送計數 (字節)          32
COM 發送超時 (毫秒)          250
命令成功完成。

從輸出中我們可以清楚地看到工作站域指向' WORKGROUP '。稍后將在Linux機器上對其進行配置。

 

2.2 安裝samba:

root用戶: 

 yum install samba samba-client samba-swat 

或 

 sudo dnf install samba samba-common samba-client 

如果已安裝會顯示:

[root@My-Linux-CentOS-8 suozhiyuan]# sudo dnf install samba samba-common samba-client
上次元數據過期檢查:1:57:08 前,執行於 2021年01月14日 星期四 08時39分07秒。
軟件包 samba-4.12.3-12.el8.3.x86_64 已安裝。
軟件包 samba-common-4.12.3-12.el8.3.noarch 已安裝。
軟件包 samba-client-4.12.3-12.el8.3.x86_64 已安裝。
依賴關系解決。
無需任何處理。
完畢!

如果未安裝會顯示:

[root@localhost init.d]# yum install samba samba-client samba-swat
上次元數據過期檢查:0:25:25 前,執行於 2021年01月13日 星期三 23時56分55秒。
依賴關系解決。
==================================================================================================================
 軟件包                 架構                     版本                倉庫                         大小
==================================================================================================================
安裝:
 samba                 x86_64               4.12.3-12.el8.3        baseos                      840 k
 samba-client           x86_64                4.12.3-12.el8.3       baseos                        692 k
安裝依賴關系:
 samba-common-tools     x86_64                4.12.3-12.el8.3       baseos                        484 k
 samba-libs             x86_64                4.12.3-12.el8.3       baseos                        188 k

事務概要
===================================================================================================================

安裝 4 軟件包

總下載:2.2 M
安裝大小:6.3 M
確定嗎?[y/N]: 

下載軟件包:
(1/4): samba-client-4.12.3-12.el8.3.x86_64.rpm                                                     2.2 MB/s |
(2/4): samba-common-tools-4.12.3-12.el8.3.x86_64.rpm                                               1.3 MB/s |
(3/4): samba-4.12.3-12.el8.3.x86_64.rpm                                                            2.0 MB/s |
(4/4): samba-libs-4.12.3-12.el8.3.x86_64.rpm                                                        69 kB/s |
--------------------------------------------------------------------------------------------------------------------
總計                                                                                                313 kB/s |
警告:/var/cache/dnf/baseos-929b586ef1f72f69/packages/samba-4.12.3-12.el8.3.x86_64.rpm: 頭V3 RSA/SHA256 Signature, 
密鑰 ID 88888888: NOKEY CentOS Linux
8 - BaseOS 1.6 MB/s | 導入 GPG 公鑰 88888888: Userid: "CentOS (CentOS Official Signing Key) <security@centos.org>" 指紋: 8888 70FA 8888 8888 7FB6 8888 05B5 55B3 8483 8888 來自: /etc/pki/rpm-gpg/ABC-DEF-GHI-centosofficial 確定嗎?[y/N]:

安裝完成后會顯示:

導入公鑰成功
運行事務檢查
事務檢查成功。
運行事務測試
事務測試成功。
運行事務
  准備中  :                                                                                       1/1
  安裝    : samba-libs-4.12.3-12.el8.3.x86_64                                                     1/4
  安裝    : samba-common-tools-4.12.3-12.el8.3.x86_64                                             2/4
  安裝    : samba-4.12.3-12.el8.3.x86_64                                                          3/4
  運行腳本: samba-4.12.3-12.el8.3.x86_64                                                           3/4
  安裝    : samba-client-4.12.3-12.el8.3.x86_64                                                   4/4
  運行腳本: samba-client-4.12.3-12.el8.3.x86_64                                                    4/4
  驗證    : samba-4.12.3-12.el8.3.x86_64                                                          1/4
  驗證    : samba-client-4.12.3-12.el8.3.x86_64                                                   2/4
  驗證    : samba-common-tools-4.12.3-12.el8.3.x86_64                                             3/4
  驗證    : samba-libs-4.12.3-12.el8.3.x86_64                                                     4/4
Installed products updated.

已安裝:
  samba-4.12.3-12.el8.3.x86_64             samba-client-4.12.3-12.el8.3.x86_64     
 samba-common-tools-4.12.3-12.el8.3.x86_64 samba-libs-4.12.3-12.el8.3.x86_64 完畢!

 

2.3 檢查是否安裝成功

 rpm -qa | grep samba 

如果顯示以下信息, 為安裝成功

[root@localhost init.d]# rpm -qa | grep samba
samba-4.12.3-12.el8.3.x86_64
samba-common-4.12.3-12.el8.3.noarch
samba-client-4.12.3-12.el8.3.x86_64
samba-client-libs-4.12.3-12.el8.3.x86_64
samba-libs-4.12.3-12.el8.3.x86_64
samba-common-tools-4.12.3-12.el8.3.x86_64
samba-common-libs-4.12.3-12.el8.3.x86_64

 

2.4 samba文件配置

2.4.1 先將smb.conf備份,網上很多人都用rm,后面再建立個新文件,我習慣用cp命令額外拷貝

[root@My-Linux-CentOS-8 /]# cp etc/samba/smb.conf etc/samba/smb2.conf
[root@My-Linux-CentOS-8 /]# ls -laF etc/samba/
總用量 36
drwxr-xr-x.   2 root root    78 1月  14 10:48 ./
drwxr-xr-x. 154 root root  8192 1月  13 10:50 ../
-rw-r--r--.   1 root root    20 8月  18 04:50 lmhosts
-rw-r--r--.   1 root root   706 1月  14 10:48 smb2.conf
-rw-r--r--.   1 root root   706 8月  18 04:50 smb.conf
-rw-r--r--.   1 root root 11327 8月  18 04:50 smb.conf.example

  

2.4.2 創建目錄文件, 並進行權限和安全相關設置, 我將這個目錄創建到了 /home/ 目錄下

 mkdir -p /home/data             # 創建文件夾,-P的作用為:如果文件路徑不存在則創建路徑 

 chmod -R 0755 /home/data          # 改變文件權限為drwxr-xr-x,-R:改變指定目錄及其下的所有子目錄和文件的擁有者 

 chown -R nobody:nobody /home/data    # 修改文件夾權限 

 

2.4.3 對 samba 配置文件 smb.conf 進行配置

 vim /etc/samba/smb.conf         # 打開配置文件 

刪除所有內容寫入以下配置:

[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = MySambaServer
security = user
map to guest = bad user
dns proxy = no

[data]
path = /home/data/
browsable =yes
writable = yes
guest ok = yes
read only = no

保存並關閉配置文件。

 

smb.conf 中增加的配置內容解釋:

[global] workgroup = WORKGROUP # 設定 SambaServer 所要加入的工作組或者域,需要與 Windows 工作組一致
server
string = Samba Server %v # 設定 SambaServer 的注釋,可以是任何字符串,也可以不填。宏%v表示顯示Samba的版本號
netbios name
= centos-8 # 設置 SambaServer 的 NetBIOS 名稱。如果不填則默認會使用該服務器的DNS名稱的第一部分。netbios name和workgroup名字不要設置成一樣了 security = user # 設置用戶訪問 SambaServer 的驗證方式,一共有四種驗證方式 # 1. share:用戶訪問 SambaServer 不需要提供用戶名和口令, 安全性能較低。 # 2. user:SambaServer 共享目錄只能被授權的用戶訪問,由 SambaServer 負責檢查賬號和密碼的正確性。賬號和密碼要在本 SambaServer
                     中建立。
#
3. server:依靠其他Windows NT/2000或Samba Server來驗證用戶的賬號和密碼,是一種代理驗證。此種安全模式下,系統管理員可以把所有的
                      Windows用戶和口令集中到一個NT系統上,使用Windows NT進行Samba認證, 遠程服務器可以自動認證全部用戶和口令,如果認證失敗,Samba將使用
                      用戶級安全模式作為替代的方式。
#
4. domain:域安全級別,使用主域控制器(PDC)來完成認證。 map to guest = bad user # 將匿名用戶映射為nobody用戶,這個是Samba4.0之前版本的 security=share,4.0之后改成了 security 和 map to guest
dns proxy
= no # 設置 SambaServer 是否開啟dns代理服務 [Anonymous]              # 共享文件夾配置 windows 顯示 “Anonymous” 文件名
path
= /srv/samba/shared # centos 服務器中,共享目錄路徑 # path用來指定共享目錄的路徑。可以用%u、%m這樣的宏來代替路徑里的unix用戶和客戶機的Netbios名,用宏表示主要用於[homes]共享域。
                     例如:如果我們不打算用home段做為客戶的共享,而是在/home/share/下為每個Linux用戶以他的用戶名建個目錄,作為他的共享目錄,
                     這樣path就可以寫成:path = /home/share/%u; 。用戶在連接到這共享時具體的路徑會被他的用戶名代替,要注意這個用戶名路徑一定
                     要存在,否則,客戶機在訪問時會找不到網絡路徑。同樣,如果我們不是以用戶來划分目錄,而是以客戶機來划分目錄,為網絡上每台可以訪問
                     samba的機器都各自建個以它的netbios名的路徑,作為不同機器的共享資源,就可以這樣寫:path = /home/share/%
m

browsable
=yes # 允許該目錄被顯示在系統資源中
writable
= yes # 用來指定該共享路徑是否可寫,是否是只讀,如果有read only的配置,二者沖突會以 writable 為准
guest ok
= yes # 意義同“public”,公開共享,若為否則進行身份驗證(只有當security = share 時此項才起作用)
read only
= no # 以只讀方式共享,當與 writable 發生沖突時以 writable 為准

 

2.4.4 檢查配置文件的正確

要驗證配置是否正確,請運行命令: testparm 

配置正確顯示:

[root@My-Linux-CentOS-8 samba]# testparm
Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

敲回車出2次確認

# Global parameters
[global]
        dns proxy = No
        map to guest = Bad User
        netbios name = CENTOS-8
        security = USER
        server string = Samba Server %v
        idmap config * : backend = tdb


[Anonymous]
        guest ok = Yes
        path = /home/suozhiyuan
        read only = No
[root@My-Linux-CentOS-8 samba]#

 

2.5 防火牆的處理

此處建議不關閉防火牆,而允許 Samba 穿越防火牆,以便外部用戶可以訪問 Samba 共享。

firewall-cmd --add-service=samba --zone=public --permanent
firewall-cmd --reload

操作成功提示:

[root@My-Linux-CentOS-8 samba]# firewall-cmd --add-service=samba --zone=public --permanent
success
[root@My-Linux-CentOS-8 samba]# firewall-cmd --reload
success

如果提示防火牆未開啟可通過以下命令開啟

開啟 firewalld 防火牆

systemctl start firewalld.service    # 啟用firewalld服務
 
systemctl enable firewalld.service   # 開機啟用firewalld服務

驗證防火牆開啟狀態

systemctl status firewalld.service  # 查看開啟狀態

 

2.6 啟動並啟用Samba服務

systemctl start smb
systemctl enable smb

確認smb服務是否正在運行

systemctl status smb

   成功啟動打印內容:

[root@My-Linux-CentOS-8 samba]# systemctl start smb        # 啟動 Samba 服務
[root@My-Linux-CentOS-8 samba]# systemctl enable smb        # 啟用 Samba 服務
Created symlink /etc/systemd/system/multi-user.target.wants/smb.service → /usr/lib/systemd/system/smb.service.
[root@My-Linux-CentOS-8 samba]# systemctl status smb        # 查看 Samba 是否運行
 smb.service - Samba SMB Daemon
   Loaded: loaded (/usr/lib/systemd/system/smb.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2021-01-14 18:23:29 CST; 1min 42s ago
     Docs: man:smbd(8)
           man:samba(7)
           man:smb.conf(5)
 Main PID: 35790 (smbd)
   Status: "smbd: ready to serve connections..."
    Tasks: 4 (limit: 11067)
   Memory: 28.0M
   CGroup: /system.slice/smb.service
           ├─35790 /usr/sbin/smbd --foreground --no-process-group
           ├─35792 /usr/sbin/smbd --foreground --no-process-group
           ├─35793 /usr/sbin/smbd --foreground --no-process-group
           └─35794 /usr/sbin/smbd --foreground --no-process-group

1月 14 18:23:27 My-Linux-CentOS-8.3.2011-001 systemd[1]: Starting Samba SMB Daemon...
1月 14 18:23:29 My-Linux-CentOS-8.3.2011-001 smbd[35790]: [2021/01/14 18:23:29.429616,  0] ../../lib/util/become_daemon.c:136(daemon_ready)
1月 14 18:23:29 My-Linux-CentOS-8.3.2011-001 systemd[1]: Started Samba SMB Daemon.
1月 14 18:23:29 My-Linux-CentOS-8.3.2011-001 smbd[35790]:   daemon_ready: daemon 'smbd' finished starting up and ready to serve connections

 

2.7 啟動並啟用nmb服務

sudo systemctl start nmb
sudo systemctl enable nmb

確認nmb服務是否正在運行

systemctl status nmb

 成功啟用打印內容

[root@My-Linux-CentOS-8 samba]# sudo systemctl start nmb
[root@My-Linux-CentOS-8 samba]# sudo systemctl enable nmb
Created symlink /etc/systemd/system/multi-user.target.wants/nmb.service → /usr/lib/systemd/system/nmb.service.
[root@My-Linux-CentOS-8 samba]# systemctl status nmb
● nmb.service - Samba NMB Daemon
   Loaded: loaded (/usr/lib/systemd/system/nmb.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2021-01-14 18:36:00 CST; 13s ago
     Docs: man:nmbd(8)
           man:samba(7)
           man:smb.conf(5)
 Main PID: 36019 (nmbd)
   Status: "nmbd: ready to serve connections..."
    Tasks: 1 (limit: 11067)
   Memory: 3.5M
   CGroup: /system.slice/nmb.service
           └─36019 /usr/sbin/nmbd --foreground --no-process-group

1月 14 18:36:00 My-Linux-CentOS-8.3.2011-001 systemd[1]: Starting Samba NMB Daemon...
1月 14 18:36:00 My-Linux-CentOS-8.3.2011-001 systemd[1]: Started Samba NMB Daemon.
1月 14 18:36:00 My-Linux-CentOS-8.3.2011-001 nmbd[36019]: [2021/01/14 18:36:00.373202,  0] ../../lib/util/become_daemon.c:136(daemon_ready)
1月 14 18:36:00 My-Linux-CentOS-8.3.2011-001 nmbd[36019]:   daemon_ready: daemon 'nmbd' finished starting up and ready to serve connections

 

3. 從 Windows 機器訪問 Samba 共享

在Windows PC上,按Windows鍵+ R啟動“運行”對話框,然后鍵入

  \\samba主機名服務器  或  \\服務器的IP地址 

 

  紅框處就是samba主機名服務器

 

 

 

 

 

 

 

 ====================================================================================================================================


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM