重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
一.Windows日志系统 WindowsNT/2000的系统日志文件有应用程序日志AppEvent.Evt、安全日志SecEvent.Evt、系统日志SysEvent.Evt,根据系统开通的服务还会产生相应的日志文件。例如,DNS服务器日志DNS Serv.evt,FTP日志、WWW日志等。日志文件默认存放位置:%systemroot%\system32\config,默认文件大小512KB。这些日志文件在注册表中的位置为HKEY_LOCAL_MACHINE\system\CurrentControlSet\Services\Eventlog,可以修改相应键值来改变日志文件的存放路径和大小。
成都创新互联服务项目包括绥滨网站建设、绥滨网站制作、绥滨网页制作以及绥滨网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,绥滨网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到绥滨省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
Windows NT/2000主要有以下三类日志记录系统事件:应用程序日志、系统日志和安全日志。
1.应用程序日志
记录由应用程序产生的事件。例如,某个数据库程序可能设定为每次成功完成备份后都向应用程序日志发送事件记录信息。应用程序日志中记录的时间类型由应用程序的开发者决定,并提供相应的系统工具帮助用户查看应用程序日志。
2.系统日志
记录由WindowsNT/2000操作系统组件产生的事件,主要包括驱动程序、系统组件和应用软件的崩溃以及数据丢失错误等。系统日志中记录的时间类型由Windows NT/2000操作系统预先定义。
3.安全日志
记录与安全相关的事件,包括成功和不成功的登录或退出、系统资源使用事件(系统文件的创建、删除、更改)等。与系统日志和应用程序日志不同,安全日志只有系统管理员才可以访问。在WindowsXP中,事件是在系统或程序中发生的、要求通知用户的任何重要事情,或者是添加到日志中的项。事件日志服务在事件查看器中记录应用程序、安全和系统事件。通过使用事件查看器中的事件日志,用户可以获取有关硬件、软件和系统组件的信息,并可以监视本地或远程计算机上的安全事件。事件日志可帮助您确定和诊断当前系统问题的根源,还可以帮助用户预测潜在的系统问题。WindowsNT/2000的系统日志由事件记录组成。每个事件记录为三个功能区:记录头区、事件描述区和附加数据区,表14-3-1描述了事件记录的结构。
一.Windows日志系统
WindowsNT/2000的系统日志文件有应用程序日志AppEvent.Evt、安全日志SecEvent.Evt、系统日志SysEvent.Evt,根据系统开通的服务还会产生相应的日志文件。例如,DNS服务器日志DNS Serv.evt,FTP日志、WWW日志等。日志文件默认存放位置:%systemroot%\system32\config,默认文件大小512KB。这些日志文件在注册表中的位置为HKEY_LOCAL_MACHINE\system\CurrentControlSet\Services\Eventlog,可以修改相应键值来改变日志文件的存放路径和大小。
Windows NT/2000主要有以下三类日志记录系统事件:应用程序日志、系统日志和安全日志。
1.应用程序日志
记录由应用程序产生的事件。例如,某个数据库程序可能设定为每次成功完成备份后都向应用程序日志发送事件记录信息。应用程序日志中记录的时间类型由应用程序的开发者决定,并提供相应的系统工具帮助用户查看应用程序日志。
2.系统日志
记录由WindowsNT/2000操作系统组件产生的事件,主要包括驱动程序、系统组件和应用软件的崩溃以及数据丢失错误等。系统日志中记录的时间类型由Windows NT/2000操作系统预先定义。
3.安全日志
记录与安全相关的事件,包括成功和不成功的登录或退出、系统资源使用事件(系统文件的创建、删除、更改)等。与系统日志和应用程序日志不同,安全日志只有系统管理员才可以访问。在WindowsXP中,事件是在系统或程序中发生的、要求通知用户的任何重要事情,或者是添加到日志中的项。事件日志服务在事件查看器中记录应用程序、安全和系统事件。通过使用事件查看器中的事件日志,用户可以获取有关硬件、软件和系统组件的信息,并可以监视本地或远程计算机上的安全事件。事件日志可帮助您确定和诊断当前系统问题的根源,还可以帮助用户预测潜在的系统问题。WindowsNT/2000的系统日志由事件记录组成。每个事件记录为三个功能区:记录头区、事件描述区和附加数据区,表14-3-1描述了事件记录的结构。
表14-3-1 事件日志结构
记录头
日期
时间
主体标识
计算机名
事件标号
事件来源
事件等级
事件类别
事件描述
事件描述区的内容取决于具体的事件,可以是事件的名称、详细说明、产生该事件的原因、建议的解决方案等信息。
附加数据
可选数据区,通常包括可以以16进制方式显示的二进制数据。具体内容由产生事件记录的应用程序决定。
事件标题包含以下关于事件的信息,如表14-3-2所描述。
表14-3-2 事件标题信息
日期
事件发生的日期
时间
事件发生的时间
用户
用户事件发生时己登录的用户的用户名。
计算机
发生事件的计算机的名称。
事件ID
标识事件类型的事件编号。产品支持代表可以使用事件ID来帮助了解系统中发生的事情。
来源
事件的来源。它可以是程序、系统组件或大型程序的个别组件的名称。
类型
事件的类型。它可以是以下五种类型之一:错误、警告、信息、成功审核或失败审核。
类别
按事件来源对事件进行的分类。它主要用于安全日志。
所记录的每个事件的描述取决于事件类型。日志中的每个事件都可归类为表14-3-3所描述的类型之一。
表14-3-3 事件类型
信息
描述任务(如应用程序、驱动程序或服务)成功运行的事件。例如,当网络驱动程序成功加载时将记录“信息”事件。
警告
不一定重要但可能表明将来有可能出现问题的事件。例如,当磁盘空间快用完时将记录“警告”消息。
错误
描述重要问题(如关键任务失败)的事件。“错误”事件可能涉及数据丢失或功能缺失。例如,当启动过程中无法加载服务时将记录“错误”事件。
成功审核
(安全日志)
描述成功完成受审核安全事件的事件。例如,当用户登录到计算机时将记录“成功审核”事件。
失败审核
(安全日志)
描述未成功完成的受审核安全事件的事件。例如。当用户无法访问网络驱动器时可能记录“失败审核”事件。
Windows2003的日志系统通常放在下面的位置:
(1)安全日志文件:C:\WINDOWS\system32\config\SecEvent.EVT。
(2)系统日志文件:C:\WINDOWS\system32\config\SysEvent.EVT。
(3)应用程序日志文件:C:\WINDOWS\system32\config\AppEvent.EVT。
(4)FTP服务日志默认位置:C:\WINDOWS\system32\LogFiles\msftpsvc1\。
(5)WWW服务日志默认位置:C:\WINDOWS\system32\LogFiles\w3svc1\。
日志要做到客观、真实必须要从日志的安全性来考虑,在这方面Windows系统日志也对日志进行了适当的保护。Windows系统的日志往往会通过后台服务来对日志文件起到一定的保护作用。服务Event Log就是用来保护事件日志的。并且日志文件还会通过注册表中设置键值来定位。系统管理员还会通过备份、移位、设置文件访问权限等手段来对日志文件进行适当的保护。但是,这样做对系统日志的安全性来说远未得到保障。日志文件通常有某项服务在后台保护,除了系统日志、安全日志、应用程序日志等等,它们的服务是Windows2003的关键进程,而且与注册表文件在一块,当Windows2003启动后,启动服务来保护这些文件,所以很难删除,而FTP日志和WWW日志以及SchedLgU日志都是可以轻易地删除的。
二.IIS的日志及日志格式
IIS(Internet 信息服务)的日志是用于记录关于用户活动的细节并按一定的格式创建的可以查看的文件。
信息存储在ASCII文件或与ODBC兼容的数据库中。IIS中的日志记录信息超出了Microsoft Windows事件日志或性能监视器功能的范围。日志包括的信息诸如哪些用户访问了您的站点、访问者查看了什么内容,以及最后一次查看该信息的时间。可以使用日志来评估内容受欢迎程度或识别信息瓶颈。
IIS服务提供了四种日志文件的格式可以供你选择,他们分别是:
(1)Microsoft IIS日志文件格式:一种固定的ASCII格式。
(2)NCSA共用日志文件格式:一种固定的ASCII格式。
(3)ODBC日志记录:一种记录到数据库的固定格式,与该数据库兼容。
(4)W3C扩展日志文件格式:一种可自定义的ASCII格式,默认情况下选择此格式。
下面分别详细介绍这些格式。
1.IIS日志文件格式
IIS格式是固定的(不能自定义的)ASCII格式。IIS格式比NCSA公用格式记录的信息多。IIS格式包括一些基本项目,如用户的IP地址、用户名、请求日期和时间、服务状态码和接收的字节数。另外,IIS格式还包括详细的项目,如所用时间、发送的字节数、动作(例如,GET命令执行的下载)和目标文件。这些项目用逗号分开,使得格式比使用空格作为分隔符的其他ASCII格式更易于阅读。时间记录为本地时间。
当在文本编辑器中打开IIS格式的文件时,项目与下面的示例相似:
192.168.114.201,-,03/20/01,7:55:20,w3svc2,sales1,172.21.13.45,4502,163,3223,200,0,GET, /DeptLogo.gif ,-,
172.16.255.255,anonymous, 03/20/01, 23:58:11, MSFTPSVC, SALES1, 172.16.255.255, 60,275,0,0,0, pass, /Intro.htm, -,
上面所示的项目将在下面的表中加以说明。每个表的顶行来自第二个站点实例(以W3SVC2形式出现在“服务”下面),底行来自第一个FTP站点实例(以MSFTPSVC1形式出现在“服务”下面)。由于页宽所限,该示例出现在三个表中。
用户的IP地址
用户名称
日期
时间
服务和实例
计算机名
192.168.114.201
03/20/01
7:55:20
W3SVC2
SALES1
172.16.255.255
匿名
03/20/01
23:58:11
MSFTPSVC1
SALES1
服务器IP地址
所用时间
发送字节
接收字节
服务状态码
状态码
172.21.13.45
4502
163
3223
200
172.16.255.255
60
275
请求类型
操作目标
参数
GET
/DeptLogo.gif
[376] PASS
/Intro.htm
在上面的示例中,第一个项目表明:2001年3月20日上午7:55,IP地址为192.168.114.201的匿名用户发出一条HTTP GET命令,从IP地址为172.21.13.45、名为SALES1的服务器请求图像文件/DeptLogo.gif。163字节的HTTP请求有4502毫秒(4.5秒)的处理时间来完成,并将3223个字节的数据毫无错误地返回给匿名用户。
2.NCSA公用日志文件格式
(美国)国家超级计算技术应用中心(NCSA)公用格式是一种固定的(不能自定义的)ASCII格式,可用于网站但不能用于FTP站点。NCSA公用格式记录了关于用户请求的基本信息,如远程主机名、用户名、日期、时间、请求类型、HTTP状态码和服务器发送的字节数。项目之间用空格分开;时间记录为本地时间。
当在文本编辑器中打开NCSA公用格式文件时,项目与下面的示例相似:
以上示例的项目在下面的表中说明。由于页宽所限,该示例显示在两个表中。
远程主机
远程登录名称
用户名称
日期
时间和GMT时差
172.21.13.45
-
Microsoft\fred
08/Apr/2001
17:39:10 -0800
请求/版本
服务状态码
传送的字节
GET/scripts/iisadmin/ism.dll?http/serv HTTP/1.0
200
3401
上面的项目表明:Microsoft域中IP地址为172.21.13.45、名为Fred的用户在2001年4月8日下午5:39分发出一条HTTP GET命令(即下载一个文件)。该请求将3401个字节的数据正确无误地返回给名为Fred的用户。
3. 使用ODBC日志记录用适当的属性为日志数据创建包含表的数据库
IIS中包含有SQL模板文件,它可以在SQL数据库中运行,以创建从IIS接受日志项目的表。该文件名为Logtemp.sql且位于systemroot\System32\Inetsrv(如果您接受了安装默认值)。下列属性是必需的:
表14-3-4 ODBC日志属性
属性名称
属性类型
ClientHost
varchar(255)
Username
varchar(255)
LogTime
datetime
Service
varchar(255)
Machine
varchar(255)
ServerIP
varchar(50)
ProcessingTime
Int
BytesRecvd
Int
BytesSent
Int
ServiceStatus
Int
Win32Status
Int
Operation
varchar(255)
Target
varchar(255)
Parameters
varchar(255)
为数据库赋予系统数据源名(DSN),ODBC软件用它来查找数据库。向IIS提供数据库和表的名称。如果访问数据库时需要用户名和密码,也必须在IIS中指定。
4.W3C扩展日志文件格式
W3C扩展格式是一个包含多个不同属性、可自定义的ASCII格式。可以记录对您来说重要的属性,同时通过省略不需要的属性字段来限制日志文件的大小。属性以空格分开,时间以UTC形式记录。W3C扩展日志记录定义如表14-3-5。
表14-3-5 W3C扩展日志记录定义
前缀
含义
s-
服务器操作。
c-
客户端操作。
cs-
客户端到服务器的操作。
sc-
服务器到客户端的操作。
字段
格式
描述
日期
data
活动发生的日期。
时间
time
活动发生的时间。
客户端IP地址
c-ip
访问服务器的客户端IP地址。
用户名
cs-username
访问服务器的已验证用户的名称。这不包括用连字符(-)表示的匿名用户。
服务名
s-sitename
客户端所访问的该站点的Internet服务和实号码。
服务器IP地址
s-ip
生成日志项的服务器的IP地址。
服务器端口
s-port
客户端连接到的端口号
方法
cs-method
客户端试图执行的操作(例如GET方法)
URI资源
cs-uri-stem
访问的资源,例如Default.htm。
URI查询
cs-uri-query
客户端正在尝试执行的查询(如果有)。
协议状态
sc-status
以HTTP或FTP术语表示的操作的状态。
Win32状态
sc-win32-status
用Windows使用的术语表示的操作的状态。
发送的字节数
sc-bytes
服务器发送的字节数。
接收的字节数
cs-bytes
服务器接收的字节数。
所用的时间
time-taken
操作花费的时间长短(毫秒)。
协议版本
cs-version
客户端使用的协议(HTTP,FTP)版本。对于HTTP,这将是HTTP1.0或HTTP1.1。
主机
cs-host
显示主机头的内容。
用户代理
cs(User-Agent)
在客户端使用的浏览器。
Cookie
cs(Cookie)
发送或接收的Cookie的内容(如果有)。
引用站点
cs(Referer)
用户访问的前一个站点。此站点提供到当前站点的链接。
以下示例显示了使用下列属性的文件语句:时间、客户端IP地址、方法、URL资源、协议状态和协议版本。
上面所示的项目表明:2001年5月2日下午5:42(UTC),HTTP版本为1.0、IP地址为172.16.255.255的用户针对/Default.htm文件发出了HTTP GET命令。该请求正确无误地返回。#Date:属性字段表明了第一个日志项目建立的时间,也就是创建日志的时间。#Version:属性字段指出使用的是W3C扩展日志记录格式。
5.自定义错误消息
所有IIS自定义错误消息都显示行业标准HTTP代码,这样可以确保与HTTP1.1错误消息一致。但是,可以使用IIS中的“自定义错误”属性页来自定义常规的HTTP错误消息。
自定义错误消息作为列表显示在IIS的管理单元中,IIS将其作为单个属性来处理。例如,在网站级别配置一组自定义错误消息后,该服务器下的所有目录均继承整个自定义错误消息列表。即并不会合并这两个自定义错误消息列表(分别用于服务器和目录)。
可以使用IIS来自定义以下HTTP错误消息。
表14-3-6 HTTP错误消息
错误代码
错误消息
400
无法解析此请求。
401.1
未经授权:访问由于凭据无效被拒绝。
401.2
未经授权:访问由于服务器配置倾向使用替代身份验证方法而被拒绝。
401.3
未经授权:访问由于ACL对所请求资源的设置被拒绝。
401.4
未经授权:Web服务器上安装的筛选器授权失败。
401.5
未经授权:ISAPI/CGI应用程序授权失败。
401.7
未经授权:由于Web服务器上的URL授权策略而拒绝访问。
403
禁止访问:访问被拒绝。
403.1
禁止访问:执行访问被拒绝。
403.2
禁止访问:读取访问被拒绝。
403.3
禁止访问:写入访问被拒绝。
403.4
禁止访问:需要使用SSL查看该资源。
403.5
禁止访问:需要使用SSL 128查看该资源。
403.6
禁止访问:客户端的IP地址被拒绝。
403.7
禁止访问:需要SSL客户端证书。
403.8
禁止访问:客户端的DNS名称被拒绝。
403.9
禁止访问:太多客户端试图连接到Web服务器。
403.10
禁止访问:Web服务器配置为拒绝执行访问。
403.11
禁止访问:密码已更改。
403.12
禁止访问:服务器证书映射器拒绝了客户端证书访问。
403.13
禁止访问:客户端证书已在Web服务器上吊销。
403.14
禁止访问:在Web服务器上已拒绝目录列表。
403.15
禁止访问:Web服务器已超过客户端访问许可证限制。
403.16
禁止访问:客户端证书格式错误或未被Web服务器信任。
403.17
禁止访问:客户端证书已经到期或者尚未生效。
403.18
禁止访问:无法在当前应用程序池中执行请求的URL。
403.19
禁止访问:无法在该应用程序池中为客户端执行CGI。
403.20
禁止访问:Passport登录失败。
404
找不到文件或目录。
404.1
文件或目录未找到:网站无法在所请求的端口访问。
注:404.1错误只会出现在具有多个IP地址的计算机上。如果在特定IP地址/端口组合上收到客户端请求,而且没有将IP地址配置为在该特定的端口上侦听,则IIS返回404.1HTTP错误。例如,如果一台计算机有两个IP地址,而只将其中一个IP地址配置为在端口80上侦听,则另一个IP地址从端口80收到的任何请求都将导致IIS返回404.1错误。只应在此服务级别设置该错误,因为只有当服务器上使用多个IP地址时才会将它返回给客户端。
404.2
文件或目录无法找到:锁定策略禁止该请求。
404.3
文件或目录无法找到:MIME映射策略禁止该请求。
405
用于访问该页的HTTP动作未被许可。
406
客户端浏览器不接受所请求页面的MIME类型。
407
Web服务器需要初始的代理验证。
410
文件已删除。
412
客户端设置的前提条件在Web服务器上评估时失败。
414
请求URL太大,因此在Web服务器上不接受该URL。
500
服务器内部错误。
500.11
服务器错误:Web服务器上的应用程序正在关闭。
500.12
服务器错误:Web服务器上的应用程序正在重新启动。
500.13
服务器错误:Web服务器太忙。
500.14
服务器错误:服务器上的无效应用程序配置。
500.15
服务器错误:不允许直接请求GLOBAL.ASA。
500.16
服务器错误:UNC授权凭据不正确。
500.17
服务器错误:URL授权存储无法找到。
500.18
服务器错误:URL授权存储无法打开。
500.19
服务器错误:该文件的数据在配置数据库中配置不正确。
500.20
服务器错误:URL授权域无法找到。
500 100
内部服务器错误:ASP错误。
501
标题值指定的配置没有执行。
502
Web服务器作为网关或代理服务器时收到无效的响应。
材料:
Linux审计系统auditd 套件
步骤:
安装 auditd
REL/centos默认已经安装了此套件,如果你使用ubuntu server,则要手工安装它:
sudo apt-get install auditd
它包括以下内容:
auditctl : 即时控制审计守护进程的行为的工具,比如如添加规则等等。
/etc/audit/audit.rules : 记录审计规则的文件。
aureport : 查看和生成审计报告的工具。
ausearch : 查找审计事件的工具
auditspd : 转发事件通知给其他应用程序,而不是写入到审计日志文件中。
autrace : 一个用于跟踪进程的命令。
/etc/audit/auditd.conf : auditd工具的配置文件。
Audit 文件和目录访问审计
首次安装 auditd 后, 审计规则是空的。可以用 sudo auditctl -l 查看规则。文件审计用于保护敏感的文件,如保存系统用户名密码的passwd文件,文件访问审计方法:
sudo auditctl -w /etc/passwd -p rwxa
-w path : 指定要监控的路径,上面的命令指定了监控的文件路径 /etc/passwd
-p : 指定触发审计的文件/目录的访问权限
rwxa : 指定的触发条件,r 读取权限,w 写入权限,x 执行权限,a 属性(attr)
目录进行审计和文件审计相似,方法如下:
$ sudo auditctl -w /production/
以上命令对/production目录进行保护。
3. 查看审计日志
添加规则后,我们可以查看 auditd 的日志。使用 ausearch 工具可以查看auditd日志。
sudo ausearch -f /etc/passwd
-f 设定ausearch 调出 /etc/passwd文件的审计内容
4. 查看审计报告
以上命令返回log如下:
time-Mon Dec 22 09:39:16 2016
type=PATH msg=audit(1419215956.471:194): item=0 name="/etc/passwd"
inode=142512 dev=08:01 mode=0100644 ouid=0 ogid=0 rdev=00:00 nametype=NORMAL
type=CWD msg=audit(1419215956.471:194): cwd="/home/somebody"
type=SYSCALL msg=audit(1419215956.471:194): arch=40000003 syscall=5
success=yes exit=3 a0=b779694b a1=80000 a2=1b6 a3=b8776aa8 items=1 ppid=2090 pid=2231 auid=4294967295 uid=1000 gid=1000 euid=0 suid=0 fsuid=0 egid=1000 sgid=1000 fsgid=1000 tty=pts0 ses=4294967295
comm="sudo" exe="/usr/bin/sudo" key=(null)
time : 审计时间。
name : 审计对象
cwd : 当前路径
syscall : 相关的系统调用
auid : 审计用户ID
uid 和 gid : 访问文件的用户ID和用户组ID
comm : 用户访问文件的命令
exe : 上面命令的可执行文件路径
以上审计日志显示文件未被改动。