centos samba服務搭建


 

環境說明

本文件夾共文的場景是虛擬機運行CentOS,本機是Windows,現欲把CentOS上的一個享出來,Win的機器可以讀寫。
Samba與window連接需要使用NetBIOS協議,請確認你的Win7系統已經安裝了NetBIOS協議。

組成Samba運行的有兩個服務:

SMB服務
  • Samba 的核心啟動服務,主要負責建立 Linux Samba服務器與Samba客戶機之間的對話;
  • 提供對文件和用戶身份驗證並打印系統的訪問;
  • 只有SMB服務啟動,才能實現文件的共享;
  • 監聽139 TCP端口;
NMB服務
  • 負責解析用的,類似與DNS實現的功能;
  • NMB可以把Linux系統共享的工作組名稱與其IP對應起來;
  • 如果NMB服務沒有啟動,就只能通過IP來訪問共享文件;
  • 監聽137和138 UDP端口。

 安裝samba

配置這些東西你需要先擁有root權限

首先關閉防火牆

service iptables stop

另外關閉SELINUX的強制模式  

setenforce 0

查看已經按照samba rpm包 

rpm -qa | grep samba

通常為了保持環境純凈,都是先現在原來的安裝包

卸載samba

rpm -e --nodeps xxx  

 

yum安裝samba

yum install samba samba-client samba-swat

  

配置samba

Samba服務器安裝完畢,會生成配置文件目錄/etc/samba和其它一些samba可執行命令工具,
/etc/samba/smb.conf是samba的核心配置文件,
/etc/init.d/smb是samba的啟動/關閉文件
 
下面我們來配置Samba服務,有一些注意事項我會強調,請大家注意:
先定位到/etc/samba目錄下,
把smb.conf備份一下: shell cp smb.conf smb.conf.bak
現在我要把/share目錄共享給我的win7機器,打開samba配置文件,
shell vi /etc/samba/smb.conf
用shift+g定位到最后一行,可以看到:
修改如下:
[myshare]
    comment = this is my share
    path = /home/liuguanghai/
    valid user = liuguanghai
    read only = no
    writeable = yes
    browseable = yes
    available = yes
    printable = no
    write list = +staff

好了,保存退出:wq!  

創建共享文件夾:

創建/share目錄mkdir /share,並且設置chown -R [用戶組]:[用戶]
好了,重啟samba服務吧!
本來應該是service smb restart和service nmb restart, 但是我曾經試過用這樣的方式不行,而使用/etc/init.d/smb restart和/etc/init.d/nmb restart就可以。 以防萬一,使用后者的方法。
在win7的機器運行//192.168.0.100就能看到samba共享的public文件夾(也就是對應的/share文件夾)——可讀可寫哦。
如果出現沒有權限的問題,請再次確認以下幾個重點:
1.關閉防火牆: service iptables stop
2.設置SELinux的寬松模式:setenforce 0
3.設置你需要共享的文件夾的屬性為777,chmod 777 /share
4.重啟了smb和nmb服務。

 設置samba用戶名密碼:

在本地檢測是否分享成功:

輸入命令:smbclient -L \\127.0.0.1 -U xxx

1、出現類似如下結果證明成功:

 

 

 2、如何出現如下字樣:

samba服務器出現“session setup failed: NT_STATUS_LOGON_FAILURE”的解決辦法:
$ smbclient -L \\127.0.0.1 -U test

Enter berbiey's password:

session setup failed: NT_STATUS_LOGON_FAILURE
 
test是centos 中的一個普通用戶,啟動smb服務后,在本機上測試,就出現了上面的錯誤。
這是由於test 僅僅是系統用戶,而沒有將它加入到samba賬戶中來,
換言之, 用來登錄samba服務器的賬戶,首先是一個 系統賬戶, 同時還應是samba賬戶。
找到了問題的症結 所在,解 決就簡單了。 方法如下:
smbpasswd -a test #在samba服務器中添加一個用戶名是test用戶

輸入密碼:
如果出現win10登陸samb用戶名密碼都正確,還提示“用戶名密碼錯誤
 
查看如下:
1.win10系統運行secpol.msc 打開本地安全策略
2.安全策略->本地策略->安全選項
3.右側找到“網絡安全:LAN管理器身份驗證級別”打開,選擇“僅發送NTLMv2響應,拒絕LM和NTLM”點確定。
4.本路徑下再找到“網絡訪問:本地賬戶的共享和安全模型”打開,選擇“僅來賓”

重啟服務  

以上配置完成后要重啟samba服務才能生效,重啟命令如下:

systemctl restart smb.service

systemctl restart nmb.service

systemctl enable smb.service

systemctl enable nmb.service

systemctl status smb

#臨時關閉
systemctl stop firewalld

#禁止開機啟動
systemctl disable firewalld
    Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
    Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

  


免責聲明!

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



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