Samba概述
Samba是在Linux和UNIX系統(tǒng)上實現(xiàn)SMB協(xié)議的一個免費軟件,由服務(wù)器及客戶端程序構(gòu)成。SMB(Server Messages Block,信息服務(wù)塊)是一種在局域網(wǎng)上共享文件和打印機的一種通信協(xié)議,它為局域網(wǎng)內(nèi)的不同計算機之間提供文件及打印機等資源的共享服務(wù)。SMB協(xié)議是客戶機/服務(wù)器型協(xié)議,客戶機通過該協(xié)議可以訪問服務(wù)器上的共享文件系統(tǒng)、打印機及其他資源。通過設(shè)置“NetBIOS over TCP/IP”使得Samba不但能與局域網(wǎng)絡(luò)主機分享資源,還能與全世界的電腦分享資源。
一,Samba共享服務(wù)的匿名訪問
1,安裝Samba服務(wù)
[root@localhost ~]# yum install samba -y ##安裝Samba服務(wù)
2,配置Samba配置文件信息
[root@localhost ~]# cd /etc/samba/ ##切換到Samba配置文件目錄
[root@localhost samba]# mv smb.conf smb.conf.bak ##備份
[root@localhost samba]# grep -v "#" smb.conf.bak > smb.conf ##重新創(chuàng)建一個配置文件(除去注釋的)
[root@localhost samba]# vim smb.conf ##修改配置文件
[global] ##全局
workgroup = SAMBA
security = user
passdb backend = tdbsam
printing = cups
printcap name = cups
load printers = yes
cups options = raw
map to guest = Bad User ##添加此項,開啟匿名用戶訪問
##大G到末行添加下面的配置信息
[myshare] ##添加的share文件
path=/opt/abc ##路徑
public=yes ##公共訪問
browseable=yes ##能夠訪問
writable=yes ##寫權(quán)限
create mask=0644 ##設(shè)置權(quán)限
directory mask=0755
3,創(chuàng)建myshare路徑目錄,并給權(quán)限
[root@localhost samba]# mkdir /opt/abc ##創(chuàng)建目錄
[root@localhost samba]# chmod 777 /opt/abc ##給全部權(quán)限
[root@localhost samba]# systemctl stop firewalld.service ##關(guān)閉防火墻
[root@localhost samba]# setenforce 0 ##關(guān)閉增強功能
[root@localhost samba]# systemctl start smb.service ##開啟Samba服務(wù)
4,利用測試機訪問
利用測試機訪問共享
查看共享文件夾
創(chuàng)建一個文件到共享文件夾中
在Linux中查看創(chuàng)建的文件
[root@localhost samba]# cd /opt/abc/ ##查看共享文件目錄,查看到創(chuàng)建的文本
[root@localhost abc]# ls
111.txt
[root@localhost abc]# ls -l ##Linux的匿名訪問用戶是nobody
總用量 0
-rw-r--r--. 1 nobody nobody 0 11月 5 15:51 111.txt
二,Samba共享服務(wù)的身份驗證
1,配置Samba配置文件信息
[root@localhost ~]# cd /etc/samba/ ##切換到Samba配置文件目錄
[root@localhost samba]# vim smb.conf ##修改配置文件
[global]
workgroup = SAMBA
security = user
passdb backend = tdbsam
printing = cups
printcap name = cups
load printers = yes
cups options = raw ##將匿名訪問的一項刪除
##大G到末行添加下面的配置信息
[test]
path=/opt/test ##共享文件目錄路徑
browseable=yes ##能夠訪問,將public項去除
create mask=0644
directory mask=0755
valid users=zhangsan, lisi ##允許訪問的用戶
write list=zhangsan ##允許寫入的用戶
2,創(chuàng)建smb用戶
[root@localhost samba]# useradd zhangsan ##創(chuàng)建兩個用戶
[root@localhost samba]# useradd lisi
[root@localhost samba]# smbpasswd -a zhangsan ##創(chuàng)建smb用戶并設(shè)置密碼
New SMB password: ##設(shè)置密碼
Retype new SMB password: ##確認(rèn)密碼
Added user zhangsan.
[root@localhost samba]# smbpasswd -a lisi
New SMB password:
Retype new SMB password:
Added user lisi.
[root@localhost samba]# pdbedit -L ##列出smb用戶列表
zhangsan:1001:
lisi:1002:
[root@localhost samba]# cd /opt/
[root@localhost opt]# mkdir test ##創(chuàng)建共享目錄
[root@localhost opt]# ls
abc rh test
[root@localhost opt]# chmod 777 test/ ##給最大權(quán)限
[root@localhost opt]# systemctl restart smb.service ##重啟Samba服務(wù)
3,用測試機訪問共享
為了避免錯誤可以先在測試上清除緩存
利用測試機訪問共享
需要身份驗證,輸入用戶名密碼
創(chuàng)建一個文件到test共享文件夾中
在Linux中查看創(chuàng)建的文件
[root@localhost opt]# cd /opt/test/
[root@localhost test]# ls ##創(chuàng)建成功
222.txt
4,因為在配置文件中只允許zhangsan寫入權(quán)限,測試lisi能否寫入
用lisi訪問共享
測試創(chuàng)建文件
三,Samba共享服務(wù)的賬戶名映射(賬戶別名登錄)
1,配置映射文件和Samba配置文件
[root@localhost ~]# cd /etc/samba/
[root@localhost samba]# vim smbusers ##創(chuàng)建賬戶映射配置文件
zhangsan = t01 t02 ##別名t01 t02 密碼還是zhangsan用戶的密碼
[root@localhost samba]# vim smb.conf ##配置Samba配置文件
[global]
workgroup = SAMBA
security = user
passdb backend = tdbsam
printing = cups
printcap name = cups
load printers = yes
cups options = raw
username map = /etc/samba/smbusers ##添加別名的配置文件路徑
[root@localhost samba]# systemctl restart smb.service ##重啟Samba服務(wù)
2,用測試機測試別名訪問使用別名登錄
四,Samba共享服務(wù)的訪問控制列表
1,配置Samba配置文件信息
[root@localhost ~]# cd /etc/samba/ ##切換到Samba配置文件目錄
[root@localhost samba]# vim smb.conf ##修改配置文件
[test]
path=/opt/test
browseable=yes
create mask=0644
directory mask=0755
valid users=zhangsan, lisi
write list=zhangsan
hosts deny=192.168.13. ##添加拒絕192.168.13段訪問test
[root@localhost samba]# systemctl restart smb.service ##重啟Samba服務(wù)
2,用測試機訪問test共享文件夾
五,通過Windows共享文件夾直接掛載到Linux中使用
1,利用Linux訪問Windows共享的文件
[root@localhost ~]# smbclient -L //192.168.100.99/share ##訪問共享
Enter SAMBA\root's password: ##密碼
2,將共享的文件掛載到Linux中,直接訪問文件
[root@localhost ~]# mkdir -p /opt/share01 ##創(chuàng)建掛載點
[root@localhost ~]# mount.cifs //192.168.100.99/share /opt/share01 ##將共享文件夾掛載到掛載點
Password for root@//192.168.100.99/share:
[root@localhost ~]# cd /opt/share01 ##切換到掛載點
[root@localhost share01]# ls
test.txt
[root@localhost share01]# cat test.txt ##查看共享文件夾的文件內(nèi)容
this is a test!!
(Windows具體共享設(shè)置查看之前的博客,謝謝?。。?/p>
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。