Samba的权限
通过对上节的学习,我们已经可以对用户的访问行为进行有效的控制了。本节介绍对于允许访问的用户如何设置权限。
假想:账户tom对某个共享目录有完全的控制权限,其他账号只有只读权限。对于这种情况,可以使用write list字段实现。
write list=@mez.tom
browsebale=yes
这里表示的是该共享目录只有tom用户和mez组可以完全控制,其他的只能有只读权限
writable=yes/no 表示允许/拒绝所有账号的写入
write list 允许列表中的账号写入
隐藏Samba共享目录
出于安全考虑,有时会让客户端无法看到某个共享目录,这样只有管理员或者一些重要人士知道Samba服务器上有这样一个目录,而其它人员并不知道这个目录。
通过browseable字段可以实现该功能(browseable=no)
这里我们发现mez那个文件夹不见了
那么,换一下思路,如果只有特定用户看到该目录,其它人看不到该目录应该怎样做呢?
原来,在Samba的配置文件中,不提供字段允许部分人浏览目录功能,所以如果要实现上面的要求,就要换一种方式。
可以根据不同需求的用户或组,分别建立配置文件并单独配置,实现隐藏目录的功能,这里,为tom账户建立一个配置文件,并且让其访问时能够读取这个单独配置的文件。
1.建立独立配置文件
用cp命令复制主配置文件,为tom用户建立独立的配置文件
然后我们编辑主配置文件
这里面的%U代表当前登录用户,命名规范与独立配置文件匹配
然后我们再编辑我们复制的独立文件
重启服务
然后我们继续在win7来访问
这里我们又看到了这个mez文件夹
最后,小编再来补充一下
linux客户端访问Samba服务器
使用smbclient命令,先要确保客户端已经安装了samba-client这个rpm包。当系统确认安装后,就可以使用此命令连接服务器了。
当查看192.168.10.6的共享目录列表时,提示输入密码。若不输入密码直接按回车键,则表示匿名登录。然后,就可以显示出共享目录列表
如果想使用Samba账号去查看服务器共享了什么目录,可以加-U参数,后面跟用户名%密码
注意:不同的用户使用smbclient浏览的结构可能不同,根据服务器的设置而定
Samba打印机共享
在现实中,无论任何机构或企业都不可能为每台计算机都配置一台打印机。如果这样不仅成本浪费太大,而且难以管理。企业往往会使用一台或多台计算机去做打印服务器,这样不但节约成本,而且对于管理员来说也便于管理和维护。
Samba服务器提供强大的打印机共享功能,再加上linux出色的性能,完全可以提供良好的打印服务。在默认情况下,Samba的打印服务是开放的,所以只要管理员把打印机安装好,客户端的用户就可以使用打印机了。
(1)设置global配置项
默认的情况已经启动,根据需求去掉注释进行更改就可以。
(2)设置printers配置项
使用默认设置就可以让客户正常使用打印机。需要注意的是,printable一定要设置成yes。path字段定义打印机队列。可以根据需求自行设置。安装打印机后,必须重新启动Samba服务,否则客户端可能无法看到该打印机。
如果只允许内部员工使用打印机,可以使用valid users,hosts allow或hosts deny字段来实现。