You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: README.md
+72-7
Original file line number
Diff line number
Diff line change
@@ -1,41 +1,59 @@
1
1
# analyzer-d4-passivedns
2
2
3
-
analyzer-d4-passivedns is an analyzer for a D4 network sensor. The analyser can process data produced by D4 sensors (in [passivedns](https://github.com/gamelinux/passivedns) CSV format (more to come)) and
4
-
ingest these into a Passive DNS server which can be queried later to search for the Passive DNS records.
3
+
analyzer-d4-passivedns is an analyzer for a D4 network sensor including a complete Passive DNS server. The analyser can process data produced by D4 sensors (in [passivedns](https://github.com/gamelinux/passivedns) CSV format (more to come)) or independently from D4 using [COF websocket](https://datatracker.ietf.org/doc/html/draft-dulaunoy-dnsop-passive-dns-cof) streams.
4
+
5
+
The package include a Passive DNS server which can be queried later to search for the Passive DNS records.
5
6
6
7
# Features
7
8
8
-
- A D4 analyzer which can be plugged to one or more [D4 servers](https://github.com/D4-project/d4-core) to get a stream of DNS records
9
-
- A compliant [Passive DNS ReST server compliant to Common Output Format](https://tools.ietf.org/html/draft-dulaunoy-dnsop-passive-dns-cof-04)
9
+
-[Input stream] - A D4 analyzer which can be plugged to one or more [D4 servers](https://github.com/D4-project/d4-core) to get a stream of DNS records
10
+
-[Input Stream] - A websocket stream (or a file stream) in NDJSON [COF format](https://datatracker.ietf.org/doc/html/draft-dulaunoy-dnsop-passive-dns-cof)
11
+
-[Output API] A compliant [Passive DNS ReST server compliant to Common Output Format](https://tools.ietf.org/html/draft-dulaunoy-dnsop-passive-dns-cof)
10
12
- A flexible and simple analyser which can be configured to collect the required records from DNS records
11
13
12
14
# Overview
13
15
14
16
## Requirements
15
17
16
18
- Python 3
17
-
- Redis >5.0
19
+
- Redis >5.0 or [kvrocks](https://github.com/apache/incubator-kvrocks)
18
20
- Tornado
19
21
- iptools
20
22
21
23
## Install
22
24
25
+
### Redis
26
+
23
27
~~~~
24
28
./install_server.sh
25
29
~~~~
26
30
27
31
All the Python 3 code will be installed in a virtualenv (PDNSENV).
28
32
33
+
### Kvrocks
34
+
35
+
~~~
36
+
./install_server_kvrocks.sh
37
+
~~~
38
+
39
+
All the Python 3 code will be installed in a virtualenv (PDNSENV).
40
+
29
41
## Running
30
42
31
-
### Start the redis server
43
+
### Start the redis server or kvrocks server
32
44
33
45
Don't forget to set the DB directory in the redis.conf configuration. By default, the redis for Passive DNS is running on TCP port 6400
34
46
35
47
~~~~
36
48
./redis/src/redis-server ./etc/redis.conf
37
49
~~~~
38
50
51
+
or
52
+
53
+
~~~~
54
+
./kvrocks/src/kvrocks -c ./etc/kvrocks.conf
55
+
~~~~
56
+
39
57
### Start the Passive DNS COF server
40
58
41
59
~~~~
@@ -44,7 +62,17 @@ cd ./bin/
44
62
python3 ./pdns-cof-server.py
45
63
~~~~
46
64
47
-
### Configure and start the D4 analyzer
65
+
## Feeding the Passive DNS server
66
+
67
+
You have two ways to feed the Passive DNS server. You can combine multiple streams. A sample public COF stream is available from CIRCL with the newly seen IPv6 addresses and DNS records.
0 commit comments