人们之所以要搭建家庭网络,首要的原因恐怕是共享Internet连接,Windows XP Pro和Home都直接提供了这方面的支持;另一个原因就是为了文件共享。
但是,如果你曾经仔细考虑过这方面的问题,就会发现事情不是那么简单。例如,既要能够方便地从任何一台PC访问所有资源,又要防止家里的小孩随意操作股票软件——这就要求文件共享只对家庭内的一部分成员开放。对于这个要求,Win9x能够满足,允许为共享资源设置密码;大多数Win NT家族的操作系统也能够满足,允许为各个用户和组设置访问权限——只有一个例外,那就是Windows XP Home版。如果你打算建立家庭网络,在决定选用Windows XP Home版之前,务必仔细斟酌。
一、缺乏安全保护的共享文件夹
Windows XP Home版为共享文件夹设计了一种微软称之为“简单文件共享”的技术。打开任意文件夹“属性”对话框的“共享”选项卡,如图一所示,可以看到这里的选项与以前的Windows大不相同。虽然通过图一的对话框可以禁止用户修改共享文件夹里面的文件,但缺少其他版本的Windows都提供的授权选项。
图一
由于Windows XP Home不允许设置共享文件夹的密码,所以要么让文件夹对所有的人都开放,要么对所有的人都不开放。显然,这不能满足大多数家庭网络用户的要求,因为一旦设置了文件夹的共享属性,就没有办法阻止任何人访问它。
如果某个文件夹属于用户的私有配置文件(例如“我的文档”),“简单文件共享”功能允许为该文件夹加锁,只要选中“将这个文件夹设为专用”选项即可。启用这个选项可以防止其他用户访问该文件夹,但它要求文件系统必须是NTFS。另一方面,在NTFS文件系统中将文件夹设置为专用之后,用户就不能再从远程PC访问它。
在使用NTFS的PC上,Windows XP Home允许分别为用户授权,就象在Windows XP Pro或Win 2K中一样。问题在于,在Windows XP Home的NTFS卷中,驱动器或文件夹的“属性”对话框没有“安全”选项卡。设置权限的唯一办法是以Administrator身份登录,而这只能在安全模式下进行(以安全模式启动系统的方法是:启动系统时按住F8键,然后选择带网络连接的安全模式)。用Administrator身份登录系统之后,打开共享文件夹“属性”对话框的“共享”选项卡,点击“权限”。如图二所示,在这里可以为网络中的用户和组分别设置完全控制、更改、读取权限。如果要为不包含在列表中的用户设置权限,点击“添加”、“高级”、“立即查找”,从用户列表(只包含本地用户)选择一个用户,然后设置其权限。
图二
有人说,即使在FAT32系统上,也可以按照上述步骤设置权限。没错,Windows XP确实会让你顺利地完成每一步操作,而且你看到的对话框也和前面的完全一样——但问题在于,对于FAT32,这些设置不会生效。FAT32系统不允许按照这种方式分别授权,但它也不会在你设置的时候提示错误信息。
对于远程文件访问,Windows XP Home的主要困难在于:Windows XP Home的网络是P2P网络(即对等网络),而不是构建在域里面的网络。由于缺乏域服务器,文件的授权面向本地用户名字,而这些本地用户名字对于每一台PC来说是唯一的。例如,假设名为GAME的机器上有一个用户WuKong,则用户的完整名字是GAMEWuKong。但是,如果WuKong登录另一台机器WORK访问GAME,则他是WORKWuKong,WORKWuKong和GAMEWuKong被认为是两个不同的用户。在P2P网络中,不存在“网络级”的用户。如果要让用户的权限在整个网络内有效,就必须有一个全局的名称目录,而这只有在拥有域服务器的网络中才有可能。
因此,即使在采用NTFS文件系统的Windows XP Home中,访问权限设置也只在本地有效,因为所有网络用户都以Guest帐户远程登录。作为一种变通办法,可以通过设置Guest帐户密码的办法保护共享文件夹,操作步骤如下:
⑴ 以管理员身份登录系统。选择菜单“开始->设置->控制面板”,选择“用户帐户”,点击“Guest来宾帐户”。确保该帐户已经启用。
⑵ 选择菜单“开始->运行”,输入cmd,按Enter键,进入命令行状态。在命令行环境中执行Net user guest password命令。
⑶ 返回控制面板中的“用户帐户”设置界面,选择Guest帐户。现在可以给Guest帐户设置密码了。设置好密码之后,重新启动机器。
二、过于简单的防火墙
Windows XP内建了一个简单的防火墙。用网络向导配置网络以及共享Internet连接时,Internet连接防火墙(Internet Connection Firewall,ICF)自动启用。
ICF禁止所有未经请求而主动提供的传入通讯,但不会处理传出的通讯(这就是说,如果这台PC上有病毒在向外发送消息,ICF不会理会)。由于Windows XP的防火墙不区分来自Internet的传入通讯和来自LAN其他节点的传入通讯,所以ICF和家庭局域网之间存在冲突(严格地讲,用户可以配置ICF,为特定的系统服务打开某些端口,不过这部分操作比较复杂,此处不再赘述)。
要解决这个问题,一种简便易行的方法是在安装了Internet连接并提供连接共享的PC上安装两块网卡。假设Internet连接使用的是ADSL,则一块网卡连接到DSL调制解调器,启用ICF;另一块网卡连接内部网络,禁用ICF。
如果所有局域网上的PC和ADSL调制解调器都接入同一个Hub,还有另一种行之有效的方法,就是为内部网络安装一种非TCP/IP的协议,NetBEUI协议是一种理想的选择,既小巧又快速。在以前的Windows中,NetBEUI作为默认支持的协议,只要稍微点击几下就可以完成安装。Windows XP的网络协议列表不再列出NetBEUI,但Windows XP的CD仍包含了安装NetBEUI协议需要的文件。这些文件在ValueaddMSFTNetNetBEUI文件夹下,把Nbs.sys文件复制到WindowsSystem32Drivers目录,把Netnbf.inf复制到WindowsInf目录。然后在控制面板中,打开“网络连接”,选择接入内部网络的连接并打开它的“属性”对话框。在“常规”选项卡中,依次选择“安装”、“协议”、“添加”,然后选择NetBEUI协议。在这种配置方案中,ICF将继续禁止本地网络的TCP/IP通讯,但现在本地网络的通讯可以通过NetBEUI完成了。
最后一种方案是禁用ICF,加装带内建防火墙的路由器,或安装一个第三方的防火墙,例如Norton Internet Security或Sygate Personal Firewall等。这些产品均提供比较完善的功能和配置选项,只要条件许可,应当优先选用这些产品,放弃简单的ICF。
和以前的Windows版本相比,Windows XP的稳定性对家庭用户有着极大的吸引力,丰富的多媒体功能更使许多人心动。尽管如此,严格地讲,Windows XP Home版从许多方面来看只能算是一个功能简化的版本。打算建立家庭网络的用户应当注意Windows XP Home在局域网支持方面的不足,如有必要,可以换用Windows XP Pro甚至以前的Windows版本。