###### 插话 #####
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。
至于SMB为什么最后叫Samba,这个嘛~ 就很尴尬了,当时的大学生 Tridgwell去申请 SMBServer ( Server Message Block 的简写 ) 这个名字来做为他撰写的这个软件的商标,可惜的是,因为SMB 是没有意义的文字,因此没有办法达成注册。既然如此的话,那么能不能在字典里面找到相关的字词可以做为商标来注册呢?翻了老半天,呵呵!这个SAMBA刚好含有 SMB ,又是热情有劲的拉丁舞蹈的名称,不如就用这个名字来做为商标好了。如此,这成为我们今天所使用的SAMBA 的名称由来。
------------目录---------------
1.Samba的安装
2.Samba的首次进入
3.增加Samba用户
4.Samba用户的查看
5.Samba用户的共享目录查看
6.Samba用户的登录
7.Samba用户目录的挂载
8.修改Samba服务的配置文件
1.Samba的安装
yum install samba samba-common samba-client
##安装相应的软件,为了实验方便,小编的服务端和客户端是同一台主机,客户端只需要下载samba-client即可
systemctl status smb ##查看Samba服务
systemctl start smb ##开启Samba服务
systemctl status smb ##查看Samba服务
netstat -antlpe | grep smb ##查看Samba服务的TCP端口
2.Samba的首次登录
smbclient -L //172.25.254.108 ##弹出输入密码的请求时,直接Enter
3.增加Samba用户(Samba用户一定时系统内已经存在的用户)
smbpasswd -a student
smbpasswd -a hx
##设置Samba用户的密码,为了方便记忆,在这里,smb用户密码的设定均为:smb+用户名
查看三个用户分别是:student、hx、lee,可知,student和hx均为系统内已经存在的用户,而lee是不存在的
系统内不存在的用户无法建立Samba用户
系统内存在的用户成功建立Samba用户
4.Samba用户的查看
pdbedit -L
5.Samba用户的共享内容(Client)
smbclient -L //172.25.254.108 -U student ##密码为:smbstudent
##共享内容为student的整个家目录
6.Samba用户的登录(登录成功,直接进入到相应的目录文件中)
smbclient //172.25.254.108/student -U student
##客户端以172.25.254.108主机的student的身份进入到student的家目录下
##第一次登录可能会遇到一些问题,不要方,可能是SELinux在起作用,我们需要改变他的工作方式来达到进入相应目录的目的
7.Samba用户目录的挂载
mount -o username=student,password=smbstudent //172.25.254.108/student /mnt
##将172.25.254.108主机的student用户的家目录挂载到客户机的/mnt下,用df可以查看
8.修改Samba服务的配置文件
/etc/samba/smb.conf ##主配置文件,有相当一部分参数即改即生效
1)SELinux在Samba服务开启时的注意事项
2)workgroup(域名)
前面的匿名查看中可以看到此值的显示情况,即:
Domain=[MYGROUP]
3)默认显示区域:用户家目录和打印机
4)Samba用户白名单和黑名单
需要提醒的是:白名单的优先级高于黑名单
hosts all/deny 172.25.254.108 ##允许/拒绝108主机的访问
hosts all/deny 172.25.254.108 172.25.254.208 ##允许/拒绝108和208主机的访问
hosts all/deny 172.25.254.0/24 ##允许/拒绝某一网段的IP
小编在这里就只演示一种~
在正确输入密码的前提下,拒绝了客户的请求
5)布尔值的设定
一般情况下,SELinux的值设置为Disabled或者Enforcing,与之俱来的问题就是客户端的某些功能是被禁用的,而安全上下文的修改又有可能造成其他的文件操作出现问题,所以,只能顶着巨大的风险,开启整个系统的功能,即SELinux的布尔值
做完基本的设置后,我们就随便挑一个功能来测试一下:
samba_enable_home_dirs -->off ##用户家目录是否允许被访问的权限,off的状态下是无法登录成功的
setsebool samba_enable_home_dirs on ##off改为on,开启相应的功能
##此时,再次登录便成功了~
6)安全上下文的设定
自己创建的目录,无法通过Samba用户进行访问,这里,我们首先考虑有可能会是安全上下文的问题
创建目录及文件,并查看此目录的全权上下文,共享是不能够成功的
vim /etc/samba/smb.conf
##在配置文件中将所要共享出去的文件的配置即功能写清楚
查看配置文件,将相应的安全上下文设置为自己新建目录的标签
修改并刷新新建目录的安全上下文:
semanage fcontext -a -t samba_share_t '/westos(/.*)?'
restorecon -RvvF /westos/
重新共享,此次共享成功!
此篇为Samba的上篇(基础篇),下篇(高级篇)更精彩哦~