本文共 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.SMB服务器:192.168.1.1 Linux1
2.SMB客户端:192.168.1.2 Linux23.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 --> offsamba_domain_controller --> offsamba_enable_home_dirs --> offsamba_export_all_ro --> offsamba_export_all_rw --> offsamba_portmapper --> offsamba_run_unconfined --> offsamba_share_fusefs --> offsamba_share_nfs --> offsanlock_use_samba --> offuse_samba_home_dirs --> offvirt_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 sxsEnter sxs's password: Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.9-164.el6]smb: \>OK,完成。
转载于:https://blog.51cto.com/11010174/2065522