dnf install samba samba-common samba-client 或 yum install samba samba-common samba-client
安裝samba
咱們還必須確保Windows和Linux系統在同一工做組中。所以,轉到Windows PC並啓動命令提示符。輸入命令:linux
> net config workstationios
從輸出中咱們能夠清楚地看到工做站域指向' WORKGROUP '。稍後將在Linux機器上對其進行配置。vim
安裝了Samba以後,就該進行一些配置了。可是在執行此操做以前,咱們須要備份samba配置文件。所以,運行如下命令:windows
$ sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
接下來,咱們將建立一個名爲shared的共享文件夾,並分配必要的權限和全部權,如圖所示。centos
$ sudo mkdir -p /srv/samba/shared
$ sudo chmod -R 0755 /srv/samba/shared
$ sudo chown -R nobody:nobody /srv/samba/shared
如今建立一個新的samba配置文件安全
$ sudo vim /etc/samba/smb.conf
修改如下配置:服務器
[global] #全局配置
workgroup = WORKGROUP #與windows工做組同名
server string = Samba Server %v #samba server 名稱及版本
netbios name = centos-8 #在netbios網絡上的名稱
security = user #驗證用戶登陸的方式
map to guest = bad user
[home] #共享文件夾配置 window顯示 'home'爲文件夾名稱
path = /srv/samba/shared #centos服務器中共享的文件路徑
browsable =yes #yes 能夠瀏覽
writable = yes #能夠寫入
guest ok = yes #能夠匿名登陸
read only = no #只讀 停用
保存並關閉配置文件。要驗證配置是否正確,請運行testparm命令
接下來,容許Samba穿越防火牆,以便外部用戶能夠訪問samba共享。網絡
$ sudo firewall-cmd --add-service=samba --zone=public --permanent $ sudo firewall-cmd --reload
最後,啓動並啓用Samba和nmb服務spa
$ sudo systemctl start smb $ sudo systemctl enable smb
而後確認smb服務是否正在運行:命令行
$ sudo systemctl status smb
$ sudo systemctl start nmb $ sudo systemctl enable nmb
一樣,確認nmb服務是否正在像smb服務同樣運行:
$ sudo systemctl status nmb
每一個人均可以訪問咱們剛剛建立的文件共享,任何用戶均可以建立和刪除文件。若是您要共享關鍵文檔,這也將構成挑戰,由於它們也能夠被覆蓋或刪除。所以,咱們須要建立一個安全的文件共享來應對這一挑戰。
首先,咱們將爲samba用戶建立一個新組,以下所示:
$ sudo groupadd secure_group
而後咱們將一個新用戶添加到新建立的組中
$ sudo useradd -g secure_group linuxuser
接下來,咱們將建立一個新的安全文件夾,而後分配必要的權限和文件全部權,以下所示。
$ sudo mkdir -p /srv/samba/secure_share $ sudo chmod -R 0770 /srv/samba/secure_share $ sudo chcon -t samba_share -p /srv/samba/secure_share $ sudo chown -R root:secure_group /srv/samba/secure_share
接下來,咱們將爲samba用戶分配一個密碼,該密碼將在訪問安全文件共享時使用。這將提示您提供SMP密碼,而後再確認。
$ sudo smbpasswd -a linuxuser
如今讓咱們回到Samba的配置文件
$ sudo vim /etc/samba/smb.conf
附加以下所示的配置行:
[secured] path = /srv/samba/secure_share valid users = @secure_group guest ok = no writable = yes browsable = yes
保存並退出,而後從新啓動Samba服務
$ sudo systemctl restart samba
要從Linux系統訪問共享目錄,只需運行如下命令:
$ smbclient --user=linuxuser -L //192.168.43.13
在提示時提供密碼,而後按Enter
訪問安全共享運行
$ smbclient //192.168.43.13/secured -U linuxuser
隨意建立文件和目錄以與其餘samba用戶共享。
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
一、檢查文件夾及配置文件,是否設置錯誤,文件夾名是否寫錯?
二、 檢查共享文件列表
smbclient -L //192.168.221.129/
使用pdbedit -L 命令查看用戶是否加入samba服務器?
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
若是用windows訪問samba,跳出如下對話框的錯誤:
沒法訪問。您可能沒有權限使用網絡資源。請與這臺服務器的管理員聯繫以查明您是否有訪問權限。
不容許一個用戶使用一個以上用戶名與一個服務器或共享資源的多重鏈接。中斷與此服務器或共享資源的全部鏈接,而後再試一次……或者直接重啓Windows。
怎麼斷開鏈接(即退出Samba服務器)呢?
在Windows的命令行中輸入:
net use * /delete /y
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++linux centos 服務器上文件夾的全部者必須是共享用戶名和用戶組。不能是rootls -al #查看權限及全部者chown -R jf:jifang /home/samba/shared #更改全部者和用戶組