博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux下搭建SMB文件共享服务,Linux/Windows互联互通
阅读量:5931 次
发布时间:2019-06-19

本文共 2473 字,大约阅读时间需要 8 分钟。

一丶简介:

SMB协议是建立在NetBIOS协议之上的应用协议,是基于TCP138、139两个端口的服务,NetBIOS出现之后,Microsoft就使用NetBIOS实现了一个网络文件/打印服务系统。这个系统基于NetBIOS设定了一套文件共享协议,Microsoft称之为SMB(Server Message Block) 协议,这个协议被用于Lan Manager和Windows服务器系统中,实现不同计算机之间共享 打印机和文件等。因此,为了让Windows和Unix/Linux计算机相集成,最好的办法就是在 Unix/Linux计算机中安装支持SMB协议的软件。这样使用Windows的客户端不需要更改设置, 就能像使用Windows NT或Windows 2000服务器一样,使用Unix/Linux计算机上的共享资源了。

Samba使SMB协议运行在NetBIOS协议上,并且使用Windows的 NetBEUI协议让Unix/Linux服务器 可以在Windows的网络邻居上被访问到。

Samba的守护进程
  1. smbd 监听139 TCP端口 设置共享目录、打印等
  1. nmbd 137. 138 UDP端口 管理群组、NetBIOS 等解析工作

二丶实验拓扑

1.SMB服务器:192.168.1.1 Linux1

2.SMB客户端:192.168.1.2 Linux2
3.SMB客户端:192.168.1.3 Windows

服务器上部署:

关闭IPtables,保证互联互通

知识点,samba 有四种安全级别,它们分别是:

share:用户不需要用户名和就可登陆samba 服务器

user:用户需要输入用户名和密码才可以登陆samba服务器

server:请自行查资料,不常用,略

domain:请自行查资料,不常用,略

[root@192.168.1.1 ~]# yum -y install samba

[root@192.168.1.1 ~]# vim /etc/samba/smb.conf

查找[Global]区域下 workgroup = WORKGROUP 修改为Windows下组名称

security = user

下面自行添加一个区域

[share] 共享名称

comment = sxs share 描述信息
path = /media/share 共享路径
guest ok = no 是否允许guest访问
browseable = yes 是否显示共享目录
writable = yes 是否允许写入
write list = sxs 允许写入的用户 ,@为组

可选项

//host allow = 192.168.80. 192.168.70. //允许访问服务器的主机

  //client code page = 939 //支持简体中文共享名

ok,设置完成

[root@192.168.1.1 ~]# mkdir /media/share

[root@192.168.1.1 ~]# useradd sxs
[root@192.168.1.1 ~]# chmod 755 /media/share
[root@192.168.1.1 ~]# chown sxs.sxs /media/share
[root@192.168.1.1 ~]# smbpasswd -a sxs
输入两次密码
[root@192.168.1.1 ~]# /etc/init.d/smb start 启动相关服务
[root@192.168.1.1 ~]# /etc/init.d/nmb start

由于selinux问题导致即使文件中允许了访问,也无法实现实验的目的

解决办法:关闭selinux

[root@192.168.1.1 ~]# setenforce 0 临时关闭方法

另一解决办法:开发selinux中关于开放samba的相关服务

[root@192.168.1.1 ~]# 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_portmapper --> off
samba_run_unconfined --> off
samba_share_fusefs --> off
samba_share_nfs --> off
sanlock_use_samba --> off
use_samba_home_dirs --> off
virt_use_samba --> off

[root@192.168.1.1 ~]#

#setsebool –P samba_enable_home_dir on

#setsebool –P samba_export_all_ro on

#setsebool –P samba_export_all_rw on

接下来Windows上面测试输入:\192.168.1.1\share 测试进入该共享目录,及写入无问题

Linux上面再测试一下

[root@192.168.1.2 ~]# yum -y install samba-client

[root@192.168.1.2 ~]# smbclient //192.168.1.1/share -U sxs
Enter sxs's password:
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.9-164.el6]
smb: \>

OK,完成。

转载于:https://blog.51cto.com/11010174/2065522

你可能感兴趣的文章
投简历申请数据科学岗石沉大海?这些秘密别人不会告诉你
查看>>
BitBucket引入灾难恢复和合并策略
查看>>
Node.js 2017企业用户调查结果发布
查看>>
InfoQ中文站2015年度优秀社区编辑评选揭晓
查看>>
GitHub贡献第一的公司是谁?微软开源软件列表
查看>>
中国在两年内赶超美国AI?李开复:不一定
查看>>
埃森哲、亚马逊和万事达卡抱团推出的区块链项目有何神通?
查看>>
Node 7.6默认支持Async/Await
查看>>
.NET Core如何为项目提供高性能解决方案?
查看>>
你以为AlphaGo只是下围棋厉害?不,它还能用来优化金融交易策略参数
查看>>
HashMap源码分析
查看>>
compass watch 报CompatibilityError 解决方案
查看>>
Payara基金会发布全面支持MicroProfile 2.0的5.183版Payara Server和Payara Micro
查看>>
函数式编程语言时代已经来临
查看>>
Yarn将用TypeScript重写,Flow惨遭亲爹抛弃!
查看>>
Visual Studio 2017 15.7预览版发布
查看>>
Python数据科学平台Anaconda的最新发布中增加了Microsoft VS Code
查看>>
利用媒体云实现差异化
查看>>
Imperva开源域目录控制器,简化活动目录集成
查看>>
保Cloudera弃Hortonworks,新平台将支持五大云供应商
查看>>