Voici la version téléchargeable de l’ensemble : base de données – scripts – site web dans l’archive : tcpstatmysql Présentation : Le site s’appuie sur apache – php – MySQL. Dans mon architecture, apache, tout ceci va dans /var/www/html/ et le dossier du site se nomme tcpstatmysql. Le chemin /var/www/html/tcpstatmysql/ est présent en dur dans plusieurs […]
Auteur/autrice : cderenne
tcpdump : analyse finale des connexions
Finalement le site final pourrait être amélioré sans cesse. Il faut biens’arrêter un jour. Donc après l’ajout des statistiques de connexions par volume et par connexion par ip et part port, j’ai décidé de m’arrêter là. Mais arrêtons nous un instant sur les résultats : Connexions part ports : Si je regarde les connexions part […]
tcpdump : 1ers résultats Pare-feu impératif !!
Alors que le développement du site qui exploite les données se termine, et que je m’apprêtai à réaliser l’article de présentation, il m’a parru évident qu’il lui faut 2 autres fonctionnalités en plus . Une répartition globale par Pays Une répartition globale part Port En effet : comme je l’ai dit, TCPDUMP intercepte es trames […]
tcpdump : construire les stats
Inutile d’utiliser aussi vnStat pour avoir les statistiques horaires, quotidiennes et mensuelles puisque TCPDUMP nous donne déjà le niveau le plus fin, il suffit de faire des regroupements. Pour me simplifier la vie dans le code php, déjà je créer une vue du niveau de détail le plus fin qui me donnera en plus des […]
tcpdump : Fichier de Log
J’aime bien pourvoir savoir si tout ce passe bien et ce, de manière aisée. Le moyen le plus confortable est d’afficher cela sur l’interface web. Dans la version qui utilise vnStat, je n’ai pas de service, juste un script en crontab, il produit un fichier de log (myifstat.log) que j’affiche sur une des pages de […]
tcpdump : Géolocaliser
On a maintenant : Une table TBIPPORT qui contient toutes les tentatives de connexions, dont les IP Une table TBIPCOUNTRY vide. Il faut la remplir au fur et à mesure de la venue de nouvelles IP et renseigner les champs COUNTRYCODE et COUNTRYLIB. Géolocaliser sous-entant, interroger un service web pour chaque ip : ce peut-être […]
tcpdump : ajouter la géolocalisation
De la même manière J’avais dis qu’ j’aimerai afficher le pays de localisation de l’IP qui se connecte à mon serveur. Pour les mêmes raison, il me faut une nouvelle table qui ne contiendra que des IP Uniques. Pour une représentation en page web sympa, j’ai trouvé l’ensemble des drapeaux des différents pays sous la […]
tcpdump Ajouter le nom du service associé au port
J’ai donc maintenant une table TBIPPORT qui contient pour chaque connexion, par minutes, la date, l’heure à la minute prêt, les quantités de données émises et reçues, l’IP du partenaire et le port utilisé. J’avais dis qu’ j’aimerai afficher nom du service associé au port. Mais je n’avais pas envie de demander à tcpdump de […]
tcpdump : créer le service
On a donc maintenant : un premier script qui : reçoit en entrée le nom de l’interface (je vais l’appeler tcpdetailtxt.sh) reçoit en entrée le nom du fichier de dump à créer créer le fichier texte de dump lance dans un autre thread (avec nohup), le script qui remplit MySQL un deuxième (dumptomysql.sh) de remplissage […]
tcpdump : charger le fichier de dump dans MySQL
A la précédente étape on a vu comment obtenir de tcpdump un fichier de trace et le formater sous la forme d’un fichier texte séparé par des point-virgules dont les données sont : heure ipsource portsource ipdest portdest type (udp/tcp) taille Pour mon projet personnel, je n’ai pas besoin de savoir si la trame est […]