Bonjour,

J'ai une machine sous Stretch qui fait office de routeur sur un réseau
local.
Elle implémente une fonction NAT avec une centaine d'utilisateurs sur le
réseau local et un trafic de l'ordre de 200Mb/s (j'ai du mal à évaluer le
nombre de paquets par seconde) voire d'avantage.

Je souhaite logguer chaque translation d'adresse fin de pouvoir a
posteriori, déterminer quel utilisateur interne s'est connecté à une
machine sur Internet.

Sur un seul enregistrement (ou plusieurs), je souhaite pouvoir lire les 7
informations ci-après:
- l'heure
- l'IP source interne/port source interne
- l'IP publique source/port source public
- l'IP destination interne/port destination

En d'autres termes, si l'utilisateur 192.168.1.10 consulte le site web
1.2.3.4, je souhaite retrouver un enregistrement avec:
- 192.168.1.10/50000 (le navigateur utilise le port source 50000 )
- 5.6.7.8/40000 (mon routeur translate 192.168.1.10/50000 vers 5.6.7.8/40000
)
- 1.2.3.4/80 (site web de destination)

Vu le grand nombre de connexions DNS crées par la moindre page DNS,
j'aimerai ne pas logguer les connexions DNS.

Dans un premier temps, copier des logs dans un fichier local me suffit.
À terme, je consignerai les logs dans une BDD.

J'ai lu [1] qui fait référence à conntrack et ulogd mais je suis un peu
surpris de n'y voir aucune référence à iptables.

Quels logiciels sont strictement nécessaires et suffisants pour implémenter
ceci ?

[1]
https://home.regit.org/2014/02/logging-connection-tracking-event-with-ulogd/

Slts

Répondre à