要关闭139端口,与137和138端口一样,可以选择“将NetBIOS over TCP/IP设置为无效”。而要想关闭445端口则必须进行其他工作。利用注册表编辑器在“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters”中追加名为“SMBDeviceEnabled”的DWORD值,并将其设置为0,然后重新起动机器。
.NET中安全策略改变了吗? 就像在此之前所讲的那样,直接在默认设置条件下使用现有的Windows将会出现各种各样的危险。这是因为Windows是为了让初学者不需进行复杂设置就可以使用而开发的。
比如Windows 2000 Server,在安装该系统时,会自动安装IIS。而且只需起动个人电脑,IIS服务就会启动。虽然Windows NT 4.0 Server可以选择是否安装IIS,但在默认条件下该服务的复选框是有效的。与2000一样,在起动电脑时,IIS服务也会自动起动。
而Linux则在很多方面都采取的是完全不同的思路。比如,RedHat Linux 7.3在安装过程中必须让用户设置防火墙。由于防火墙有“高”、“中”、“低”三种等级,因此所拦截的信息包也各不相同。如果选择“高”将关闭53(DNS)、67和68(DHCP)以外的全部端口,如果选择“中”,尽管会打开1024以上的端口,但在一般人熟知的端口中打开的只有53、67和68三个。
安装应用程序时的作法也不同。RedHat Linux 7.3在安装时可选择“工作站”、“服务器”和“桌面”三种类型。因此即使选择“服务器”,如果用户不选择构筑兼容Windows的文件服务器“Samba”和Web服务器“Apache”等,就不会进行安装。另外,即便安装以后,也不会直接起动。如果用户明确地启动必要的服务后,没有设置利用过滤软件过滤信息包,相应端口就不会打开。
如果只考虑方便性,Windows要更好一些。这是因为即便不进行复杂的设置,系统也能够自动起动各种服务。但这样一来,就甚至极有可能起动用户不希望起动的服务,而且这些服务往往还是在用户不知晓的情况下起动的。可以这样说,如果希望安全地运行服务器,或者希望保护自己的客户端个人电脑免受危险,那么最好不要随便安装和设置。
美国微软也提出了“值得依赖的计算”(Trustworthy Computing)的计划,并计划利用定于2003年初开始上市的“Windows .NET Server”实现“默认安全”。与Windows 2000不同的是,将不再标准安装IIS服务。即便增加了IIS组件,OS起动时该服务也不会自动运行。
不过,如果只要使用测试版,135、137、138、139和445端口在默认条件下就是打开的。另外,从Windows XP开始导入的“因特网连接防火墙(ICF)”的使用在默认条件下也是无效的。要想在默认设置下实现与Linux相同等级的高安全性,可以说最稳妥的方法是将ICF设置为有效,然后用户再根据自己的需要,选择起动的服务。