1.找出访问排名前10的IP
2.找出访问排名前10的URL
3.找出10点到14点之间访问频次最高的IP和URL
4.找出10点到14点之间bbs网站访问最高的IP和URL
5.找出攻击者的IP,他都访问了什么页面?从什么时候来的,什么时候走的,一共访问多少次
6.找出昨天和今天同时间段访问有什么变化
7.查看各大搜索引擎今天访问了多少次,都访问了哪些页面
8.找出哪些是伪造的爬虫IP,并查封
9.5分钟内告诉我结果
Elasticsearch | java | 存储,提供数据 |
Logstash | java | 收集日志,转发到ES,过滤转换字段 |
Kibana | java | 过滤,分析,搜索,展示 |
Filebeat | GO | 收集日志,转发给ES |
1.kibana安装
[root@elk01 /server/tools/EFLK软件包v6.6.0]# ls
ansible_elk.tar.gz
elasticsearch-6.6.0.rpm
filebeat-6.6.0-x86_64.rpm
kibana-6.6.0-x86_64.rpm
logstash-6.6.0.rpm
rpm -ivh kibana-6.6.0-x86_64.rpm
2.kibana配置
[root@lb01 /data/soft]# grep "^[a-z]" /etc/kibana/kibana.yml
server.port: 5601
server.host: "10.0.0.5"
elasticsearch.hosts: ["http://10.0.0.5:9200"]
kibana.index: ".kibana"
重启kibana
systemctl restart kibana.service
3.filebeat
安装filebeat
rpm -ivh filebeat-6.6.0-x86_64.rpm
查看配置文件路径
[root@elk01 ~]# rpm -qc filebeat
/etc/filebeat/filebeat.yml
修改配置文件
[root@elk01 ~]# vim /etc/filebeat/filebeat.yml
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/nginx/access.log
output.elasticsearch:
hosts: ["10.0.0.5:9200"]
启动filebeat
[root@elk01 ~]# systemctl restart filebeat.service
查看日志
[root@elk01 ~]# tail -f /var/log/filebeat/filebeat
安装nginx
[root@elk01 ~]# yum install -y nginx
启动nginx
[root@elk01 ~]# systemctl restart nginx.service
在浏览器上刷一些访问日志
http://10.0.0.5/YouArePig
查看nginx的日志
[root@elk01 ~]# tail -f /var/log/nginx/access.log
filebeat工作原理
100条
停止filebeat
110条
启动filebeat
刷新elasticsearch-head插件
操作kibana
收集Nginx的json日志
1.第一步:修改nginx日志为json格式,重启nginx
> /var/log/nginx/access.log
log_format json '{ "time_local": "$time_local", '
'"remote_addr": "$remote_addr", '
'"referer": "$http_referer", '
'"request": "$request", '
'"status": $status, '
'"bytes": $body_bytes_sent, '
'"agent": "$http_user_agent", '
'"x_forwarded": "$http_x_forwarded_for", '
'"up_addr": "$upstream_addr",'
'"up_host": "$upstream_http_host",'
'"upstream_time": "$upstream_response_time",'
'"request_time": "$request_time"'
' }';
systemctl restart nginx
access_log /var/log/nginx/access.log json;
第二步:修改filebeat配置文件
[root@lb01 ~]# cat /etc/filebeat/filebeat.yml
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/nginx/access.log
json.keys_under_root: true
json.overwrite_keys: true
tags: ["access"]
- type: log
enabled: true
paths:
- /var/log/nginx/error.log
tags: ["error"]
output.elasticsearch:
hosts: ["10.0.0.5:9200"]
indices:
- index: "nginx-access-%{[beat.version]}-%{+yyyy.MM}"
when.contains:
tags: "access"
- index: "nginx-error-%{[beat.version]}-%{+yyyy.MM}"
when.contains:
tags: "error"
setup.template.name: "nginx"
setup.template.pattern: "nginx-*"
setup.template.enabled: false
setup.template.overwrite: true
=================================
重启filebeat
systemctl restart filebeat
第三步: 访问nginx
ab -c 10 -n 100 http://10.0.0.5/oldzhang.html
第四步: kibana添加索引