Ceci est une ancienne révision du document !
Lien vers l'accueil
On va ajouter la ligne suivante dans la crontab
0 1 * * * /bin/sh /root/logs_analyzer.sh
Ainsi le script s'exécutera une fois par jour à 1h
On crée le script
nano logs_analyzer.sh
On le chmod
chmod +x logs_analyzer.sh
Collez-y les lignes ci-dessous :
#!/bin/sh _date=`date +%Y-%m-%d` mkdir -p /root/access_point_logs mkdir -p /tmp/access_point_logs echo "Récupération des logs..." cat /var/log/syslog.1 | grep -e hostapd -e DST -e dnsmasq| grep -v CRON > /tmp/access_point_logs/$_date.log cd /tmp/access_point_logs echo "Compression..." gzip $_date.log -f echo "Copie..." cp $_date.log.gz /root/access_point_logs/ rm $_date.log.gz
Il est nécessaire de compresser les données pour économiser de la place. En effet, comme on peut le voir ci dessous, les données compressées prennent 20 fois moins de place.
root@debian:~# ls -l -h total 31M -rw-r--r-- 1 root root 31M mai 9 13:10 access_point.log -rwxrwxrwx 1 root sys 2,4K mai 9 12:04 iptables.sh root@debian:~# gzip access_point.log root@debian:~# ls -l -h total 1,5M -rw-r--r-- 1 root root 1,5M mai 9 13:10 access_point.log.gz -rwxrwxrwx 1 root sys 2,4K mai 9 12:04 iptables.sh root@debian:~#
Au final, on peut observer le contenu en fichier en faisant un cat. Voici un exemple ce ce qu'on trouve à l'intérieur
May 4 09:14:25 debian kernel: [21983.824425] New input connection: IN=wlx503eaa3d7d6c OUT= MAC=50:3e:aa:3d:7d:6c:cc:b0:da:67:65:31:08:00 SRC=10.255.255.50 DST=10.255.255.254 LEN=52 TOS=0x00 PREC=0x00 TTL=128 ID=8195 DF PROTO=TCP SPT=55915 DPT=9040 WINDOW=17520 RES=0x00 SYN URGP=0 May 4 09:14:31 debian kernel: [21989.958539] New input connection: IN=wlx503eaa3d7d6c OUT= MAC=50:3e:aa:3d:7d:6c:cc:b0:da:67:65:31:08:00 SRC=10.255.255.50 DST=10.255.255.254 LEN=52 TOS=0x00 PREC=0x00 TTL=128 ID=23855 DF PROTO=TCP SPT=55916 DPT=9040 WINDOW=17520 RES=0x00 SYN URGP=0 May 4 09:17:13 debian kernel: [22151.745982] New input connection: IN=wlx503eaa3d7d6c OUT= MAC=ff:ff:ff:ff:ff:ff:cc:b0:da:67:65:31:08:00 SRC=10.255.255.50 DST=10.255.255.255 LEN=229 TOS=0x00 PREC=0x00 TTL=128 ID=17657 PROTO=UDP SPT=138 DPT=138 LEN=209 May 4 09:18:17 debian hostapd: wlx503eaa3d7d6c: WPA rekeying GTK May 4 09:18:17 debian hostapd: wlx503eaa3d7d6c: STA cc:b0:da:67:65:31 WPA: sending 1/2 msg of Group Key Handshake May 4 09:18:17 debian hostapd: wlx503eaa3d7d6c: STA cc:b0:da:67:65:31 WPA: received EAPOL-Key frame (2/2 Group) May 4 09:18:17 debian hostapd: wlx503eaa3d7d6c: STA cc:b0:da:67:65:31 WPA: group key handshake completed (RSN) May 4 09:19:36 debian kernel: [22295.592654] New input connection: IN=wlx503eaa3d7d6c OUT= MAC=50:3e:aa:3d:7d:6c:cc:b0:da:67:65:31:08:00 SRC=10.255.255.50 DST=10.255.255.254 LEN=52 TOS=0x00 PREC=0x00 TTL=128 ID=24462 DF PROTO=TCP SPT=55917 DPT=9040 WINDOW=17520 RES=0x00 SYN URGP=0
On a bien rempli les obligations légales qui étaient :
Il suffit de se rendre sur https://aruljohn.com/mac/ et de renseigner l'adresse mac de l'équipement Au final on obtient par exemple OnePlus Tech (Shenzhen) Ltd.
On récupère l'adresse MAC et l'adresse IP associée (on est donc en mesure de dire qui s'est rendu sur tel ou tel site)
Avec les logs iptables