Top
- 安裝
- 端口與服務(wù)管理
- 其他常用命令
-
配置
- 全局配置
- 共享庫配置
- 用戶名密碼認(rèn)證庫配置
- Samba 登錄用戶配置
-
防火墻配置
- 設(shè)定安全的上下文關(guān)系
- 本地系統(tǒng)設(shè)置訪問讀寫權(quán)限
- Pdbedit 用法
- Smbpasswd 用法
- 其他
-
Windows 下相關(guān)轉(zhuǎn)發(fā)
- 查看網(wǎng)絡(luò)連接 -- 可刪除緩存,用于切換登錄用戶
- Windows 設(shè)置 Smb 端口轉(zhuǎn)發(fā)
-
訪問 Samba 服務(wù)器
- 服務(wù)器 --- Linux
- 服務(wù)器 --- Windows
- Apple --- Mac
- Linux 掛載 samba 地址
- 參考網(wǎng)址
- 自動(dòng)化配置腳本
安裝
# 安裝samba服務(wù)器
yum install -y samba
# samba 服務(wù)器地址
smb://user@192.168.0.10
# 查看安裝包
rpm -qa |grep samba
端口與服務(wù)管理
# 啟動(dòng)samba進(jìn)程
systemctl start smb
# 查看運(yùn)行狀態(tài)
systemctl status smb
# 查看端口
netstat -antulp |grep smb
# 設(shè)置開機(jī)自啟動(dòng)
systemctl enable smb
chkconfig smb on
# samba的主要配置文件
/etc/samba/smb.conf
# Samba服務(wù)使用的端口和協(xié)議:
1 端口137 (UDP) - NetBIOS名稱服務(wù); 美國(guó)全國(guó)廣播公司
2 端口138 (UDP) - NetBIOS數(shù)據(jù)報(bào)服務(wù)
3 端口139 (TCP) - 共享文件和打印;它基于smbd(SMB) servermessageblock協(xié)議,主要用于局域網(wǎng),文件共享協(xié)議) 。
4 端口389 (TCP) - LDAP (活動(dòng)目錄模式)
5 端口445 (TCP) - NetBIOS服務(wù)在windos 2000或更高版本上使用此端口。 (CIFS、公共互聯(lián)網(wǎng)文件系統(tǒng),它將SMB協(xié)議擴(kuò)展到internet,然后實(shí)現(xiàn)internet文件共享。
6 端口901 (TCP) SWAT,用于web管理Samba
windows系統(tǒng)之間的文件共享協(xié)議: netbiosextenduserinterface (netbeui )協(xié)議和IPX/SPX協(xié)議
NetBEUI協(xié)議是一種短而精悍、通信效率高的廣播型協(xié)議,安裝后無需設(shè)置,特別適用于“網(wǎng)絡(luò)鄰居”中的數(shù)據(jù)傳輸。
其他常用命令
# 查看 samba 服務(wù)狀態(tài)及其客戶端訪問情況
smbstatus
/usr/bin/smbclient # 客戶端功能
配置
全局配置
[global]
workgroup = SAMBA
security = user
passdb backend = tdbsam
config file = /etc/samba/%U.smb.conf # 使得不同的登錄用戶只加載其自身的配置,%U 代表用戶名
printing = cups
printcap name = cups
load printers = yes
cups options = raw
interfaces = ens9f3 192.168.0.200/24 # 訪問接口 和 IP
hosts allow = 192.168.0. # 客戶端 白名單
log file = /var/log/samba/log.%m # 日志文件配置
max log size = 50000
smb ports = 1234 # 自定義服務(wù)端口
#
#[homes]
# comment = Home Directories
# valid users = %S, %D%w%S
# browseable = No
# read only = No
# inherit acls = Yes
[printers]
comment = All Printers
path = /var/tmp
printable = Yes
create mask = 0600
browseable = No
[print$]
comment = Printer Drivers
path = /var/lib/samba/drivers
write list = @printadmin root
force group = @printadmin
create mask = 0664
directory mask = 0775
共享庫配置
[d200_temp]
comment = please do not modify it all will
path= /data/shared/d200_d
writable = yes
public = yes
用戶名密碼認(rèn)證庫配置
[d200_temp]
comment = please do not modify it all will
path= /data/shared/d200_d
public = no
valid users = sit,@ydd
printable = no
write list = sit,@ydd
Samba 登錄用戶配置
sit_home_Dir="/raid/shared/d200_d/temp"
sit_pwd="h3c@123"
userdel -r sit &> /dev/null
groupdel ydd &> /dev/null
groupadd ydd
useradd sit -d /raid/shared/d200_d/temp -s /sbin/nologin -p ${sit_pwd}
pdbedit -x sit
echo "sit pwd : ${sit_pwd}"
pdbedit -a -u sit
usermod -a -G ydd sit
# 添加用戶
smbpasswd -a <用戶名>
# 或
pdbedit -a -u <用戶名>
# 重置密碼
smbpasswd <用戶名>
# 刪除用戶
pdbedit -x <用戶名>
防火墻配置
# 開啟防火墻
systemctl start firewalld.service
# 放行 samba
firewall-cmd --add-service samba --permanent
firewall-cmd --reload # 重新加載防火墻配置
firewall-cmd --list-all | grep samba -q # 查詢防火墻信息
# iptables 規(guī)則配置
iptables -I RH-Firewall-1-INPUT 5 -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
iptables -I RH-Firewall-1-INPUT 5 -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
iptables -I RH-Firewall-1-INPUT 5 -p udp -m udp --dport 137 -j ACCEPT
iptables -I RH-Firewall-1-INPUT 5 -p udp -m udp --dport 138-j ACCEPT
iptables-save
service iptables restart
設(shè)定安全的上下文關(guān)系
# 將 samba 目錄共享給其他用戶,
chcon -t samba_share_t <共享目錄> # 修改對(duì)象的安全上下文
# 第二種方法,
semanage fcontext -a -t samba_share_t <共享目錄>
restorecon -FRv /home/kevin # 刷新上下文,使其立即生效
#如果samba服務(wù)器共享目錄給多個(gè)域,則需要:
setsebool -P allow_smbd_anon_write=1
//If you are setting up this machine as a Samba server and wish to share the home directories
samba服務(wù)器要共享家目錄時(shí):
setsebool -P samba_enable_home_dirs 1
//If you want to use a remote Samba server for the home directories on this machine
如果你需在本機(jī)上使用遠(yuǎn)程samba服務(wù)器的家目錄
setsebool -P use_samba_home_dirs 1
//You can disable SELinux protection for the samba daemon by executing
setsebool -P samba_domain_controller 1
# 可讀可寫
setsebool -P samba_export_all_rw 1
# 只讀
setsebool -P samba_export_all_ro 1
# 關(guān)閉selinux關(guān)于samba的進(jìn)程守護(hù)的保護(hù)
setsebool -P smbd_disable_trans 1 # 0是關(guān)閉 1是開啟
# 查詢SElinux策略內(nèi)各項(xiàng) samba 規(guī)則的布爾值
[root@localhost ~]# getsebool -a | grep smb
smbd_anon_write --> off
[root@localhost ~]# getsebool -a | grep samba
samba_create_home_dirs --> off
samba_domain_controller --> off
samba_enable_home_dirs --> off
samba_export_all_ro --> off
samba_export_all_rw --> off
samba_load_libgfapi --> off
samba_portmapper --> off
samba_run_unconfined --> off
samba_share_fusefs --> off
samba_share_nfs --> off
sanlock_use_samba --> off
tmpreaper_use_samba --> off
use_samba_home_dirs --> off
virt_use_samba --> off
本地系統(tǒng)設(shè)置訪問讀寫權(quán)限
# 設(shè)置文件訪問權(quán)限
setfacl -R -m g:sit:rwx <目錄> # 設(shè)置用戶組權(quán)限
setfacl -R -m u:sit:rwx <目錄> # 設(shè)置用戶權(quán)限
# 獲取文件權(quán)限信息
getfacl <文件>
Pdbedit 用法
# 命令用于管理Samba服務(wù)的帳戶信息數(shù)據(jù)庫
pdbedit -a username # 新建Samba賬戶
pdbedit -x username # 刪除Samba賬戶
pdbedit -r -u user # 修改samba用戶信息
pdbedit -L # 列出Samba用戶列表,讀取passdb.tdb數(shù)據(jù)庫文件。
pdbedit -Lv # 列出Samba用戶列表詳細(xì)信息。
pdbedit -c “[D]” -u username # 暫停該Samba用戶賬號(hào)。
pdbedit -c “[]” -u username # 恢復(fù)該Samba用戶賬號(hào)。
Smbpasswd 用法
smbpasswd -a user # 添加一個(gè)samba用戶
smbpasswd -d user # 禁用一個(gè)samba用戶
smbpasswd -e user # 恢復(fù)一個(gè)samba用戶
smbpasswd -x user # 刪除一個(gè)samba用戶
其他
# 重新加載配置
smbcontrol all reload-config
# 允許用戶執(zhí)行共享上的所有文件,
acl allow execute always = yes
# 添加網(wǎng)絡(luò)映射到指定驅(qū)動(dòng)器號(hào)
net use H: \\server\users\demo\ /persistent:yes
# 用戶管理
https://wiki.samba.org/index.php/User_and_Group_management
Windows 下相關(guān)轉(zhuǎn)發(fā)
查看網(wǎng)絡(luò)連接 -- 可刪除緩存,用于切換登錄用戶
# 顯示當(dāng)前網(wǎng)絡(luò)連接列表
net use
# 刪除一個(gè)網(wǎng)絡(luò)連接配置
net use 遠(yuǎn)程連接名稱 /del
# 一次性全部刪除
net use * /del
# 若以上方法不管用,可進(jìn)入控制臺(tái)刪除網(wǎng)絡(luò)憑證
Windows 設(shè)置 Smb 端口轉(zhuǎn)發(fā)
# 使用管理員權(quán)限
# 查看端口轉(zhuǎn)發(fā)
netsh interface portproxy show all
# 配置端口轉(zhuǎn)發(fā)
netsh interface portproxy add v4tov4 listenport=445 listenaddress=127.0.0.1 connectport=samba服務(wù)器地址 connectaddress=samba端口
# 清除所有端口轉(zhuǎn)發(fā)規(guī)則
netsh interface portproxy reset
訪問 Samba 服務(wù)器
服務(wù)器 --- Linux
1、安裝samba client
sudo apt-get install smbclient
yum install samba-client
2、獲取指定 Samba 服務(wù)器的共享列表
smbclient -L 192.168.1.1 -U <username>
smbclient -L 192.168.1.1 -U <username> --workgroup=SAMBA
3、連接共享目錄 -- 交互式
smbclient 192.168.1.1/<共享目錄名> -U username
4、連接共享目錄 --- 一次性連接共享目錄進(jìn)行指定操作后退出
smbclient -U sit -c 'ls' //172.16.89.129/<共享目錄名>
服務(wù)器 --- Windows
# 1、快捷鍵 `Win + E` 打開文件資源管理器
# 2、在地址欄中輸入 `\\<Samba 服務(wù)器地址>`
若需要驗(yàn)證則再輸入用戶名和密碼登錄
Apple --- Mac
# 1、打開訪達(dá)
# 2、快捷鍵 `Cmd + K` 連接文件服務(wù)器
輸入samba 服務(wù)器 IP ,
若需要驗(yàn)證則再輸入用戶名和密碼登錄
mac如何訪問windows共享文件夾--- samba 服務(wù)器
Linux 掛載 samba 地址
# 1、安裝
apt install cifs-utils
# or
yum install cifs-utils
# 2、在本地創(chuàng)建一個(gè)掛載點(diǎn)目錄
sudo mkdir /home/user/shareFiles
# 3、掛載
sudo mount -t cifs -o username=xxx,password=xxx //<目標(biāo)IP地址或主機(jī)名>/<共享目錄名> <掛載點(diǎn)目錄>
mount -t cifs //192.168.1.65/linuxsamba /database -o username=smbuser,password=123456,rw,file_mode=0777,dir_mode=0777,setuid=509,setgid=101
# 或者
mount -t cifs //192.168.1.65/linuxsamba /database -o username=smbuser,password=123456,rw
參考網(wǎng)址
Linux下安裝部署Samba共享盤的操作手冊(cè)
騰訊云---Linux/centos上如何配置管理samba服務(wù)器
Linux/centos上如何配置管理samba服務(wù)器?
Samba服務(wù)器的配置與管理
samba客戶端的使用與服務(wù)端的搭建
Linux系統(tǒng)工程師3.5網(wǎng)絡(luò)文件系統(tǒng)
smb協(xié)議詳解和samba服務(wù)的配置
使用POSIX ACL設(shè)置共享
將Samba設(shè)置為獨(dú)立服務(wù)器
smb.conf--- man手冊(cè)
Samba命令幫助文檔文章來源:http://www.zghlxwxcb.cn/news/detail-747079.html
幫助文檔-----002文章來源地址http://www.zghlxwxcb.cn/news/detail-747079.html
自動(dòng)化配置腳本
#
到了這里,關(guān)于搭建Samba服務(wù)器攻略的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!