在samba和Windows客户端混合的网络环境中,基于文件扩展名来限制文件访问是非常有效的一种方法。这种方法通常的作用是禁止访问那些被***或者病毒感染的系统的上那些文件。
在samba的配置文件smb.conf文件中,有一个叫veto file的参数用来列出禁止看到和访问的文件或者目录列表。列表中的每个字符串用"/"分隔开。在指定多个文件和目录的时候,可以使用通配符 "*"或者“?”。
但是如果一个包含着veto file的目录要删除了,则需要设置veto files 参数设置为yes。
下面是一个禁止查看和访问.exe,.dll,.com扩展名的示例:
veto files = /*.exe/*.dll/*.com/
有一个和veto file类似的一个参数可以用来隐藏文件,但是区别是隐藏文件仍然可以被访问。
下面是隐藏文件选项的示例:
hide files = /*.exe/*.dll/*.com/
同时需要注意的是,如果在Samba中开启了扫描所有文件和目录的字符串匹配,可能会对Samba服务的性能有一些影响。