[原創] Debian9上配置Samba


Samba概述


Samba是一套使用SMB(Server Message Block)協議的應用程序,通過支持這個協議,Samba允許Linux服務器與Windows系統之間進行通信,使跨平台的互訪成為可能。Samba采用C/S模式,其工作機制是讓NetBIOS( Windows 網上鄰居的通信協議)和SMB兩個協議運行於TCP/IP通信協議之上,並且用NetBEUI協議讓Windows在“網上鄰居”中能瀏覽Linux服務器。

Samba服務器包括兩個后台應用程序:Smbd 和 Nmbd。Smbd 是Samba的核心,主要負責建立 Linux Samba服務器與Samba客戶機之間的對話,驗證用戶身份並提供對文件和打印系統的訪問;Nmbd主要負責對外發布Linux Samba服務器可以提供的NetBIOS名稱和瀏覽服務,使Windows用戶可以在“網上鄰居”中瀏覽Linux Samba服務器中共享的資源。另外Samba還包括一些管理工具,如 smb-client,smbmount,testparm,Smbpasswd 等程序。

Samba服務器可實現如下功能:WINS和DNS服務;網絡瀏覽服務;Linux和Windows域之間的認證和授權;UNICODE字符集和域名映射;滿足CIFS協議的UNIX共享等。

 

 

准備工作


1. 更新系統

沒啥,就他喵想用個最新的。

apt update && apt upgrade

 

2. 安裝samba

官方網站:https://www.samba.org/

命令流程:

apt install -y samba

 

 

創建用戶


1. 創建系統用戶組

groupadd samba

 

2. 創建系統用戶

創建一個禁止登陸系統的用戶,並讓它加入samba組中。

useradd -g samba -M -s /sbin/nologin admin

 

3. 設置系統用戶密碼

passwd admin

 

4. 設置Samba用戶登陸密碼

此密碼需要單獨設置,用來登陸SMB。可以和用戶系統密碼一樣,也可以不一樣。

smbpasswd -a admin

 

 

創建共享目錄


1. 創建用戶專屬目錄

mkdir /home/admin

 

2. 修改目錄權限

chmod 777 /home/admin/

 

 

Samba配置文件


 

vim /etc/samba/smb.conf

 

;======================= Global Settings =======================
[global] workgroup = WORKGROUP dns proxy = no log file = /var/log/samba/log.%m max log size = 1000 syslog = 0 panic action = /usr/share/samba/panic-action %d server role = standalone server passdb backend = tdbsam obey pam restrictions = yes unix password sync = yes passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* . pam password change = yes map to guest = bad user usershare allow guests = yes #======================= Share Definitions =======================
[Blu-ray] comment = 藍光原盤 path = /home/admin public = no valid users = admin write list = admin create mask = 0777 directory mask = 0777

 

 

重啟Samba服務器


 

/etc/init.d/samba restart

 

 

、常用命令


 

;======================= Global Settings =======================
[global] workgroup = WORKGROUP     ;工作組名稱
server string = Samba Server Version %v ;主機的簡易說明
dns proxy = no log file = /var/log/samba/log.%m    ;產生日志文件的命名,默認以訪問者IP地址命名
max log size = 1000                 ;日志文件最大容量,默認50,單位為KB,0表示不限制
syslog = 0 panic action = /usr/share/samba/panic-action %d server role = standalone server passdb backend = tdbsam obey pam restrictions = yes unix password sync = yes passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* . pam password change = yes map to guest = bad user usershare allow guests = yes ;======================= Share Definitions =======================
[guest] comment = Guest Directories ;共享描述,當鼠標懸浮在目錄上時會顯示
path = /home/guest          ;共享目錄路徑
browseable = yes/no         ;設置共享是否可瀏覽,如果no就表示隱藏,需要通過IP+共享名稱進行訪問
writable = yes/no           ;設置共享是否具有可寫權限
read only = yes/no          ;設置共享是否具有只讀權限
valid users = username      ;設置允許訪問共享的用戶,例如valid users = user1,user2,@group1,@group2(多用戶或組使用逗號隔開,@group表示group用戶組)
write list = username       ;設置在共享具有寫入權限的用戶,例如例如write list = user1,user2,@group1,@group2(多用戶或組使用逗號隔開,@group表示group用戶組)
invalid users = username    ;設置不允許訪問共享的用戶
public = yes/no             ;設置共享是否允許匿名訪問
guest ok = yes/no           ;功能同public一樣
create mask = 0700          ;創建的文件權限為700
directory mask = 0700       ;創建的目錄權限為700

 

 


免責聲明!

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



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