一、IIS中间件
1.IIS 默认是开启了 access 日志。
2.IIS 日志默认存储于 %systemroot%system32LogFilesW3SVC 目录中
-
日志存储路径设置如下:
默认位置:%systemroot%system32logfiles 可自由设置 默认日志命名方式:ex+年份的末两位数字+月份+日期+.log
如何定位IIS网站的日志在哪?
1.先需要知道被攻击的端口是哪个,假设端口是80,找到IIS搭建的80端口的网站。
2.右击网站,选择管理网站,选择高级设置,记住ID的值,现在为1
3.双击网站的日志,在打开的窗口中复制日志路径:%SystemDrive%inetpublogsLogFiles
4.打开我的电脑,输入复制的日志路径,回车,文件夹W3SVC后面的数字是网站的ID,上面是1,所以是第一个文件夹
5.打开后就是80端口网站的访问日志:
二、Apache中间件
Windows: apache安装目录logsaccess.log
Linux: /usr/local/apache/logs/access_log
若不存在,参考Apache配置文件httpd.conf中开启
找到 httpd.conf 文件:
Windows:在 Apache 安装目录下
Linux: /etc/httpd/conf/httpd.conf
打开 httpd.conf 文件后 Ctrl+F 搜索 CustomLog "logs/access.log"common(通用格式)然后将前面的去掉后保存,重启 Apache 服务后即可生效。或者 CustomLog "logs/access.log" combined(组合格式)然后将前面的去掉后保存,重启 Apache 服务后生效。一般启用通用格式即可。案例选择的组合格式,如下:
#开启日志记录 CustomLog "logs/access.log" common
关于开启POST日志记录,找到httpd.conf文件
#开启模块 LoadModule dumpio_module modules/mod_dumpio.so#开启Input output dumpDumpIOInput OnDumpIOOutput On#找到日志记录等级设置,修改#DumpIOLogLevel DEBUG # apache 2.2LogLevel dumpio:trace7 # apache 2.4
重启web服务即可,POST日志会记录在 error.log 里,找包含dumpio_in或dumpio_out。这个功能会记录全日志, 包括返回日志内容,如果不记录返回日志就关闭out,对服务性能也有一定影响,斟酌是否开启。
apche如何定位日志目录
1.先知道被攻击的端口,现在是90,根据90端口定位到启动目录,切换到apache目录下
2.apache目录下的logs目录下的access文件就是访问日志
三、tomcat中间件
以下文件都是在tomcat启动时自动生成的日志文件,按照日期自动备份,其中访问日志默认不记录,需要配置。1.localhost.log:主要是应用初始化(listener, filter, servlet)未处理的异常最后被tomcat捕获而输出的日志。2.catalina.log:经常用到的文件之一,程序的输出,tomcat的日志输出等。3.localhost_access_log.txt:tomcat访问日志记录,是存放访问tomcat的请求的所有地址以及请求的路径、时间,请求协议以及返回码等信息,也是我们常说的中间件access日志分析,非常重要,需要配置server.xml文件。4.manager.log:webapps/manager项目生成的日志文件,一般看不到有什么重要的信息。5.host-manager.log:webapps/host-manager项目生成的日志文件,是放tomcat的自带的manager项目的日志信息的,一般看不到有什么重要的信息。
tomcat默认不记录访问日志,如果遇到tomcat目录下的logs文件夹下没有access日志,可以通过如下方法查看日志是否开启。查看文件。注{catalina} 是tomcat的安装目录。搜索access字样,查看配置是否被引起来注释,如果存在注释,说明access日志记录未开启。
<Valve className="org.apache.catalina.valves.AccessLogValve"directory="logs" prefix="localhost_access_log." suffix=".txt"pattern="common" resolveHosts="false"/>
tomcat如何定位到日志存放目录
Linux:
1.首先需要知道被攻击的端口,例如443端口,执行netstat -antlp | grep 443,定位到拉起443端口的业务。
2.根据拉起的业务pid使用systemctl status PID定位到进程详情,可以看到,java拉起的tomcat目录,切换到tomcat的目录
3.找到tomcat目录下的logs文件夹,里面存放的就是access日志。
三、中间件Nginx
日志存储路径在Nginx配置文件nginx.conf中,其中:access_log变量规定了日志存放路径与名字,以及日志格式名称,默认 值"access_log";
Nginx如何定位到日志存放目录
1.先需要知道是主机开放的哪个端口搭建的业务被攻击,以80端口举例,是PID:4052开放的80端口。
2.任务管理器找到4052进程,发现是nginx
3.右击表头,选择列,找到命令行,勾选确认后,可以展示出进程所启动的命令参数和路径
4.右击进程,找到所在位置。
5.打开logs文件夹。
6.里面存放的正是access日志。
四、其他中间件
1、weblogic
domain_name/servers/server_name/logs/ server_name.log:server启停日志 access.log:安装在该server之上的应用http访问日志。
2、jboss
LOG4J配置默认Deploy/conf/ 如jboss/server/default/conf/jboss-log4j.xml
默认不做访问日志记录 修改${JBOSS_HOME}/server/defaul/deploy/jbossweb.sar/server.xml(jboss/server/default/deploy/jboss-web.deployer/server.xml)(这个文件位置不同版本不一样,供参考) 有一段日志记录配置被注释掉,去掉注释即可,如下:
<Valve className="org.apache.catalina.valves.AccessLogValve" prefix="localhost_access_log." suffix=".log" pattern="common" directory="${jboss.server.home.dir}/log" resolveHosts="false" />
日志保存在${JBOSS_HOME}/server/default/log/下,前缀为localhost_access_log
六、关于配置文件
tomcat:server.xml会有服务器端口配置,日志配置等
apache:httpd.conf是apache主要配置文件,包括端口、模块启用、日志配置等。
nginx:nginx.conf是主要配置文件,会有端口、重写、代理等配置,也会有日志配置等。
IIS:web.config是主要配置文件,通过IIS界面修改的配置会保存到web.config 里,包括重写等操作,日志配置一般 不变,通过界面就可查看。
原文始发于微信公众号(安服仔的救赎):web应急之各中间件日志保存位置
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论