Skip to content

MattDierick/f5-waf-elk-dashboards

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Kibana dashboards for F5 App Protect WAF

Screenshots

Overview Dashboard

screenshot1 screenshot2 screenshot3

False Positives Dashboard

screenshot1 screenshot2 screenshot3

Docker

 - Uninstall old versions

       yum remove docker \

              docker-client \

              docker-client-latest \

              docker-common \

              docker-latest \

              docker-latest-logrotate \

              docker-logrotate \

              docker-engine

- install docker engine

    yum install -y yum-utils

    yum install docker-ce docker-ce-cli containerd.io

    systemctl start docker

    docker run hello-world

Docker compose

       curl -L "https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

       chmod +x /usr/local/bin/docker-compose

       docker-compose --version

Clone repo

 git clone https://github.com/MattDierick/f5-waf-elk-dashboards.git

ISSUE "fw"

 firewall-cmd --zone=public --add-port=9200/tcp

 firewall-cmd --zone=public --add-port=9200/tcp --permanent

ISSUE "memmory"

 vi /etc/sysctl.conf

      vm.max_map_count=262144

 sysctl -p

ISSUE "SE LINUX"

 setenforce 0

Launch

 cd f5-waf-elk-dashboards

 vi logstash/conf.d/30-waf-logs-full-logstash.conf

       hosts => ['localhost:9200']

 docker-compose up -d

Services:

 - log: 5144

 - GUI: 5601

Import dashboard

 - Management > Saved Objects > Import *.ndjson
 - Or via API call
 
 KIBANA_URL=http://10.1.1.8:5601
 jq -s . kibana/overview-dashboard-bot.ndjson | jq '{"objects": . }' | \
    curl -k --location --request POST "$KIBANA_URL/api/kibana/dashboards/import" \
    --header 'kbn-xsrf: true' \
    --header 'Content-Type: text/plain' -d @- \
    | jq

 jq -s . kibana/false-positives-dashboard.ndjson | jq '{"objects": . }' | \
    curl -k --location --request POST "$KIBANA_URL/api/kibana/dashboards/import" \
    --header 'kbn-xsrf: true' \
    --header 'Content-Type: text/plain' -d @- \
    | jq
    
 jq -s . kibana/cryptonice-dashboard.ndjson | jq '{"objects": . }' | \
    curl -k --location --request POST "$KIBANA_URL/api/kibana/dashboards/import" \
    --header 'kbn-xsrf: true' \
    --header 'Content-Type: text/plain' -d @- \
    | jq

source:

 - https://github.com/MattDierick/f5-waf-elk-dashboards

 - https://github.com/ansible/awx/blob/devel/INSTALL.md#docker-compose

 - https://docs.docker.com/compose/install/

TROUBLESHOOTING

 DEBUG tcpdump

       $ docker build -t tcpdump - <<EOF

       FROM ubuntu

       RUN apt-get update && apt-get install -y tcpdump

       CMD tcpdump -i eth0

       EOF



       $ docker run -it --net=container:925021d0f1ee tcpdump tcpdump -X port 5144



 DEBUG container

       $ docker exec -it 925021d0f1ee bash

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published