首先,我不得不先介绍微软新出的一个安全基线分析工具,当我第一次使用它的时候,简直没法形容我当时的欣喜之情,就三个字:“帅呆了”,话不多说,还是让大家先领略一下它的丽人风姿吧,先赶紧到http://download.microsoft.com/download/8/e/e/8ee73487-4d36-4f7f-92f2-2bdc5c5385b3/mbsasetup.msi下载并安装、运行,图一是它的效果:
图一
图一就是用它对我的机器进行扫描后出现的结果,不看不知道,我的机器上还有这么多的补丁还没有打,那怎么办?赶紧打上吧,还等什么,点击图一中出现错误的那一项的“Result Details”,出现详细的描述,然后有下载修正补丁的网址,接下来你就知道该怎么作了吧?。是不是很方便呢?尤其对于作网站管理的人来说;
其次安装Microsoft Systems Management Server和SMS SUS Feature Pack(软件升级服务、补丁下载更新工具包)这两个工具是必需的。它可以帮助你在安装有SMS的工作站和服务器上利用SMS SUS Feature Pack安装安全补丁而不影响正常开展日常业务,并且保证你的系统永远处于最新状态;
最后,还有一些其他工具,比如Qchain、Adtest、IIS Lockdown、URLscan等,就不一一介绍。
以上工具只是帮助我们快捷地分析问题,解决问题还得靠我们自己,所以在这里,我想就如何打造一个安全的WEB服务器发表一些我个人的见解和看法,不当之处望各位批评指点。
1。禁用NETBIOS和SMB
描述:
在WEB服务器和域名系统(DNS)服务器中不需要这两个协议,所以应当禁止这两个协议。NETBIOS的端口和名称对照:UDP/137(NETBIOS名称服务)、UDP/138(NETBIOS数据报服务)和UDP/139(NETBIOS会话服务);SMB使用的端口:TCP/139和TCP/445。
解决方法:
禁用SMB:卸载“Microsoft 网络客户端”和“Microsoft网络的文件和打印机共享”;
禁用NETBIOS:在“设备管理器”上选“显示隐藏的设备”,然后展开“非即插即用驱动程序”,右键点击“Netbios over Tcpip”,在它的“属性”设置对话框中把它的“启动类型”改为“手动”,然后单击“停止”。
2。使用IPSec安全策略保护你的服务器
一:设置“审核策略”
打开“MMC”控制台,添加“本地计算机策略”,展开,再依次展开“计算机配置”--〉“Windows 设置”--〉“安全设置”--〉“本地策略”--〉“审核策略”,如图二所示:
图二
选择图二右侧列表框中的审核事件,双击,然后在它的属性对话框中选择审核的操作对象。
二:配置IP安全监视器
运行“ipsecmon”(在Windows2003中打开控制台,添加“IP安全监视器”管理单元),在“属性”对话框中设置自动刷新间隔,这个自己定好啦。
三:使用本地计算机已有的IP安全策略
如图二,选择“IP安全策略,在本地计算机”,然后在右边的列表框中可以看到有“服务器(请求安全)”、“客户端(仅响应)”和“安全服务器(需要安全)”三项,右键“安全服务器(需要安全)”,选择“指派”。运行“cmd”,ping一下你已指派安全策略的ip地址,如图三所示:
图三
可以看到我们设置的安全策略已经在这个IP上启用,然后打开IP安全监视器,在统计信息我们可以看到诸如接收和发送等详细信息,然后我们再启动“cmd”,ping另一个ip,如图四所示:
图四
可以看到在两个IP之间产生了四次成功回复信息,然后我们再打开“计算机管理”,同样是在“MMC”中添加“计算机管理”管理单元,展开“系统工具”--〉“事件查看器”--〉“安全性”,双击“审核成功”事件,看到我们刚才两个IP之间通话的详细记录。
四:在你的机器上定义安全服务器策略
上面设置的默认IP安全策略,可能会让你的安全服务器端不能正常的与客户端或DNS域名系统建立连接,这是因为在进行任何的通信连接之前,安全服务器都要严格地检查所有欲与安全服务器进行通话的IP数据包来确认它的有效性,所以还必须根据你的安全需求和网络布局自定义安全服务器策略。
五:允许非IP安全策略的客户端与你的安全服务器通话(这也只是在同一个域中的另一台机器)
在这种情况下你可以设置指派“服务器(请求安全)”策略来代替指派“安全服务器(需要安全)”策略。
六:创建一个自定义的IP安全策略
前面讲的都是使用计算机已有的IP安全策略,它在同一个域中的计算机之间可以建立有效安全的通信,但是,如果是两个不同的域用户或者你的服务器需要让外部客户端匿名访问你的时候,这种IP安全策略将会让你的通信受到限制。所以,接下来,你就应该为所有的客户端创建一个IP安全策略。
1.右键点击“IP安全策略,在本地计算机”,选择“创建IP安全策略”,如图五所示:
图五
点击“下一步”,输入自定义的IP安全策略名称,点击“下一步”,在出现的对话框清除“激活默认响应规则”,再点击“下一步”,确认“编辑属性”选中,默认情况下是选中的,然后点击“完成”,在出现的策略属性编辑对话框确认右下方的“使用“添加向导””被选中,然后点击“添加”创建IP安全规则,出现如图六所示:
图六
点击“下一步”,选择“此规则不指定隧道”,点击“下一步”,接下来选择“所有网络连接”,点击“下一步”,在IP筛选器列表中点击“添加”创建一个IP筛选器,在弹出的对话框确认“使用添加向导”被选中,点击“添加”,出现添加向导对话框,点击“下一步”,选中“镜像”,再点击“下一步”,在下拉框中选择“我的IP地址”,点击“下一步”,在下拉框中选择“所有IP地址”,点击“下一步”,选择协议类型为“任意”,点击“下一步”,确认清除“编辑属性”,点击“完成”,关闭创建IP筛选器对话框,回到创建IP规则向导,选择刚创建的IP筛选器,点击“下一步”,确认“使用添加向导”被选中,然后点击“添加”,在出现的添加筛选器操作向导中点击“下一步”,输入筛选器操作名称,点击“下一步”,选择“协商安全”,点击“下一步”,选择“不与不支持IPSec的计算机通讯”,点击“下一步”,选择“仅保持完整性”,点击“下一步”,确认“编辑属性”没有选中,点击“完成”,关闭添加筛选器操作向导,回到筛选器操作对话框,选择刚创建的筛选器操作,点击“下一步”。
2.配置IKE认证方式建立计算机之间的信任连接
Windows 2000下的IKE提供三种方式在计算机之间建立信任关系:Kerberos v5、 CA证书和预共享密钥。在此文中我使用预共享密钥,目的仅是为了测试用,对于一个企业,应该采取CA证书认证方式建立通信连接。如图七所示,选择“使用此字符串保护密钥交换(预共享密钥)”
图七
点击“下一步”,确认“编辑属性”没有被选中,点击“完成”,自定义的IPSec策略创建完成。
3.在运用此策略到你的网络上你应该首先测试一下
在控制台的“IP安全策略,在本地计算机”的右侧列表栏,选中你刚创建的IP安全策略,并把它指派给你的服务器,然后运行“cmd”,ping一下任意一台计算机,你会收到“协商IP安全”响应,再次ping对方机器,你就会收到四次成功的响应。说明IPSec可以运用到你的网络上去。同样,你可以使用IP安全监视器查看你的网络情况。
七:使用CA认证
前面已经提到CA认证是IKE协商的一种方式,现在介绍一个测试用的CA证书,把它运用到你的WEB服务器上。
1.获得证书
现在很多CA网站可以提供收费的服务器证书,不过价格比较高,本文为了说明如何使用CA证书,所以就找了一个免费的测试证书,大家可以到https://testca.netca.net/apply_srv/srv_root.asp上去获得一个免费的测试证书。
2.安装证书
打开IIS信息服务管理器,打开要安装证书的站点的属性,选择“目录安全性”,点击“服务器证书”安装获得的证书。
3.设置你的服务器证书
在MMC控制台添加“证书”管理单元,展开“个人”--〉“证书”,双击你安装你的服务器证书,如果你看到有如下消息“您有一个与该证书对应的私钥” 和证书颁发机构名称,说明你的CA证书有效,否则,你就要重新申请和安装CA证书。在控制台展开“受信任的证书颁发机构”--〉“证书”,找到给你颁发证书的颁发者,按上面的步骤给你所有的机器装上CA证书。然后回到“IP安全策略,在本地计算机”,双击右侧IP策略列表中你创建的IP策略,在出现的对话框中选中IP安全规则中你创建的IP筛选器,单击“编辑”,在“编辑规则 属性”对话框中切换到“身份验证方法”,选择你创建的身份验证方法,点击“编辑”,然后选择“使用由此证书颁发机构(CA)颁发的证书”,点击“浏览”,在弹出的对话框选择你安装的证书名称,点击“确定”,回到“编辑规则 属性”对话框,点击“确定”,回到“IP安全策略 属性”对话框,点击“确定”,这样,就给你的IP安全策略使用上CA证书认证协商通讯方式。
注意的是你应该在你的第三方根证书颁发机构证书列表中尽可能多地添加根证书颁发机构名称,这样在你与同等证书请求中不会产生协商失败的错误
八:使用CRL校验IKE
打开注册表编辑器,找以下HKEY_LOCAL_MACHINE/system/CurrentControlSet/Services/PolicyAgent/Oakley注册项,然后在右侧的编辑框中找StrongCRLCheck值,如果设为1,表示如果CRL校验返回证书失效,CA证书认证的IKE协商方式将不起作用;如果设为2,表示如果CRL校验失败,不管是什么原因,CA证书认证的IKE协商方式都将不起作用。在Windows 2000下使用net start policyagent和net stop policyagent启用和停止这个服务。
九:启用IKE日志
打开注册表编辑器,找以下HKEY_LOCAL_MACHINE/system/CurrentControlSet/Services/PolicyAgent/Oakley注册项,然后在右侧的编辑框中找EnableLogging值,把它设为1。然后你就可以在系统目录下的Debug目录下找到Oakley.log文件。
待续