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


Samba手册中使用的目录可能会与FreeBSD中的具体目录不一致,这是因为使用Packages Collection或Ports Collection安装的Samba,其软件的安装目录均按照FreeBSD的习惯做了调整,因此会与Samba手册提到的位置不太相同 。
此时,使用SWAT的PASSWORD设置选项可以直接将一个用户加入口令数据库,并打开访问这个用户的许可,对于加密口令的管理更为简便 。因此应该使用SWAT来管理加密口令数据文件,而不必直接使用smbpasswd命令 。
将Samba服务器加入域
使用域代替工作组的好处是,所有的客户能使用同一个认证来访问所有的资源 。虽然域的概念还是一种非常初级的目录服务的概念,但由于Microsoft网络的流行,它的重要性也非常之大 。
在一个以域为认证方式的网络中,可以将Samba加入域中去,以采用与域一致的认证和管理方式 。在一个域中的SMB计算机有各种形式,一种为提供认证服务的域控制器,分为PDC(Primary Domain Controller)和BDC(Backup Domain Controller),另一种为不提供认证服务的成员服务器,还有就是普通客户机 。Samba当前能作为普通成员服务器加入域 。
为了将Samba加入域,首先要为Samba服务器在PDC服务器中创建一个帐户,这个操作就如同为普通NT成员服务器创建用户一样,通过NT服务器的Server Manager for Domain来完成 。
加入NT域的时候首先需要停止Samba服务器的正常工作,使用smbpasswd将这个Samba服务器登记进域,这需要使用:
# smbpasswd -j DOMAINNAME -r SAMBASRV其中DOMAINNAME为域的名字,SAMBASRV为前面PDC上为Samba服务器创建的帐户名,这样Samba服务器就加入了域 。然后需要更改smb.conf的设置:
security = domainworkgroup = DOMAINNAMEpassword server = PDC_name BDC1 BDC2password server设置为这个域内的PDC和BDC的名字 。此后,再次启动Samba服务器,则服务器就为这个域的一个成员服务器了 。
虽然使用域认证方式和服务器认证方式都能让同样的用户访问Samba服务器上的资源,然而对于认证细节是不同的,使用域认证方式能利用域提供的更安全的认证通道 。
设置lmhosts
在Miscrosfot扩展的NetBIOS协议中,可以使用查询设置文件的方法来进行名字解析,这个静态文件为lmhosts 。在Windows下的这个文件位于系统目录中,Samba将其放在与smb.conf相同的目录下,FreeBSD系统中为/usr/local/etc中 。
# Sample Samba lmhosts file. 192.168.1.24WIN95 192.168.1.21NTSRV#20 192.168.1.121 FBSDSRV#PRElmhosts的文件格式与/etc/hosts文件非常类似,也是IP地址/主机名字对,除了这个文件中使用的名字是NetBIOS名字 。此外NetBIOS名字有一个定义属性类别的字节(NetBIOS中的第16个字节),这个属性字节可以在lmhosts中直接设置,以回应特定类别的请求,不设置这个属性,就对应所有类别 。例如上例中的第二项定义的NTSRV,就明确指定了其属性为16进制的0x20 。
此外,lmhosts也支持一些特殊的语法,例如用在一个设置项之后的#PRE选项将使得这项设置在启动Samba时自动载入系统缓冲区中,使得能最先识别 。标准情况下的lmhosts文件在名字解析查询顺序的后部,在经过wins和b-node广播之后才会检查lmhosts设置,而#PRE选项设置的名字就会在此之前进行解析 。
一般情况下不必设置这个文件,因为使用其他方法进行名字查询就足够了,这种方法用于辅助解析的,例如在跨越子网进行浏览,但wins服务器不能提供访问时的一个备份措施 。其中的#PRE方式也能在系统启动时的进行一些初始名字解析设置 。
未完,待续 。。。

推荐阅读