samba服务部署
1.samba服务简介
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。
SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。
windows系统共享文件时用到的协议是smb
smb由miscrosoft+sun公司研发产生。
2.samba基本信息
服务启动脚本:smb.service
主配置目录:/etc/samba
主配置文件:/etc/samba/smb.conf
安全上下文:samba_share_t
端口:139、445
安装包:samba 、samba-common
3.samba的安装与启用
samba的安装:
dnf install samba samba-common samba-client -y
samba的启动:
systemctl enable --now smb ##开启smb服务,并设置为开机启动
firewall-cmd --permanent --add-service=samba ##火墙开启samba服务
firewall-cmd --reload ##刷新火墙
测试:
smbclient -L //192.168.43.12 ##当要输入root密码时,直接回车
4.samba用户的建立
1.samba用户必须是本地存在的用户
2.samba用户的建立:
smbpasswd -a haha ##添加smb用户
pdbedit -L ##查看用户列表
pdbedit -x haha ##删除haha用户
5.samba 用户访问家目录
访问方法:
在windows下:
\\192.168.43.12 ##访问
net use ##查看访问记录
net use * /del ##删除访问记录
在linux下:
smbclient //192.168.43.12/westos -U haha
【注】:
当selinux开启时,默认访问不到分享主机的家目录文件,要想访问,需执行以下:
getsebool -a | grep samba ##查看selinux对于samba软件的内部开放情况
setsebool -P samba_enable_home_dir on ##开启家目录访问
5.samba服务共享目录
mkdir /westosdir ##建立目录
touch /westosdir/linux{1..5} #在westosdir目录下面建立文件
vim /etc/samba/smb.conf ##编辑主配置文件
systemctl restart smb #重启服务
semanage fcontext -a -t sma_share_t '/westosdir(/.*)?' ##修改安全上下文
restorecon -RvvF /westosdir/ ##刷新
测试:
smbclient //192.168.43.12/westosdir -U westos
7.samba的访问控制
host allow 192.168.43.11 ##只允许192.168.43.11可以
host deny 192.168.43.13##除192.168.43.13外,其他都能访问控制
【注】:当写在单独共享时只对此共享生效,当写在global时对samba整体生效。
8.samba常用配置参数
writable = yes ##可写
write list = westos ##指定用户可写
write list = +westos ##指定组可写
write aaa@qq.com
valid users = +lee | @lee ##指定访问组
browseable = yes | no ##是否隐藏共享
map to guest = bad user ##写到全局设定中
guest ok=yes ##允许匿名用户访问
admin users = lee ##指定共享的超级用户身份
上一篇: golang 开发 web 服务程序
下一篇: php入门学习知识点三 PHP上传