1、需求
在局域网内开放局域网共享服务:
有一个匿名的访问目录,可以放一些公共的软件,所有人都可以访问。
为每个人开放一个私人目录,只限定某个人能访问,其他人不能访问。
2、环境
一台服务器,安装了centos7.1
3、关闭selinux
服务器一般不会有人登录,嫌麻烦,还是关闭selinux吧。
暂时性关闭selinux
# setenforce 0
永久性关闭selinux
# vi /etc/selinux/config
修改配置文件
SELINUX=disabled
查询selinux状态
# getenforce
disabled #是指永久性关闭
Permissive #是指临时性关闭
4、开放防火墙
先查询下防火墙状态
# firewall-cmd --list-all
public (default, active)
interfaces: eno1
sources:
services: dhcpv6-clien ssh
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
表示,在eno1网口,public域上,开放了dhcpv6-clien、ssh两个服务。
我们这里再开放samba服务:
# firewall-cmd --zone=public --permanent --add-service=samba
sucess
刷新生效
# firewall-cmd --reload
5、安装samba
# yum -y install samba samba-client
...
启动
# systemctl start smb
设置开机启动
# systemctl enable smb
6、创建相关用户和目录
假设 /smb 目录为samba服务的数据目录,再该目录下 /smb/public 为共享目录,/smb/zhangsan 为张三独有的目录
6.1、先创建用户
# groupadd home
# useradd -g home zhangsan
6.2、再创建目录
# mkdir /smb
# mkdir /smb/public
# mkdir /smb/zhangsan
6.3、更改目录权限
授权 /smb/public 为所有人都可以访问和编辑
# chmod 777 /smb/public
授权 /smb/zhangsan 为张三个人可以访问
# chown zhangsan:home /smb/zhangsan
# chmod 700 /smb/zhangsan
7、配置samba服务
7.1、老规矩,先备份配置文件
# cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
7.2、修改配置文件
# echo xx > /etc/samba/smb.conf
# vi /etc/samba/smb.conf
配置如下
[global] #全局变量
workgroup = WORKGROUP #工作组,可自行修改
netbios name = SambaServer #名字,可自行修改
security = user #安全方式为user验证级别
map to guest = bad user
[public] #匿名可访问的目录
path = /smb/public
public = yes
writeable = yes
printable = no
create mask = 0660
directory mask = 0774
[zhangsan] #张三个人访问的目录
path = /smb/zhangsan
public = yes
writeable = yes
printable = no
create mask = 0660
directory mask = 0774
valid users = zhagnsan
测试配置有没有错误
# testparm
7.3、增加samba用户
注意:事先得有系统用户
# smbpasswd -a zhangsan
7.4、重启服务
# systemctl restart smb
8、测试
可以再其他电脑上测试
Pre: centos7 安装vsftpd
Next: centos7 上安装TimeMachine服务
转自:http://blog.perass.com/blog/post/micktiger/centos7-samba