Samba简介
samba是一个开放源代码的软件,任何拥有GNU组织通用公共许可证GPL的用户都可以使用,并免费获得他的源代码和可执行文件。
安装和启动
安装samba服务可以使用:yum install samba命令进行安装。
samba有两个守护进程:smbd 和 nmbd 。smbd监听139TCP端口,nmbd监听137和138UDP端口。smbd进程的作用是处理SMB请求包,负责用户验证和文件共享;nmbd进程的作用是处理浏览共享和计算机名称解析。
Samba配置
samba配置文件应存放在:/etc/samba/smb.conf
[global] 设置全局环境选项
[homes] 设置用户宿主目录共享
[printers] 设置打印机共享
[sharefiles] 设置文件共享
Tips:行前有分号“;”或英镑符“#”表示注释
[global] 段主要选项设置
workgroup = 指定工作组或域
server string = 描述
security = 指定安全模式
hosts allow = 限定主机访问
log file = 指定日志文件存放位置
max log size = 指定日志文件大小
Tips:security (share 无权限验证,user 缺省 由linux samba服务器做验证(推荐) ,server 第三方主机验证, domain 第三方主机验证 (第三方必须是windows 域控制器))
[homes]段主要选项设置
comment = Home Directories 描述
browseable = no 没有访问权限的目录不可见
writable = yes 用户对自己的宿主目录是否可写(no只读、yes可写)
准备工作
1、关闭防火墙或者其他安全服务(Netfilter/Iptables、SELinux)
Netfilter/Iptables #iptables -F
SELinux #setsebool -P samba_enable_home_dirs on 这条命令才是正确的
/etc/selinux/config SELINUX=disabled
Tips:确保setlinux关闭,用setenforce 0命令执行。 默认的,SELinux禁止网络上对Samba服务器上的共享目录进行写操作,即使你在smb.conf中允许了这项操作。
2、用户设置
用户必须是系统用户
设置samba验证密码(smbpasswd -a 用户名 —— 给samba用户添加密码; smbpasswd 用户名 —— 修改密码)
实例(设置一个共享目录)
#groupadd share
#usermod -G share suners
#chgrp share /share
#chmod g+w /share
建立一个公共的只读目录/share,所有人可以浏览目录内容
[share]
comment = Read Only Public
path = /share
writable = no
建立部门资料共享目录/share ,部门每个人都能读写,但不能删除别人的文件
[share]
path = /share
valid users = suners (多个用户用空格隔开)
wirtable = yes
#chmod 1777 /share
Tips:win7 要断开连接可在CMD窗口输入:net use * /delete /y