KYLIN3.3 SMB服务器的搭建

一、基本概念
SMB协议:实现局域网内文件或者打印机等资源共享服务的协议。
Samba服务程序是一款基于SMB协议并由服务端和客户端组成的开源文件共享资源软件,实现了不同系统间的文件共享(如linux与windows)。
smb属于存储中的NAS服务(NAS iscsi ?),因为是与windows之间进行共享,所以smb会有两个进程(smbd nmbd)。
smbd:smb 端口号:137 138
nmbd:netbios 端口号:139 445
smb的工作流程:
磋商协议:客户端在访问服务器的时候,会发送一个磋商指令包的一个请求,告知我们计算机所支持的smb类型,smb服务器会根据客户端的情况选择适合的smb类型并做出我们的磋商响应。
会话连接:客户端向服务器发送会话指令包的一个请求,提交账户和密码请求与smb服务器建立连接,如果客户端通过了身份验证。smb服务器就会对这个会话的报文做出回应,并分配用户唯一的客户端给其使用。
访问共享资源:客户端向服务器发送一个树形连接的请求,告知服务器所需要访问的共享资源名和共享文件夹,如果访问控制设置为允许,那么smb服务器就会让客户端访问到共享资源。如果设置的是拒绝,客户端查看不了共享资源。
断开连接:共享使用完毕之后,客户端向服务端发送一个断开连接的请求,服务器收到后,断开与客户端的连接。
1、negitiate protocol(磋商协议)
client--------------------negprot-------------------->server
<-------------------negprot---------------------
2、session connection(会话连接)
client-----------------session setup---------------->server
<---------------session setup------------------
3、access share resource(访问共享资源)
client--------------------tree connect-------------->server
<-------------------tree connect--------------
4、disconnect(断开连接)
client--------------------tree disconnect----------->server
<--------------------tree disconnect----------

二、环境配置
SMB分为两种访问模式(公共访问 用户名访问)
安装smb服务
yum install samba -y
其中包含:samba.x86_64,pytalloc.x86_64,samba-common-tools.x86_64,samba-libs.x86_64。
设置开机自启动
systemctl enable smb
安装smb客户端服务
yum install samba-client -y
安装cifs
yum install cifs -y

1、公共访问
新建共享文件夹,给这个文件夹的other写的权限。
配置smb主配置文件(/etc/samba/smb.conf),将主配置文件改名成back,将/etc/samba/smb.conf.example复制成主配置文件。

mv /etc/samba/smb.conf /etc/samba/smb.conf.back
cp /etc/samba/smb.conf.example /etc/samba/smb.conf

修改主配置文件中的security、passdb backend,新增map to guest。
security = user
passdb backend = tdbsam
map to guest = Bad User

在主配置文件文件最后添加:
检查配置文件格式是否正确,启动smb服务。
testparm
systemctl start smb

查看是否能看到共享名。
smbclient -L IP地址
使用方法:
a. 进入共享文件夹,使用get下载文件。
smbclient //IP地址/共享名
b. 挂载共享文件夹。
mkdir /mnt/smb
mount -t cifs //IP地址/共享名 /mnt/smb

如果需要打开selinux和防火墙,则需要额外的配置。
chcon -t samba_share_t /tmp/meng

2、用户名访问
新建共享文件夹,给这个文件夹的other写的权限。
mkdir /tmp/meng
chmod o+w /tmp/meng

在主配置文件文件最后添加:
[meng]
comment = Welcome xiao dir
path = /tmp/meng
public = no
writable = no
printable = no
browseable = yes
write list = xiao

将map to guest注释,新建用户xiao,重启smb服务,配置登陆用户登陆密码。
useradd xiao
systemctl restart smb
smbpasswd -a xiao

重新查看共享名,并且登陆。
smbclient -L IP地址 -U xiao
smbclient IP地址 -U xiao

挂载smb共享目录
临时挂载:
mount.cifs //IP地址/meng /mnt/meng/ -o user=xiao,password=密码
永久挂载:
在/etc/fstab里面加如一条
//IP地址/meng /mnt/meng cifs defaults,user=xiao,password=密码 0 0

三、常用命令参数
1、命令
testparm //测试主配置文件格式是否正确
systemctl status smb //查看smb当前状态
systemctl restart smb //重新启动smb服务

2、参数
comment //这个comment后面的文字是对这个samba的解释
path //path是要分享的路径,记住,这路径一定要给到合适权限,不然访问会出错的。
writable //决定访问的用户能否写入文件
guest ok //决定访客用户能否访问
browseable //出于安全考虑,有时会让客户端无法看到某个共享目录,这样只有管理员或者一些重要人士知道Samba服务器上有这样一个目录,而其它人员并不知道这个目录。
hosts allow //只允许某些ip访问这台samba服务器;多个ip之间用空格隔开即可;如果允许某一个网段的话,可以这样:192.168.10.0/24也可以:192.168.10.
printable //是否开启打印。
public //是否是公共访问。
write list //可以写的用户。
valid users //可以登陆的用户。
create mode //创建用户的权限。
directory mode //创建文件夹权限。
force group //创建组所属。
force user //创建用户所属。



PS:
如果是windows访问的话,直接windows+R的弹窗输入\192.168.10.20就可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值