Maxmind database consist ip which detected as proxies, VPNs, and other anonymizers.
There are two types of usage this service. As for single requests or on stream with logstash processor.
Maxanon support databases:
- redis
- mongodb
go run service/maxanon/main.go -file GeoIP2-Anonymous-IP-Block-IPv4.csv
docker-compose up -d
Request to check information about ip address 192.168.1.1
curl /api/v1/info/192.168.1.1
Response
{"IP":"192.168.1.1","Anonymous":true,"AnonymousVPN":false,"IsHostingProvider":false,"IsPublicProxy":true,"IsTorExitNode":false}
Example request http module for logstash processor.
http {
body => "%{source.ip}"
target_body => "ip_flags"
target_headers => "redis"
url => "http://10.0.0.1:8000/api/v1/info/%{source.ip}"
connect_timeout => 600
request_timeout => 600
socket_timeout => 600
id => "redis"
}