我们来讨论Web 服务器的安全性设置。这包括NT Server的安全性、数据库SQL Server的安全性和IIS的安全性。
注意安装的顺序
请你最好按下面的次序安装所有的软件:
1、 安装NT Server4.0,最好安装成“独立服务器”。
2、 安装NT service Pack 3.0
3、 安装Option Pack 4.0
4、 安装NT Service Pack 4.0或者更高补包
5、 安装SQL Server 7.0
NT Server的安全性
NT被认为是因特网上最脆弱的操作系统。由于微软的NT几乎每一周就会发现一个新的Bug,所以,NT的安全性是可想而知了。解决NT的安全性配置问题,有时候甚至比设计一个电子商店更加具有挑战性。
我在此也只能介绍我自己的一些心得和体会。如果你要得到更好的安全配置,你可以访问一些关于安全的讨论组,并经常关注微软的补丁程序。
将NT Server安装成独立域服务器
在安装NT 时安装程序提示你选择三种安装类型:
1. 主域控制器
2. 备份域控制器
3. 独立服务器
请选择3。在因特网上没有必要安装成域名服务器。
将缺省的账号重新命名或者锁定
系统账号包括Administrator和Guest是在安装时自动设置的。许多黑客就是通过截获这些账号或者猜测这些账号的密码,从而进入你的系统。所以建议你把这些账号重新命名或者干脆停用。
这些操作可以在“管理工具”>>“域用户管理器”中完成。
账号规则非常重要
在域管理器中由一个菜单项“账号规则”,选择之就可以配置账号规则。在设置这些规则时,要保证:
1、不允许空的密码,并设置密码的最小长度
2、当出现登录失败若干次后,应该锁定该账号。这便于防止一些黑客利用某些软件来猜测密码。
系统策略编辑器
NT Server的系统策略编辑器非常有用。按“管理工具”>>“系统策略编辑器”就可以进入,然后选择“文件”>>“打开注册表”,并选择“本地计算机”图标,就可以认真配置了。主要要设置下面几项:
1、取消:网络>>系统规则更新>>“远程更新”
2、取消:Windows NT 网络>>共享>>创建隐藏的驱动器共享
3、设置:Windows NT远程访问下面的各项。
4、设置:Widows NT系统>>登录中各个项目。包括设置登录标记;不允许从“身份验证对话框”关机;不显示上次登录的用户名。
5、设置:Widows NT系统>>文件系统中的“不为长文件名创建8.3文件名”。
禁止启动时列表显示
在“我的电脑”图标上点右键,选择“属性”,就进入“系统特性”设置。选择“启动/关闭”项目,然后设置列表显示的时间为0秒。
在此页面,你还可以设置系统“故障/恢复”的有关选项。
删除“网络”中的“NetBios接口”
为了使你的服务器比较安全,安装最少的服务是降低安全风险的好办法。所以我一般要去掉“网络”中“NetBios接口”服务,这样,我就只安装了四个服务:
1、RPC配置
2、服务器
3、工作站
4、计算机浏览器
请记住:服务越少越安全!
小心配置TCP/IP协议
同样的道理,我们要安装尽可能少的协议。千万别安装点对点通道通讯协议。此外,你还必须小心地配置TCP/IP协议。在TCP/IP的属性页中选择“IP地址”项目,然后选择“高级”按钮,在弹出的对话框中选择“启用安全机制”,并选择“配置”,这时又有一个界面出现。在这里你就可以设置TCP/UDP的端口了。为了安全,你可以禁止使用UDP,然后开启IP端口6和TCP的端口80。当然,开启哪些端口完全由你决定。只有你觉得安全性对你确实不太重要时,你才能开启全部的端口。(每一个端口都有上千个黑客在等候哟!)
不要使用远程管理软件
由于NT不太支持远程管理,所以你可能正打算安装Reachout或者PC Anywhere这样的远程管理软件。可惜的是,如果你安装了这些软件,你将不得不开启TCP/IP的所有端口,这样你才能使用这些软件。所以我的建议是,不要安装这些软件。
随时记住:锁定你的计算机
在你离开服务器以后,记住按下“Ctrl+Alt+Del”,并选择“锁定工作站”。如果你使用远程管理,在结束之前,特别要注意“锁定工作站”。
把所有的硬盘分区设置为NTFS
建议你从光盘安装系统。这样你可以对硬盘进行NTFS分区并做一个全新的安装。有许多朋友是这样安装系统的:
首先开机即如DOS,运行FDISK,格式化C:盘,然后运行如下命令:
WinNT /B
这是非常不安全的安装方法。请一定从光盘开始安装,并在格式化硬盘时选择NTFS。因为只有NTFS才能更好地进行安全性配置。
SQL Server的安全性
SQL Server中保留了商店的所有交易数据,这些数据如果落入了竞争者的手里,那就不会得到我们想要的结果;而如果有人进入了SQL Server,他会不会删除你的数据?会不会修改你的数据?。。。后果是可怕的。
小心地配置NT,小心地配置SQL Server!
安装远程数据库管理有风险
SQL Server支持从远程进行数据库的维护。在安装时你可以选择不安装,安装完成以后,你还可以通过“SQL Server Network Utility”来删除远程管理。如果你要使用远程管理,请使用TCP/IP,并将缺省的端口1433改变为其他的数值。
使用远程管理对你可能比较方便,但同样也方便了黑客。一个Hacker只要知道你的SQL Server密码,就可以轻易地进入你的数据库,并窥探你的商业数据。
改变sa的密码
缺省安装时,SQL server的sa账号没有密码。你必须改变这一状况。通过SQL Server的Enterprise Server,可以改变sa的密码。(分支:Sql Server Group>>你的机器名>>Security)
进入SQL Server提示输入用户名和密码
在Enterprise Server中,在机器名分支上点右键,然后就可以编辑SQL Server的属性。请在弹出的对话框中选择:
Always prompt for logins and password
数据库的登录账号不要写入ASP页面
有许多人会看到你的ASP页面,其中包括黑客。我们不赞成将核心的商业代码写入ASP程序,同样,我们也不赞成将数据库的账号等重要信息写入ASP。实际上,这是非常危险的。国内的许多站点,包括一个吹的很厉害的电子商务站点,它的数据库密码可以很轻易地得到。