samba总结
一、作用
实现Linux和Windows进行文件共享的一个服务器组件,主要是windows访问Linux。
二、搭建
yum install samba -y
三、配置
1.通过网页进行配置
(1)yum install samba-swat -y
(2)chkconfig swat on
(3)vi /etc/xinetd.d/swat
#only_free
(4)/etc/init.d/xinetd restart
(5)http://ip:901
2./etc/samba/smb.conf(如有写错,将会忽略)
workgroup = workgroup
log file = /var/log/samba/log.%m
(1)设置共享目录(自由组合)
[共享名] #用户可看见的名称
comment = <strings> #共享目录的注释信息
path = <绝对路径> #共享出来的目录(必须有)
browseable = <yes|no> #用户登录后,是否对其可见(\\ip\共享名)
|
guest ok = <yes|no> #
valid users = 用户,…,@组,… #可访问的用户(组)列表
invalid users = 用户,…,@组,… #禁止访问的用户(组)列表
|
read list = 用户,…,@组,… #只读的用户列表
writable = <yes|no> #是否可写
write list = 用户,…,@组,… #可写的用户列表
|
directory mode = <xxxx> #在共享目录中,创建目录时的权限
admin users = 用户1,…,用户n #指定共享目录的管理员(拥有其全部权限)
注:write list :会覆盖用户原有的权限,即使原先只有读的权限。
(2)用户账号的映射(隐藏真实的用户)
①vi /etc/samba/smb.conf
username map = /etc/samba/smbusers
②vi /etc/samba/smbusers
格式:系统用户 = 虚拟用户1 … 虚拟用户n
③/etc/init.d/smb restart
注:登录方法,< 虚拟用户>和<原用户的密码>
(3)访问控制
|
②局部[共享名] hosts allow =
| | | |
| |
| |
| | ||
|
模板:
注:全局>局部,allow>deny;先拒绝,后允许
(4)权限问题
①文件系统的权限
②samba的权限
注:用户的最终权限=目录本身的权限和samba权限的最小交集
四、命令
1.smbpasswd [options] 系统用户 #管理samba用户,无选项,则修改密码
-a :增加用户
-d :禁用用户
-e :启用用户
-x :删除用户
2.smbstatus #查看连接状态
3.testparm #检查配置文件是否正确
4.smbclient -L $ip -U 用户%密码 #查看samba服务器的共享目录
5.smbclient //ip/共享目录 -U 用户%密码 #登录到共享目录中
五、访问samba服务
(1)Windows------>Linux
①进入<运行>或<文件夹>
②输入\\ip
(2) Linux------>Linux(少用)
smbclient -L $ip -U 用户%密码 #查看samba服务器的共享目录
smbclient //ip/共享目录 -U 用户%密码 #登录到共享目录中
六、samba的安全级别
samba的安全级别分为5种:share、user、server、domain、ads,其中user为默认,均在[global]中设置。
security = <share|user|server|domain|ads>
(1)share(匿名登录,不推荐)
客户端在连接samba服务器时,不需要输入用户名和密码,以nobody用户进行登录,其共享的文件夹一般是nobody,即(chown -R nobody:nobody 文件夹),权限一般为只读。
vi /etc/samba/smb.conf
[global]
security = share
[共享名]
path = <…>
browseable = yes
public = yes
read only = yes
…
(2)user(认证)
①用户登录必须要输入用户名和密码,加密口令,进行传输。
vi /etc/samba/smb.conf
[global]
security = user
encrypt passwords =yes
smb passwd file = /etc/samba/smbpasswd
②user认证下的匿名登录
同样会显示登陆窗口,但不会验证用户输入的是否正确,即用户可以输入任意的用户名和密码,权限一般为只读。
vi /etc/samba/smb.conf
[global]
security = user
map to guest = bad user
[共享名]
path = <…>
public = yes
writable = no
…
七、一般步骤
①创建所需要的组。(groupadd)
②创建所需要的用户,并将其加入对应的组中,在加为samba的用户。
|
smbpasswd -a 用户名)
③创建所需要的目录。(mkdir)
④设置目录的所属用户和所属组。(chown)
⑤设置目录的权限。(chmod)
⑥配置samba,将共享目录设置正确。(vi )
⑦启动服务。