SMB文件共享

用internet文件系统(CIFS)也称为服务器信,是适用于MicrosoftWindows 服务器和客户端的标准文件和打印机共享系统息块(SMB)
Samba服务可用于将linux文件系统作为CIFS/SMB网络文件共享进行共享,并将Linux打印机作为CIFS/SMB打印机共享进行共享

Samba服务的组成部分
软件包:
Samba-common  ##Samba的支持文件
Samba-client  ##客户端应用程序
Samba         ##服务器应用程序
服务名称:smb nmb
服务端口:通常使用TCP/445进行所有连接。还是用UDP137、UDP138和TCP/139进行向后兼容
主配置文件:/etc/samba/smb.conf

1.samba环境部署

在服务端(Desktop):

  • 安装软件

yum install samba-client.x86_64 -y
yum install samba-common.x86_64 -y
yum install samba.x86_64 -y



systemctl start smb ##开启服务
netstat -antlupe | grep smb ##查看端口

  • 添加火墙功能

firewall-cmd --permanent --add-service=samba
firewall-cmd --permanent --add-service=samba-client
firewall-cmd --reload

  • 查看Selinux

getnforce ##查看selinux状态
Enforcing

vim /etc/sysconfig/selinux

reboot重启

注:selinux开启时,必须更改samba共享目录的安全上下文

  • 查看主配置目录

rpm -qc samba-common

  • 建立smb用户:

useradd westos ##添加系统用户
smbpasswd -a westos ##添加smb用户
pdbedit -L##查看smb用户

  • 修改配置文件

vim /etc/samba/smb.conf ##查看配置文件对于selinux开启时的要求

可以看到当selinux开启时,samba的共享目录需更改安全上下文
mkdir /westos ##建立samba服务器的共享目录
semanage fcontext -a -t samba_share_t '/westos(/.*?)?' ##更改安全上下文
restorecon -RvvF /westos ##加载使更改生效


vim /etc/samba/smb.conf ##编辑配置文件
[WESTOS] ##对外共享的名字
path = /westos_smb ##对外共享的内容

systemctl restart smb.service ##重启smb服务,使更改生效
systemctl enable smb.service ##开机自启

客户端登陆(Server):

smbclient -L //172.25.254.121 ##用匿名用户查看samba服务器共享的目录(-L表示list列出)

smbclient //172.25.254.229/westos -U westos ##用westos用户进入共享目录

没有挂载在本地的话只能ls查看,只有挂载在本地才可以进行上传下载等操作
mount //172.25.254.229/westos /mnt -o username=westos,password=123 ##将samba服务器的共享目录挂载在本地目录/mnt下,挂载时必须加上samba用户

2.samba的基本操作

  • 添加共享目录说明

在服务端
vim /etc/samba/smb.conf##编辑samba服务的配置文件
添加 comment=westos dir##加入对共享目录的说明,客户端查看时会看到此说明

systemctl restart smb ##重启服务,使更改生效

客户端测试
smbclient -L //172.25.254.121/westos

  • 更改用户组

在服务端
vim /etc/samba/smb.conf##编辑samba服务的配置文件
workgroup = WESTOS ##修改用户组

systemctl restart smb ##重启服务,使更改生效
客户端测试
smbclient -L //172.25.254.121/westos

  • 黑白名单

在服务端
vim /etc/samba/smb.conf##编辑samba服务的配置文件
hosts allow = 172.25.254.121##只允许172.25.254.121主机登陆

systemctl restart smb ##重启服务,使更改生效
在172.25.254.121主机
smbclient -L //172.25.254.121/westos
可以正常访问

在172.25.254.221主机上
smbclient -L //172.25.254.121/westos
访问被拒绝!

  • 读写权限

在服务端
vim /etc/samba/smb.conf##编辑samba服务的配置文件
writable = yes ##开启读写权限

systemctl restart smb ##重启服务,使更改生效
chmod 777 /westos ##开启此目录的读写权限

在客户端
mount //172.25.254.121/westos /mnt -o username=westos,password=123##挂载共享目录
cd /mnt##切换到挂载目录下
touch file666 ##建立文件

注:客户端和服务端对于文件的拥有者名字可能不同,但是id肯定一致

  • 设置/mnt系统目录的共享

在服务端
vim /etc/samba/smb.conf##编辑samba服务的配置文件

systemctl restart smb ##重启服务,使更改生效
客户端测试
smbclient -L //172.25.254.121/westos

若要读写共享目录,需解挂之前的,重新挂载

发现此时虽然可进入/mnt,但是查看不到内容

此时需修改服务端的selinux状态为警告:

发现客户端可以查看/mnt共享目录的内容

  • 权限列表控制

在服务端
SELinux状态改为Enforcing
setsebool -P samba_export_all_ro on#打开只读权限
getsebool -a | grep samba ##打开权限列表

客户端
此时ls发现可以查看

在服务端
vim /etc/samba/smb.conf ##查看配置文件
writable = yes ##开启写权限

setfacl -m u:westos:rwx /mnt ##给westos用户对/mnt目录的满权限
setsebool -P samba_export_all_rw=1 ##打开读写权限
getsebool -a |grep samba ##查看samba服务的权限

客户端
此时发现可以建立文件

注:当开启samba_export_all_ro/samba_export_all_rw 权限后,再次登陆非系统文件,只授权就可以,不用修改selinux和安全上下文

Linux下的SMB服务(samba服务器)相关推荐

  1. 在Linux下轻松玩转Samba服务器

    一.samba概念和功能 Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块 ,SMB主要是作为Mi ...

  2. linux未识别smb服务,Linux下配置smb服务

    1.在有网的情况下安装软件 yum -y install samba 2.查看配置文件 vim /etc/samba/smb.conf 3.安全级别 安全级别: share 共享级别(不需要密码) u ...

  3. Linux下利用rsync实现多服务器文件同步

    Linux下利用rsync实现多服务器文件同步 目标:多服务器文件同步 环境:2台centos5.6 Web端:192.168.20.20 Backup端:192.168.20.21 需要备份目录为: ...

  4. linux系统网络邻居,5、Linux下的网络邻居Samba

    五.Linux下的网络邻居Samba Windows可以通过网络邻居访问局域网主机,而在Linux下可以通过Samba 客户端访问局域网内的Windows主机,也可以通过Samba服务器给Window ...

  5. Linux下的主辅DNS服务器同步

    Linux下的主辅DNS服务器同步 一.系统环境介绍 二.辅助DNS搭建 1.安装yum包 2.设置服务自启 3.编辑dns主配置文件 4.编辑区域文件 5.配置正向文件 6.配置反向文件 7.重启服 ...

  6. Linux 下 离线下载服务部署 CCAA的安装使用

    Linux 下 离线下载服务部署 CCAA的安装使用 我的小站.Github CCAA 是服务器离线下载解决⽅案包,组件包含了Aria2 提供离线下载,ccaa_web⽀撑AriaNg运⾏, Aria ...

  7. 怎么在linux下使用ftp服务器,怎么在Linux下建立安全的FTP服务器?

    怎么在Linux下建立安全的FTP服务器? 2018-08-31 15:53 分享人:老牛 学习Linux系统时,你可能会遇到网络服务的问题,这里将介绍linux FTP服务器安全及DHCP服务的实现 ...

  8. linux下svn(subversion)服务端添加工程及配置权限

    linux下svn(subversion)服务端添加工程及配置权限 转载请注明源地址:http://www.cnblogs.com/funnyzpc/p/9010507.html 此篇我只是将所做过的 ...

  9. linux 下通过 httpd服务创建网页

    linux 下通过 httpd服务创建网页 1.安装httpd服务 yum install httpd -y [root@node143 ~]# yum install httpd -y 2.查看防火 ...

最新文章

  1. 数字IC设计各种仿真波形文件
  2. php读取excel文件_php读取EXCEL文件 php excelreader读取excel文件
  3. UI分层中使用PageFactory
  4. 科大星云诗社动态20201118
  5. why in GM0 our extension component this.sPath is not correct
  6. 核心编程之十一章的11-9
  7. 华为鸿蒙ipc时延,虚搜
  8. android简易双屏支持【转】
  9. C++_虚函数的实现的基本原理
  10. Tomcat 系统架构与设计模式之设计模式篇
  11. IP报文格式和实例分析
  12. yytext table html,展开label,利用YYText实现文字显示不完末尾添加全文
  13. 思科模拟配置文件服务器,思科模拟服务器配置教程
  14. Oracle RMAN无法删除归档一例
  15. 【室内园艺】——栀子花
  16. 面试官:谈谈你对geohash的理解和如何实现附近人功能呢?
  17. uniapp实现微信小程序websocket+背景音频语音播报
  18. Android 带你彻底理解 Window 和 WindowManager
  19. 低频数字相位测量仪的介绍
  20. 常用的 Docker 命令

热门文章

  1. 基于JAVA高校学生综合素质测评系统计算机毕业设计源码+数据库+lw文档+系统+部署
  2. iPhone 12已安装的App显示正在安装处理方法
  3. Unity帧同步和状态同步
  4. 【模型复现】零样本预测文本分类模型——ESM 快速复现模型
  5. C++ Reference: Standard C++ Library reference: C Library: cstdio: getc
  6. spring boot使用jasypt加密原理解析
  7. mysql主从同步故障_MySQL主从同步故障
  8. 服务器 为什么linux,为什么服务器要用linux系统?
  9. html2Canvas 边框虚线
  10. 部分透明的遮罩层处理