Samba文件共享服务
基于SMB/CIFS协议开发的软件,为windows/linux提共文件服务和打印服务。又smba和nmbd两个守护进程组成,采用S/C模式
smba监听TCP139与445号端口;nmbd通过UDP 137端口进行监听
samba配置文件 /etc/samba/smb.conf
【服务端】
1.安装samba服务器
【查看是否安装过】
rpm -aq | grep samba
显示输出【未安装】
利用yum进行安装
yum -y install samba
查看安装结果
rpm -a | grep samba
2.创建用户【系统用户】
查看shell
cat /etc/shells
添加shell【添加一个可以访问samba服务器的用户,但不允许登录】
useradd -s /sbin/nologin sam_user
-s:指定用户登录时使用的shell sbin/nologin:提高安全性
3.将新用户加入samba组,并设置密码
smbpasswd -a smb_user
-a:添加用户
-d:禁止用户
-e:启用用户
-x:删除用户
4.创建共享目录并设置权限
mkdir -p /storage/smb_share
查看权限
ll -d /storage/smb_share
对root /group/other进行权限设置
修改权限
chmod -Rf 777 /storage/smb_share
5.编辑samba配置文件/etc/samba/smb_conf 设置共享目录
vim /etc/samba/smb_conf
[smb_share] #共享名称
comment = samba_share #描述信息
path = /storage/smb_share #目录完整的路径
browseable = yes #是否可见
writable = yes #是否可写
guest ok = yes #是否允许匿名用户
安全方式:
share
user
server
domain
6.重启服务并加入开机启动项
systemctl restart smb
systemctl enable smb
7.对samba设置永久防火墙并重新加载
firewall-cmd --permanent --add-server=samba
8.关闭SELinux
SELinux是一个安全子系统
SELinux服务的三种运行模式:
- enforcing(1):强制启用安全策略模式,将拦截服务的不合法请求
permissive(0):遇到服务越权访问时,只会发出警告不会强制拦截
disabled(关闭):对于越权行为不警告不拦截
查看当前运行模式
getenforce
设置运行模式
setenforce 0/1
临时关闭SELinux,立即生效
setenforce 0
永久关闭SELinux
修改内容
vim /etc/selinux/config
#第七行: SELINUX=enforcing 修改为selinux=disabled
【Linux客户端】
1.安装客户端软件
yum -y install samba-client
2.查看samba的共享资源
smbclient -L //主机ip地址 -U smb_user%密码
3.访问共享资源
smbclient -U smb_user%密码 //服务器IP地址/storage/smb_share
4.对文件的基本操作
ls:查看
put:上传 命令格式:put 本地文件 远端文件
get:下载 命令格式:get 远端文件 本地文件
quit:退出
5.挂载共享目录
【创建挂载文件】
mkdir /media/smb_share
【编辑/etc/fstab文件】
【挂载】
mount -a
【查看挂载信息】
dh -h