68 FreeBSD连载:根据Windows网络设置Samba

根据Windows网络设置Samba使用SMB协议实现的网络的情况非常不同,有的网络仅仅由几台Windows计算机组成,只需要提供计算机之间最简单的资源共享,并不需要一个中心控制点 ── 文件服务器提供服务,而有的网络由多个物理网络通过路由器连接而成,网络中拥有多种文件/打印服务器,网络中的操作系统也各不相同,包括Windows和Unix 。
Samba服务器能适应这些不同要求的网络的不同要求,然而由于网络的需要各不相同,因此对Samba的设置也不相同 。如何根据需要来规划网络、设置Samba是一个灵活但复杂的问题,同时存在各种各样的设置方式都能满足用户的需要,这里给出的只是一种可行性建议 。
小型网络,无NT服务器
这种网络的特征是网络资源的使用程度不大,通常所有的计算机都位于一个局域网内,几乎没有专用文件/打印服务器 。所有的计算机均使用工作组方式相互访问 。此时使用Samba服务器的目的是为了更好的利用网络资源,提供方便的文件/打印服务 。
在这样的网络中,仅仅需要最简单的文件/打印共享服务 。虽然共享级认证方式能够满足此时的需要,但是最好使用用户级认证方式,因为只有这样才能充分发挥服务器提供服务的优势 。需要为每个使用者在FreeBSD服务器上分别建立帐户,这样缺省设置就自动为用户共享其个人目录,用做私人数据的保存 。为了网络用户之间的相互交换数据,可以设定一个公用共享目录,例如上面例子中的[public]共享目录 。
由于Samba服务器具有优秀性能,最好将Samba服务器设置为本地的Browser,仅需要设置localmaster参数,并给os leverl一个较大的值就能达到目的 。可以不使用nmbd的名字解析能力用做名字服务器,因为此时都在一个物理网络内,b-node广播方式能够提供正确的解析 。
【68 FreeBSD连载:根据Windows网络设置Samba】当为Windows 98或者Windows NT SP3提供认证的时候,它们将使用加密过的口令进行认证,这能提供更大的网络安全性 。Samba服务器也能提供这种认证,然而对于这样的小型网络,使用原有的非加密口令认证方式就足够了,因为口令不会跨越网络传输,安全问题限制于本地网络内部 。在Samba的文档中,提供了将Windows98或Windows NT SP3设置为原有认证方式的注册表信息,分别为/usr/local/share/examples/samba目录下的Win95_PlainPassWord.reg和NT4_PlainPasswor.reg文件 。
小型网络,与NT服务器相互协作
这种网络中存在一个或几个Windows NT服务器,因此网络中的关键问题是认证的策略问题 。有的网络中使用分散式的认证策略,即各个服务器各自认证使用自己资源的客户,适合网络上服务器属于不同管理者的情况,另一种情况是希望在访问多个服务器时使用一致的认证,无论是在NT服务器还是在Samba服务器,对于同一个用户只需要使用一个口令就能使用网络资源 。
当使用分散认证策略的时候,Samba服务器可以使用缺省设置security=user,当要求Samba服务器和NT服务器认证同样的用户的时候,可以使用security=server,让NT服务器来认证用户,此时还需要设置password server的名字,以设置提供认证的NT服务器的名字 。
由于是使用NT服务器对用户进行认证,然而NT上的用户与FreeBSD用户的名字可能不同,为了将NT用户重新映射到FreeBSD上的Samba用户,就需要进行用户名的映射 。这需要使用username map参数,这个参数设置一个用于用户名映射的文件名,在这个指定的文件中,可以设置FreeBSD用户(或用户组)等价于哪个NT用户(或用户组) 。
具备多个物理网段的网络
如果用户的网络跨越了多个物理网络,为了实现浏览,最重要的问题就是设置使用名字服务器进行名字解析 。此时可以选择使用Samba的nmbd作为名字服务器,也可以使用Windows NT的WINS服务器作为名字服务器 。

推荐阅读