
从 Elasticsearch 中的 DNS 和 DHCP 服务器收集 LOG,并在 Grafana 中可视化它们
我对短标题有多不原创… 井, 如果您有自己的 DNS 服务器或 DHCP 服务器, 这是你的帖子 😉 我们真的不会通过日志来获取它, 我们将通过审核您的流量😉来做到这一点 我们将审核 DNS 服务生成的请求, 或 DHCP 在 Grafana 中查看!
Si queremos conocer las peticiones que recibe nuestro servidor DNS o DHCP con el objetivo de poder visualizarlos en Grafana para realizar consultas o disponerlo en dashboards rotatorios… donde nos ayude a conocer el funcionamiento correcto o no de los mismos servicios, así como conocer en el caso del DNS las peticiones destino, quién las realiza… En el caso del DHCP pues las peticiones… Se pueden analizar otro tipo de tráficos por supuesto, HTTP 协议, MySQL (MySQL的, PostgreSQL 数据库… y así conocer las queries que se realizan…
¿Cómo lo montamos? Damos por hecho que disponemos ya de ELK funcional y de un Grafana, nos apoyaremos en Packetbeat para analizar el tráfico de una máquina determinada, luego lo mandaremos a Elasticsearch y con un Datasource de Grafana podremos hacer las consultas que necesitemos.
En Windows, debemos instalar en la máquina Npcap 以前, marcando únicamente ‘Install Npcap in WinPcap API-compatible Mode’. Continuamos y finalizamos con la instalación de 数据包节拍.
Una vez tengamos packetbeat descargado y descomprimido, 我们将进行设置, 照常, su fichero de configuración ‘packetbeat.yml’.
... setup.template.settings: index.number_of_shards: 1 setup.template.name: "packetbeat" setup.template.pattern: "packetbeat-*" setup.ilm.enabled: 假 ... setup.kibana: 主机: "https://DIRECCION_IP_KIBANA:5601" ssl.verification_mode: 没有 ... 输出.elasticsearch: # 要连接到的主机数组. 主机: ["https://DIRECCION_IP_ELASTIC:9200"] ssl.verification_mode: none username: "xxxxxxxx" 密码: "XXXXXXXX*" 指数: "packetbeat-%{+yyyy.MM.dd}" ...
和, en el mismo fichero de configuración necesitaremos indicar qué registros nos interesan auditar:
... # =========================== Transaction protocols ============================ packetbeat.protocols: - 类型: icmp # Enable ICMPv4 and ICMPv6 monitoring. The default is true. 启用: 假 - 类型: amqp # Configure the ports where to listen for AMQP traffic. You can disable # the AMQP protocol by commenting out the list of ports. 港口: [5672] 启用: 假 - 类型: cassandra # Configure the ports where to listen for Cassandra traffic. You can disable # the Cassandra protocol by commenting out the list of ports. 港口: [9042] 启用: 假 - 类型: dhcpv4 # Configure the DHCP for IPv4 ports. 港口: [67, 68] - 类型: dns # Configure the ports where to listen for DNS traffic. You can disable # the DNS protocol by commenting out the list of ports. 港口: [53] - 类型: HTTP 协议 # Configure the ports where to listen for HTTP traffic. You can disable # the HTTP protocol by commenting out the list of ports. 港口: [80, 8080, 8000, 5000, 8002] 启用: 假 ...
Una vez configurado, instalamos el servicio:
cd '.\Program Files\packetbeat\'
.\install-service-packetbeat.ps1
Validamos la configuración, cargamos la config y arrancamos el servicio:
.\packetbeat.exe test config -c .\packetbeat.yml -e
.\packetbeat.exe setup
Start-Service packetbeat
注意, para que use menos CPU, debemos filtrar sólo los protocolos que nos interesen, 另外, en el parámetro ‘packetbeat.interfaces.device’ ponerle el ID de la tarjeta de red a auditar, para saber que ID, en una consola de terminal ejecutamos: ‘packetbeat devices’:
packetbeat devices 0: \Device\NPF_{AB47E8CD-2692-4320-A188-FFE1191EDFDC} (Adaptador Ethernet vmxnet3) (铁80::70英 孚:a48d:29b2:3677 192.168.1.100) 1: \Device\NPF_Loopback (Adapter for loopback traffic capture) (Not assigned ip address)
Podremos ir a comprobar desde Kibana si ya estamos recopilando los eventos de Auditbeat, deberemos crear el índice como de costumbre.
然后, desde Grafana crearemos un Data Source contra este índice de Elasticsearch y podremos comenzar a crear. A poder ser algo más bonito que lo mío. Un panel, de un vistazo se ven las consultas DNS, 起源, 命运, top de clientes, top de destinos… y más o menos lo mismo con el DHCP.
Estoy seguro que mejoráis mi dashboard en menos de lo que canta un gallo, podemos poner otro tipo de paneles, estos son los típicos de quesito, 图形, sankey…
Para poder luego hacer filtros y búsquedas DNS por IP de origen, sitio de destino…
Otra manera de ver el DHCP… 是的… veo que tengo una Raspberry Pi que tiene problemas con el Wifi, debe tener un transformador cutre con bajo voltaje…
但是,好吧, en un entorno con más datos, o datos más reales podéis visualizarlo de una manera más atractiva. 来, no me alargo, espero que os sirva de inspiración si necesitáis recoger los datos de vuestro servidor DNS o servidor DHCP.
拥抱tod@s!