随着越来越多的Windows NT Server升级到Windows 2000 Server,Intemet代理服务器软件也由过去的WinGate、SyGate和Proxy Server过渡到了ISA Server 2000。ISA Server集防火墙、Web缓存及代理服务于一身,功能强大,是企业环境下多机共享网络资源的上佳之选。ISA Server的一个特点就是其详细的安全和访问日志。本文介绍如何将ISA Server的安全和访问记录导入SQL Server 2000数据库,并充分利用SQL Server强大的数据库管理功能实现对ISA Server活动情况的管理。
1.运行环境及准备工作
ISA Server只能运行于Windows 2000 Server环境下,假定用户已在基于Windows 2000
Server的服务器上按“防火墙+缓存”的集成模式安装并配置了ISA Server,则ISA Server自身可通过日志文件记录系统安全和访问情况,包括数据包筛选器日志、防火墙日志、Web
Proxy服务日志3种类型。在默认情况下,系统每天分别为每种服务生成一个日志文件,这些日志文件保存在系统盘的Program FilesMicrosoft ISA ServerISA logs目录下,默认情况下只保存最近7天的日志文件。进入ISA Management控制台中Monitoring Configuration节点的Logs文件夹,双击每个服务日志图标并选择“属性”,可对报告频率、日志文件位置等进行修改。要使用数据库来记录ISA Server的活动,还必须在服务器上安装并配置好SQL Server 2000。为叙述方便,本文中假定SQL Server的名称为INTERNETSERVER。
2.在SQL Sewer上创建日志数据库和数据表
安装并配置好SQL Server 2000后,就可以创建日志数据库和数据表并对ISA Server的安全访问情况进行管理了。首先必须在SQL Server中创建数据库,假定数据库名称是 ISAlogs,按如下步骤操作。
(1)打开SQL查询分析器,在SQL Server下拉列表中选择“INTERNETSERVER”,输入管理员用户名“sa”和密码,并连接到SQL Server。
(2)在查询窗口输入如下Transact-SQL代码,并一次性执行。
USE master
GO
CREATE DATABASE ISAlogs
ONPRIMARY
(NAME=ISAlog_dat,
FILENAME=‘C:Program FilesMicrosoft SQL ServerMSSQLDataISAlogs.mdf,
SIZE=50,
MAXSIZE=100,
FILEGROWTH=1)
LOGON
(NAME=ISAIog_log,
FILENAME=‘CProgram FilesMicmsoft SQL ServerDatakISAlogs.ldf,
SIZE=25,
MAXSIZE=50,
FILEGROWTH=1)
GO
上述代码创建了一个名为ISAlogs的数据库,并定义了主文件逻辑名为ISAlogs_dat,文件初始大小为50MB,最大容量为100MB,文件增长量为1MB;日志文件逻辑名为ISAlogs_log,文件初始大小为25MB,最大容量为50MB,文件增长量为1MB;注意主文件和日志文件的路径都是默认路径,若SQL Server的安装路径不同,则必须根据实际情况设置文件路径。
代码执行后会返回“CREATE DATABASE进程已为文件‘ISAlog_dat‘分配50.00MB空间”和“CREATE DATABASE进程已为文件‘ISAlog_log‘分配25.00MB空间”两条消息,这就说明数据库创建成功了。
在ISA Server 2000光盘的ISA子目录下含有创建数据表所需的三个.sql文件:
pf.sql定义了名为PacketFilterLog的数据包筛选器的数据表和索引;
w3proxy.sql定义了名为WebProxyLog的代理服务数据表和索引:
fwsrc.sql定义了名为FireWallLog的防火墙日志数据表和索引。
在SQL查询分析器的工具条中的数据库下拉列表中选择刚创建的ISAlogs数据库,然后依次打开并执行上述三个sql文件,从而建立相应的数据表和索引。
3.配置ODBC数据源
ISA Server日志内置了通过ODBC访问SQL Server的功能,因此在对ISA Server的日志存储方式进行更改前必须先配置好ODBC数据源,假定数据源的名称为ISAlogs,则操作步骤如下。
(1)单击“开始”→“程序”→“管理工具”,选择“数据源(ODBC)”,进入Microsoft ODBC数据源管理器。
(2)选择“系统DSN”标签,单击“添加……”按钮,在“创建新数据源”对话框的数据库驱动程序列表中选择“SQL Server”,单击“完成”按钮。
(3)在“建立新的数据源到SQL Server”对话框的“名称”栏输入“ISAlogs”,在“服务器”下拉列表中选择指定的SQL Server,本例为“INTERNETSERVER”,单击“下一步”按钮。
(4)在对话框的登录验证方式中选择“使用用户输入登录ID和密码的SQL Server验证”方式以增强安全性,并在“登录ID”中输入管理员的用户名“sa”和密码,单击“下一步”按钮。
(5)在对话框中选中“更改默认的数据库为:”检查框,并在数据库下拉列表中选择新创建的“ISAlogs”数据库,单击“下一步”按钮。
(6)在新出现的对话框中选择默认设置,单击“完成”按钮,出现ODBC配置信息框,单击“测试数据源……”可对上述配置步骤进行检验,测试成功后单击“确定”,完成ODBC数据源的配置,结果
设置ISA Server日志存储方式
以Web Proxy服务为例,单击ISA Server Management中Monitoring Configuration节点的Logs文件夹,双击右边详细信息栏目中的ISA ServerWeb Proxy Service图标,并选择“属性”。在属性设置对话框中的“Log”标签中选择“Database”单选按钮,在ODBC data source[DSN]中输入上文中设置的ODBC数据源名“ISAlogs”,在Table Name中输入数据表名“WebProxyLog”,并单击“Set Account……”按钮,输入管理员用户名“sa”和密码,如图4.2-2所示。数据包过滤器与防火墙日志的设置方法与此相同,注意数据包过滤器的数据表名为PacketFilterLog,而防火墙日志的数据表名为FireWallLog。
全部配置结束后就可以通过数据库对上网访问及安全情况进行管理了,从代理服务器的访问记录,可以查询用户名、登录日期和时间和已浏览过的站点等情况。