samba依赖的两个协议
SMB协议,服务消息块
CIFB协议,通用互联网文件系统
以下是客户端的软件包,客户机默认存在
以下是服务端软件包,集成在光盘里,需要手动安装
运行samba服务以后会提供两个程序
smbd //共享 监听TCP的139端口(SMB协议)、445端口(CIFC协议)
nmbd //解析主机名,监听UDP的137和138端口(NetBIOS协议)
主配置文件: /etc/samba/smb.conf
配置本地yum源
cd /etc/yum.repos.d/ //cd到这个目录下
rm – rf * //将该目录下的所有文件删除
vim a.repo //创建并编辑一个后缀为repo的文件,文件名随意
[a] //文件名
name=a //name=文件名
baseurl=file:///mnt // dile:// 这是一个格式,后面接的是光盘挂载地址
gpgcheck=1 //检测
enable=1 //启动
导入公钥
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 //导入公钥
yum clean all //清空源
yum list //列出源软件库里的所有文件
yum -y install samba // -y确认 install安装 确认安装samba服务
yum remove 服务名 //卸载某个服务,选y
启动:
systemctl start smb //启动smb共享服务
systemctl start nmb //启动nmb解析主机名服务
netstat -anpt | grep smb //查看smb服务的网络状态
主配置文件: /etc/samba/smb.conf 中的参数
[global] //全局配置参数,在此区域里的参数在所有共享中都生效
security = user //用户验证=本地用户
[homes] //用户家目录共享参数,默认共享
[printers] //打印机共享参数,默认共享
[abc]
comment = abc //这个共享的描述
path = /abc //共享目录的路径
public = no //是否允许所有人访问?
read only = yes //是否可读?
valid users = user1,user2,@grout1 //可以访问的用户合组,用,分隔,@组
write list = user1 //允许那个用户有写入权限
directory mask = 0775 //写入文件夹的默认权限
create mask = 0644 //写入文件的默认权限
browseable = YES //是否可以备搜索到
pdbedit -a -u user1 //添加用户为共享用户
pdbedit -L //查看共享用户
setenforce 0 //关闭安全防护。
systemctl stop firewalld //关闭防火墙
systemctl restaet smb //重启smb服务
chmod 777 /abc //给文件夹本身赋权
testparm //检测配置文件
客户端:
smbclient -L 192.168.10.5 -U user1 //查看共享文件夹
smbclient -U user1 //192.168.10.5/abc //访问共享文件夹
为共享用户映射别名
vim /etc/samba/username //创建一个名叫username的文件
user1 = xiaoming //文件内容 用户名=别名
vim /etc/samba/smb.conf //更改smb配置文件
[global] //全局配置
Username map = /etc/samba/username //添加一条这样的内容 别名=路径
访问地址限制,一般在全局配置里。(可以限制地址、网段、主机等)(限制网段省略最后的0)
hosts allow = 192.168.1.1 //仅允许该用户访问,多个地址之间用逗号或空格分隔
hosts deny = 192.168.1.1 //不允许该用户访问,多个地址之间用逗号或空格分隔
samba服务器有三个级别:一个是需要验证的user,一个是不需要验证的匿名share,另一个是将验证交给另一个服务器的serves