一、基本设置
- 安装Samba服务
yum -y install samba
- 操作Samba服务器
//启动
/etc/init.d/smb start
//关闭
/etc/init.d/smb stop
//重启Samba服务
/etc/init.d/smb restart
- 设置开机自启动
//在3、5级别上自动运行samba服务
chkconfig --level 35 smb on
- 防火墙设置
// 设置端口过滤
iptables -I RH-Firewall-1-INPUT 5 -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
iptables -I RH-Firewall-1-INPUT 5 -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
iptables -I RH-Firewall-1-INPUT 5 -p udp -m udp --dport 137 -j ACCEPT
iptables -I RH-Firewall-1-INPUT 5 -p udp -m udp --dport 138-j ACCEPT
iptables -save
service iptables restart
- 配置
//备份原配置文件
cp /etc/samba/smb.conf /etc/samba/smb.conf.backup
编辑smb.conf文件
[global] # 与主机名有关的设定信息
workgroup = Yumihouse
netbios name = 172.16.57.99
server string = This is Yumi's samba server
log file = /var/log/samba/log.%m # 与登录文件有关的设定项目,注意变量 (%m)
max log size = 50
security = share # 这里才是与密码有关的设定项目!
[homes]
comment = Home Directories
read only = No
browseable = No
[printers] # 打印机相关设置
comment = All Printers
path = /var/spool/samba
printable = Yes
print ok = Yes
browseable = No
#=====================================
#文件末尾加上,自定义目录
[ShareDocument] #分享资源名称
comment = 文件夹描述 #简单的解释此资源
path = /home/share #实际Linux分享的目录
writable = yes #是否可写入?在此例为是的
browseable = yes #能不能被浏览到资源名称
二、用户管理
- 基本用户
Samba用户必须为Linux系统用户,但是Samba管理密码和Linux系统密码是不同的。
smbpasswd -a user #增加用户(要增加的用户必须以是系统用户)
smbpasswd -d user #冻结用户,就是这个用户不能在登录了
smbpasswd -e user #恢复用户,解冻用户,让冻结的用户可以在使用
smbpasswd -n user #把用户的密码设置成空,要在global中写入 null passwords -true
smbpasswd -x user #删除用户
- 组用户管理
需求:
1)首先服务器采用用户验证的方式,每个用户可以访问自己的宿主目录,并且只有该用户能访问宿主目录,并具有完全的权限,而其他人不能看到你的宿主目录;
2)建立一个caiwu的文件夹,希望caiwu组和lingdao组的人能看到,network02也可以访问,但只有caiwu01有写的权限;
3)建立一个lindao的目录,只有领导组的人可以访问并读写,还有network02也可以访问,但外人看不到那个目录;
4)建立一个文件交换目录exchange,所有人都能读写,包括guest用户,但每个人不能删除别人的文件;
5)建立一个公共的只读文件夹public,所有人只读这个文件夹的内容。
准备
//建立3个组:
#groupadd caiwu
#groupadd network
#groupadd lingdao
//添加用户并加入相关的组当中:
#useradd caiwu01 -g caiwu
#useradd caiwu02 -g caiwu
#useradd network01 -g network
#useradd network02 -g network
#useradd lingdao01 -g lingdao
#useradd lingdao02 -g lingdao
//添加目录
#mkdir /home/samba
#mkdir /home/samba/caiwu
#mkdir /home/samba/lingdao
#mkdir /home/samba/exchange
#mkdir /home/samba/public
smb.conf配置
[global]
workgroup = bmit #我的网络工作组
server string = Frank's Samba File Server #我的服务器名描述
security = user #使用用户验证机制
encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd #使用加密密码机制,在win95和winnt使用的是明文其他的基本上可以按照默认的来。
#homes段满足第1条件
[homes]
comment = Home Directories
browseable = no
writable = yes
valid users = %S
create mode = 0664
directory mode = 0775
#caiwu段满足我们的第2要求
[caiwu]
comment = caiwu
path = /home/samba/caiwu
public = no
valid users = @caiwu,@lingdao,network02
write list = caiwu01
printable = no
#lingdao段能满足我们的第3要求
[lingdao]
comment = lingdao
path = /home/samba/lingdao
public = no
browseable = no
valid users = @lingdao,network02
printable = no
#exchange段基本能满足我们的第4要求,但不能满足每个人不能删除别人的文件这个条件,即使里设置了mask也是没用,其实这个条件只要unix设置一个粘着位就行chmod -R 1777 /home/samba/exchange注意这里权限是1777,类似的系统目录/tmp也具有相同的权限,这个权限能实现每个人能自由写文件,但不能删除别人的文件这个要求
[exchage]
comment = Exchange File Directory
path = /home/samba/exchange
public = yes
writable = yes
[public]
comment = Read Only Public
path = /home/samba/public
public = yes
read only = yes
三、Window用户访问
Thanks
http://blog.chinaunix.net/uid-23069658-id-3142052.html
http://www.cnblogs.com/mchina/archive/2012/12/18/2816717.html
http://blog.csdn.net/w657395940/article/details/20312053