1. 程式人生 > >Linux---cifs檔案系統之samba的安裝配置及共享目錄

Linux---cifs檔案系統之samba的安裝配置及共享目錄

CIFS是一種通用網路檔案系統,主要用於網路裝置之間的檔案共享。CIFS可以在linux系統和windows系統之間共享檔案,因此這種檔案系統主要用於客戶端是windows系統。提供CIFS的服務是SAMBA,下文將介紹SAMBA服務的一些配置以及用法。

一.samba的安裝和配置

1.配置yum源,安裝軟體

在服務端:

[[email protected]server ~]# yum install samba samba-client samba-common -y ##安裝smb服務
(samba伺服器的應用程式 samba-client客戶端應用程式 samba-common
是samba的支援檔案) [[email protected]server ~]# systemctl start smb [[email protected]server ~]# systemctl enable smb.service ln -s '/usr/lib/systemd/system/smb.service' '/etc/systemd/system/multi-user.target.wants/smb.service' [[email protected]server ~]# systemctl stop firewalld [[email protected]
server ~]# systemctl disable firewalld rm '/etc/systemd/system/basic.target.wants/firewalld.service' rm '/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service' [[email protected]server ~]# netstat -antlupe | grep smb ##檢視smb的服務埠445 139

這裡寫圖片描述

2.新增smb使用者

在服務端:

[[email protected] ~]# smbpasswd -a student   ##新增smb使用者student
New SMB password: Retype new SMB password: Added user student. ##建立成功
[[email protected] ~]# smbpasswd -a westos  ##建立smb使用者westos
New SMB password:
Retype new SMB password:
Failed to add entry for user westos.  說明這個使用者本身不存在

注意:建立smb使用者時,這個使用者必須為主機中真實的存在

[root@server ~]# useradd westos
[root@server ~]# smbpasswd -a westos
[root@server ~]# pdbedit -L   ##檢視smb使用者資訊
student:1000:Student User
westos:1001:
[root@server ~]# pdbedit -x student  ##刪除smb使用者

這裡寫圖片描述

3.共享家目錄

在客戶端:

[root@client ~]# yum install samba-client -y
[root@client ~]# smbclient -L //172.25.254.228   ##登陸服務端檢視資訊(此時裡面沒有任何新增資訊)

這裡寫圖片描述

[root@client ~]# smbclient -L //172.25.254.228 -U student  ##登陸smb的student列出資訊

這裡寫圖片描述

[root@client ~]# smbclient  //172.25.254.228/student -U student
Enter student's password: 
session setup failedNT_STATUS_LOGON_FAILURE 註釋:這個報錯是登陸的密碼或使用者名稱不對
[root@client ~]# smbclient  //172.25.254.228/student -U student    ##登陸student使用者可以檢視共享目錄student下的檔案
Enter student's password: 
Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]
smb: \> ls
NT_STATUS_ACCESS_DENIED listing \*    註釋:這個報錯是在SElinux開啟的情況下,無法看到裡面的檔案,需要在服務端開啟服務介面

在服務端:

[root@server ~]# getsebool -a | grep samba   ##檢視smb服務介面
[root@server ~]# setsebool -P samba_enable_home_dirs on  ##開啟smb家目錄介面

這裡寫圖片描述
在客戶端:

[root@client ~]# smbclient  //172.25.254.228/student -U student   ##檢視student使用者共享的家目錄

這裡寫圖片描述

4.永久掛載

在客戶端:

[root@client ~]# mount //172.25.254.228/student /mnt/ -o username=student,password=123  ##臨時掛載
[root@client ~]# df

這裡寫圖片描述

[root@client ~]# vim /etc/rc.d/rc.local  ##編寫指令碼永久掛載

這裡寫圖片描述

[root@client ~]# chmod +x /etc/rc.d/rc.local   ##給指令碼一個可執行許可權
[root@client ~]# reboot   ##重啟
[root@client ~]# cd /mnt/
[root@client mnt]# touch file{1..5}
[root@client mnt]# ls
file1  file2  file3  file4  file5 

在服務端:

[root@server ~]# cd /home/student/
[root@server student]# ls   ##可以檢視到檔案
file1  file2  file3  file4  file5 

這裡寫圖片描述

5.改變工作組

[root@server ~]# smbclient -L //172.25.254.228  ##檢視工作組名稱(Domain)

[root@server ~]# rpm -qc samba-common  ##查詢samba的主配置檔案
/etc/logrotate.d/samba
/etc/samba/lmhosts
/etc/samba/smb.conf
/etc/sysconfig/samba
[root@server ~]# vim /etc/samba/smb.conf  ##將工作組名稱改為WESTOS

這裡寫圖片描述

[root@server ~]# systemctl restart smb.service   ##重啟服務
[root@server ~]# smbclient -L //172.25.254.228  ##檢視工作組的更改

這裡寫圖片描述

6.新增smb黑白名單

在服務端:

[root@server ~]# vim /etc/samba/smb.conf
98         hosts allow = 172.25.254.128    ##新增白名單
          (hosts deny = 172.25.254.128##新增黑名單
[root@server ~]# systemctl restart smb.service  ##重啟服務

這裡寫圖片描述
在客戶端:測試

[root@client ~]# smbclient -L //172.25.254.228  ##不可以登陸,沒有訪問許可權
Enter root's password: 
protocol negotiation failed: NT_STATUS_INVALID_NETWORK_RESPONSE

二、設定共享目錄

在服務端:

[root@server ~]# mkdir /westos
[root@server ~]# semanage fcontext -a -t samba_share_t '/westos(/.*)?'  ##修改自建目錄的安全上下文
[root@server ~]# semanage fcontext -l |grep /westos  ##檢視/westos的安全上下文
[root@server ~]# restorecon -FvvR /westos/  ##重新整理目錄裡內容的安全上下文

這裡寫圖片描述

[root@server ~]# vim /etc/samba/smb.conf  
##在配置中寫入共享目錄的名稱
[root@server ~]# systemctl restart smb.service


在客戶端:測試

[root@client ~]# smbclient //172.25.254.228/DIR -U student  ##檢視共享目錄資訊

這裡寫圖片描述

在服務端:

[root@server ~]# touch /mnt/file{1..5}
[root@server ~]# ls /mnt
file1  file2  file3  file4  file5
[root@server ~]# vim /etc/samba/smb.conf  ##寫入共享目錄名稱
[root@server ~]# systemctl restart smb.service

這裡寫圖片描述
在客戶端:測試

[root@client ~]# smbclient //172.25.254.228/mnt -U student

這裡寫圖片描述
用ls看不到在/mnt下建立的檔案,是受SElinux的影響。
在服務端:

方法一:
[root@server ~]# setenforce 0 
方法二:
[root@server ~]# setsebool -P samba_export_all_ro on  ##開啟samba中的寫讀共享

在客戶端:測試
這裡寫圖片描述

1.顯示目錄

服務端:

[root@server ~]# vim /etc/samba/smb.conf
324       browseable = yes ##查詢時顯示這個DIR目錄

這裡寫圖片描述
客戶端:測試
這裡寫圖片描述

2.使用者可寫

服務端:

[root@server ~]# vim /etc/samba/smb.conf
325         writable = yes    ##使用者可寫
[root@server ~]# chmod 777 /westos/

這裡寫圖片描述
在客戶端:測試
這裡寫圖片描述

3.指定使用者可寫

在服務端:

[root@server ~]# vim /etc/samba/smb.conf
325         #writable = yes
326         write list = student  ##指定使用者可寫
[root@server ~]# systemctl restart smb.service
[root@server ~]# chmod 777 /westos/

這裡寫圖片描述
在客戶端:測試
這裡寫圖片描述
這裡寫圖片描述
用指定使用者student登入可以建立檔案,但是用westos使用者登入沒有許可權建立檔案。

4.可寫使用者組

在服務端:

[root@server ~]# vim /etc/samba/smb.conf
326         write list = @student  ##可寫使用者組
[root@server ~]# systemctl restart smb.service
[root@server ~]# id westos
[root@server ~]# usermod -G student westos

這裡寫圖片描述
這裡寫圖片描述
在客戶端:測試
這裡寫圖片描述
上圖所示:用westos登入,即使是不被允許可寫的使用者,但是westos的組是student,就可以登入服務端在/mnt下建立檔案。

5.給使用者root身份

在服務端:

[root@server ~]# chmod 755 /westos
[root@server ~]# vim /etc/samba/smb.conf
327   admin users = westos  ##給westos是root的身份

這裡寫圖片描述
在客戶端:測試

[root@client ~]# umount /mnt
[root@client ~]# mount //172.25.254.228/DIR /mnt -o username=westos,password=123
[root@client ~]# touch /mnt/file4
[root@client ~]# ll /mnt

這裡寫圖片描述
上圖所示:登入westos使用者建立一個檔案,這個檔案的所屬組是root組

三.多使用者掛載

在客戶端:

[root@client ~]# yum install cifs-utils -y  ##在客戶端上管理的軟體是cifs-utils
[root@client ~]# vim /root/smbpass   ##寫入smb服務上真實存在的使用者和密碼
username=student
password=123
[root@client ~]# mount -o credentials=/root/smbpass,sec=ntlmssp,multiuser //172.25.254.228/DIR /mnt  ##掛載多使用者(credentials=/root/smbpass指定掛載時用到的使用者身份,sec=ntlmssp認證方式為smb認證,multiuser支援多使用者認證)
[root@client ~]# useradd test  ##新增一個使用者
[root@client ~]# su - test
[test@client ~]$ cd /mnt
[test@client mnt]$ ls   ##因為沒有做smb的認證所以無法訪問smb共享
ls: reading directory .: Permission denied
[test@client mnt]$ cifscreds add -u westos 172.25.254.228   ##smb使用者的認證
Password: 
[test@client mnt]$ touch /mnt/file5
[test@client mnt]$ ll

這裡寫圖片描述

四.匿名使用者登陸

在服務端:

[root@server ~]# vim /etc/samba/smb.conf
125         map to guest = bad user   ##使匿名使用者登陸或者掛載時以“guest”使用者進行
328         guest ok = yes   ##匿名使用者登陸
[root@server ~]# systemctl restart smb.service

這裡寫圖片描述
這裡寫圖片描述
在客戶端:測試

[root@client ~]# smbclient //172.25.254.228/DIR  ##匿名使用者登入可以檢視檔案
[root@client ~]# mount //172.25.254.228/DIR /mnt -o username=guest,password=""   ##可以匿名不需要密碼掛載
[root@client ~]# df

這裡寫圖片描述

相關推薦

Linux---cifs檔案系統samba安裝配置共享目錄

CIFS是一種通用網路檔案系統,主要用於網路裝置之間的檔案共享。CIFS可以在linux系統和windows系統之間共享檔案,因此這種檔案系統主要用於客戶端是windows系統。提供CIFS的服務是SAMBA,下文將介紹SAMBA服務的一些配置以及用法。

Linux 基礎知識 CIFS檔案系統samba

一、簡介 1.CIFS: CIFS 是一個新提出的協議,它使程式可以訪問遠端Internet計算機上的檔案並要求此計算機提供服務。CIFS 使用客戶/伺服器模式。客戶程式請求遠在伺服器上的伺服器程式為它提供服務。伺服器獲得請求並返回響應。CIFS是公共的或開放的SMB協議版本,並由Micro

linux記憶體檔案系統指南

記憶體檔案系統使用及示例:ramdisk, ramfs, tmpfs  第一部分 在Linux中可以將一部分記憶體mount為分割槽來使用,通常稱之為RamDisk。  RamDisk有三種實現方式:  第一種就是傳統意義上的,可以格式化,然後載入。  這在Linux核心2.0/2.2就已經支援,其不足之

分散式檔案系統FastDFS安裝部署

  前面我們瞭解了分散式檔案系統mogilefs的框架以及安裝部署和簡單使用,回顧請參考https://www.cnblogs.com/qiuhom-1874/tag/MogileFS/;今天我們來了解下FastDFS叢集的安裝部署;   FastDFS是由國人研發的一個輕量級分散式檔案系統,主要由track

linux入門詳解1-ssh安裝配置虛擬機基本使用

沒有 http ctr ble 輸入密碼 入門 p s start onf ssh配置 1,打開"終端窗口",輸入 "sudo apt-get update" --> 回車 --> "輸入當前登錄用戶的管理員密碼

檔案系統中的物件總結目錄項物件的重點理解

檔案系統中主要物件:●超級塊(superblock)物件: 存放系統中已安裝檔案系統的有關資訊。對於基於磁碟的檔案系 統(具有I/O操作),這類物件通常對應於存放在磁碟上的檔案系統控制塊(FCB),也就是說, 每個檔案系統都有一個超級塊物件。●索引節點(inode)物件: 存

VBA管理filezilla 用戶組共享目錄權限批量代碼

type lis upload 批量 shee fun 51cto log cat VBA管理filezilla 之用戶組及共享目錄權限批量代碼表格數據 VBA模塊代碼: Option ExplicitDim str, xmlfile As StringDim i As

linuxCIFS 網路檔案系統Samba 檔案共享軟體

        CIFS 是一個新提出的協議,它使程式可以訪問遠端Internet計算機上的檔案並要求此計算機提供服務。CIFS 使用客戶/伺服器模式。客戶程式請求遠在伺服器上的伺服器程式為它提供服務。伺服器獲得請求並返回響應。C

Linux開發Nginx安裝配置

linux運維 Nginx 扣丁學堂 雲計算 Nginx("engine x")是一款是由俄羅斯的程序設計師Igor Sysoev所開發高性能的 Web和 反向代理 服務器,也是一個 IMAP/POP3/SMTP 代理服務器。在高連接並發的情況下,Nginx是Apache服

Linux網絡子系統---- PHY 配置

向量 driver otv wan probe clu all 分配 ++ MII即媒體獨立接口,也叫介質無關接口。 它包括一個數據接口,以及一個MAC和PHY之間的管理接口(圖1)。 數據接口包括分別用於發送器和接收器的兩條獨立信道。每條信道都有自己的數據、時鐘和控制信

linux 檔案系統superblock

為了實際測試這個pagecache和對裸盤操作的區別,我一不小心敲錯命令,將一個磁碟的super_block給抹掉了,全是0, dd if =/dev/zero of=/dev/sda2 bs=4096 count=1 seek=2234789 2234789是我的某個測試檔案的

centos 7 linux系統預設ftp安裝配置和部署(詳細講解)

轉載自:https://www.cnblogs.com/mujingyu/p/7677273.html 小生接觸 Linux 系統時間不長,想解決linux系統ftp安裝及部署問題,折騰了大半天,終於弄出來了,將各路 高手的配置方法綜合了一下,如有不對之處,歡迎各位看客指正,感謝! 一、

linux 網路檔案系統NFS伺服器配置

NFS(網路檔案系統)服務可以將遠端Linux系統上的檔案共享資源掛載到本地主機的目錄上,從而使得本地主機(Linux客戶端)基於TCP/IP協議,像使用本地主機上的資源那樣讀寫遠端Linux系統上的共享檔案。 1.配置NFS伺服器,先安裝兩個必要的軟體包,通常是預設安裝的 yum in

Linux檔案系統許可權體系

目錄 ①檔案屬性mode 什麼是檔案的許可權: >>>Linux一切皆檔案,多個使用者登入作業系統,系統有預設檔案,root檔案,每個使用者也有自己的檔案,此時需要對檔案系統進行       

Linux檔案系統使用者與組管理

目錄 ①使用者與組管理之重要檔案 (1)/etc/passwd (2)/etc/shadow (3)/etc/login.defs (4)/etc/skel (目錄) (5)/etc/de

Linux檔案系統壓縮資料&歸檔資料(打包)

目錄 ①Linux檔案壓縮工具 工具 檔案拓展名 gzip .gz bzip2 .bz2 zip

Linux】centos 7 linux系統預設ftp安裝配置和部署(詳細講解)

小生接觸 Linux 系統時間不長,想解決linux系統ftp安裝及部署問題,折騰了大半天,終於弄出來了,將各路 高手的配置方法綜合了一下,如有不對之處,歡迎各位看客指正,感謝! 一、宣告:   本文采用作業系統版本: Centos 7 Linux系統     版本源:C

linux中sublime Text安裝配置搭建c/c++編譯系統

1. Sublime Text 3的下載安裝    到官方網站上http://www.sublimetext.com/3下載64位(系統位64位)的.deb安裝包(http://c758482.r82.cf2.rackcdn.com/sublime-text_build-3

Linux檔案系統hard link&symbol link

引自:https://www.ibm.com/developerworks/cn/linux/l-cn-hardandsymb-links/ 這個圖很清楚的表示出硬連結和軟連結的方式。 1.硬連結:

Linux檔案系統FHS

一、FSH簡介     FHS是Filesystem Hierarchy Standard的縮寫,目前絕大多數Linux版本採用這種檔案組織形式 二 、FSH下的標準目錄簡介     1./boot:引導檔案存放目錄,核心檔案(vmlinuz)、引導載入器(b