[LINUX] Exécuter la capture de paquets à l'heure spécifiée sur CentOS7

Un client a dit: "Je veux que vous receviez régulièrement des paquets lorsque le moment spécifié arrive." J'ai construit à la hâte CentOS 7 en tant que PC de capture (tout en recherchant sur Google), Je laisserai celui de l'époque sous forme de mémorandum.

La version de CentOS 7 est la suivante

[smatsu@smatsu ~]$ cat /etc/redhat-release
CentOS Linux release 7.7.1908 (Core)

Chose que tu veux faire

Je souhaite effectuer une capture de paquets à une heure spécifiée.

veux dire

Créez un script shell pour exécuter Wireshark et utilisez le cron standard Cento S7 pour la fonction de planification.

Installation de CentOS

Les détails sont omis. Configurez la machine virtuelle en fonction de l'environnement. Je n'utilise pas de cartes son, de disquettes, d'imprimantes, etc., alors supprimez-les à ce stade. Cette fois, je l'ai installé avec GNOME.

Installez Wireshark

Puisqu'il s'agit d'une interface graphique, ajoutez gnome.

$ sudo yum install -y wireshark-gnome

Il est entré.

[smatsu@smatsu ~]$ wireshark -v
wireshark 1.10.14 (Git Rev Unknown from unknown)

Vérifiez ici dans l'interface graphique. image.png

Si cela est laissé tel quel, l'interface ne sera pas affichée pour les utilisateurs généraux en raison de problèmes d'autorisation, alors donnez la permission.

$ sudo groupadd wireshark
$ sudo usermod -aG wireshark [user]

Redémarrez ici.     L'interface s'affiche. image.png

L'interface graphique est juste pour la confirmation, et à partir de maintenant, nous la définirons avec la CLI.

Créer un fichier exécutable

Commencez par créer un dossier de travail.

$ mkdir pcap
$ cd pcap

Ensuite, créez un fichier exécutable.

pcap.sh


#!/bin/bash

/usr/sbin/tshark -i ens33 -w /home/smatsu/pcap/`date +\%Y\%m\%d`/`date +\%Y\%m\%d_\%H\%M`.pcapng -a duration:600

・ Tshark = version de commande Wireshark ・ Si vous installez gnome, il est inclus. ・ Ens33 = nom de l'interface que vous souhaitez capturer -Le nom du fichier est stocké sous le nom "(date) .pcapng" sous le dossier de date. ・ Le temps de capture est de 600 secondes   Donnez l'autorisation d'exécution.

chmod +x pcap.sh

Paramètres de planification

Configurez cron pour planifier le fichier exécutable. Vérifiez l'état de cron.

[smatsu@smatsu ~]$ systemctl status crond
● crond.service - Command Scheduler
   Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2020-04-21 22:34:28 JST; 8min ago

$ systemctl start crond

Modifiez la commande à exécuter par crontab.

$ crontab -e
0 6 * * * /usr/bin/mkdir /home/smatsu/pcap/`date +\%Y\%m\%d`   #Créez un dossier de dates tous les matins à 6 heures
0 7 * * * /home/smatsu/pcap/pcap.sh                            #Exécutez le fichier de capture à 7 heures tous les matins

*: Enregistrer sous wq

Vérifiez le contenu de cron.

[smatsu@smatsu pcap]$ crontab -l
0 6 * * * /usr/bin/mkdir /home/smatsu/pcap/`date +\%Y\%m\%d`
0 7 * * * /home/smatsu/pcap/pcap.sh

Vous pouvez désormais enregistrer la capture de paquets dans le dossier de date tous les matins.

Recommended Posts

Exécuter la capture de paquets à l'heure spécifiée sur CentOS7
Au moment de la mise à jour de python avec ubuntu
Exécutons la commande à temps avec le bot discord
Travaille automatiquement sur le projet python spécifié lors de la connexion à zsh
Découvrez où se trouve l'entité Java sur Linux (CentOS cette fois)
Appelez le débogueur python à tout moment
Exécutez yolov4 "pour le moment" dans Windows
Boucle les variables en même temps dans le modèle
J'ai essayé de créer un Discord Bot sur Docker qui signale le nombre de personnes infectées par corona à Tokyo à un moment spécifié