Bonjour à tous !


Je suis nouveau sur le forum, mais ai l'habitude de lire les articles de developpez.com
Du coup, je fais appel à vous puisque je rencontre un problème dans la visualisation de mes logs DNS sur ma pile ELK.

Voici mon problème :

Je possède une VM Windows Server 2012R2 avec nxlog d'installer dessus. Le fichier de configuration est le suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
​
define ROOT C:\Program Files (x86)\nxlog
define CERTDIR %ROOT%\cert
 
Moduledir %ROOT%\modules
CacheDir %ROOT%\data
Pidfile %ROOT%\data\nxlog.pid
SpoolDir %ROOT%\data
LogFile %ROOT%\data\nxlog.log
 
<Extension _json>
    Module      xm_json
</Extension>
 
<Input dnslog>
    Module      im_file
    File        "C:\\dns-log.log"
    InputType    LineBased
    Exec $Message = $raw_event;
    SavePos TRUE
</Input>
 
<Output out>
    Module      om_ssl
    Host        IP_DU_SERVEUR_LOGSTASH
    Port        PORT_DU_SERVEUR_LOGSTASH
    CAFile      %CERTDIR%\logstash-forwarder.crt
    Exec        $EventReceivedTime = integer($EventReceivedTime) / 1000000; to_json();
</Output>
 
<Route 1>
    Path        dnslog => out
</Route>
Et le message de succès lorsque j'exécute nxlog.
Nom : Capture.PNG
Affichages : 460
Taille : 3,5 Ko

Ma pile ELK (Elasticsearch / Logstash / Kibana) est exécuté sur une debian. Les fichiers de configuration pour Logstash sont :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
input {
	tcp {
		codec =>line { charset => CP1252 }
	        port => PORT_DU_SERVEUR_LOGSTASH
		ssl_verify => false
		ssl_enable => true
		ssl_cert => "/etc/pki/tls/certs/logstash-forwarder.crt"
		ssl_key => "/etc/pki/tls/private/logstash-forwarder.key"
		type => "nxlog"
	}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
filter {
	if [type] == "nxlog" {
		grok {
			match => [ "message", "(?<date_n_time_us>%{DATE_US} %{TIME} (?:AM|PM))%{SPACE}%{WORD:dns_thread_id}%{SPACE}%{WORD:dns_context}%{SPACE}%{WORD:dns_internal_packet_identifier}%{SPACE}%{WORD:dns_protocol}%{SPACE}%{WORD:dns_direction}%{SPACE}%{IP:dns_ip}%{SPACE}%{WORD:dns_xid}%{SPACE}(?<dns_query_type>(?:Q|R Q))%{SPACE}[%{NUMBER:dns_flags_hex}%{SPACE}%{WORD:dns_flags_chars}%{SPACE}%{WORD:dns_response_code}]%{SPACE}%{WORD:dns_question_type}%{SPACE}%{GREEDYDATA:dns_question_name}" ]
		}	
	}
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
output {
	elasticsearch {
		hosts => ["localhost:9200"]
		sniffing => true
		manage_template => false		
		index => "%{[@metadata][nxlog]}-%{+YYYY.MM.dd}"
		document_type => "%{[@metadata][type]}"
	}
	stdout {
		codec => rubydebug
	}
}
Problème : Je n'arrive pas à visualiser mes logs DNS sur Kibana. Ni par ailleurs, configurer un dashboard. Je ne suis pas non plus sûr de mes fichiers de configuration pour Logstash, en particulier la section "filter" et "output".
En revanche, lorsque je tape la commande ngrep -d INTERFACE -W byline -t sur ma debian, j'ai des requêtes qui semble provenir de mon WS, et donc mes logs sont bien reçus. Mais il doit y avoir des soucis au niveau de la pile ELK.

Pourriez-vous m'aider ?

Merci beaucoup pour votre temps !