--- title: MagicPack created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, networking, monitoring, packet-capture, python] confidence: medium contested: false sources: [https://selfh.st/apps/?tag=networking, https://github.com/magicstack/magicpack] --- # MagicPack đŸȘ„ > Outil Python expĂ©rimental d'analyse de paquets rĂ©seau en continu, avec dĂ©tection d'anomalies simple et dashboard lĂ©ger. | MĂ©tadonnĂ©e | Valeur | | :--- | :--- | | **Site web** | https://github.com/magicstack/magicpack | | **GitHub** | https://github.com/magicstack/magicpack | | **License** | MIT | | **Langage** | Python (Scapy) | | **Étoiles** | 1 ⭐ | | **DerniĂšre MAJ** | 2023 | | **CatĂ©gorie** | [[cat-networking]] | ## Description **MagicPack** est une expĂ©rience Python pour faire de la **capture et analyse de paquets en temps rĂ©el** sur une interface rĂ©seau locale. L'outil s'appuie sur **Scapy** (la bibliothĂšque de rĂ©fĂ©rence en Python pour le rĂ©seau bas-niveau) et offre un petit dashboard web (Flask) qui affiche, en direct, le trafic observĂ© : distribution par protocole, top sources/destinations, flux dominants, et rĂšgles de dĂ©tection d'anomalies basiques. L'idĂ©e est de fournir un Ă©quivalent lĂ©ger de **Wireshark + Zeek** sans la complexitĂ© d'indexation et de stockage longue durĂ©e. C'est un outil de **dĂ©tection ponctuelle** (« qu'est-ce qui passe sur mon rĂ©seau en ce moment ? »), pas de l'observabilitĂ© long-terme. Il peut ĂȘtre utile pour : - Diagnostiquer un rĂ©seau domestique qui «rame» - VĂ©rifier la prĂ©sence d'appareils inattendus - Comprendre la rĂ©partition du trafic IoT - Apprendre le fonctionnement de TCP/IP de maniĂšre visuelle Le projet est trĂšs jeune (1 Ă©toile, peu de releases) et doit ĂȘtre considĂ©rĂ© comme **expĂ©rimental** : l'API peut changer, les performances sont limitĂ©es par Scapy (pas adaptĂ© au 10 Gbps), et la doc est minimale. À rĂ©server Ă  du labo ou de la pĂ©dagogie, pas Ă  de la production. ## Installation ### Docker Compose ```yaml services: magicpack: image: ghcr.io/magicstack/magicpack:latest container_name: magicpack restart: unless-stopped network_mode: host # nĂ©cessaire pour voir le trafic rĂ©el cap_add: - NET_RAW environment: - INTERFACE=eth0 - TZ=Europe/Paris ports: - "8090:5000" ``` > ⚠ `network_mode: host` + `NET_RAW` est requis pour la capture de paquets : c'est **inĂ©vitable** pour ce type d'outil. ### Manuelle (Python) ```bash git clone https://github.com/magicstack/magicpack.git cd magicpack python3 -m venv venv && source venv/bin/activate pip install -r requirements.txt sudo python app.py --interface eth0 # (sudo nĂ©cessaire pour raw socket) ``` ## Configuration - Choisir l'interface Ă  Ă©couter (`eth0`, `wlan0`, `br-lan` sur OpenWrt, etc.) - DĂ©finir un filtre BPF optionnel : `--filter "port not 22 and not host 192.168.1.1"` - RĂ©gler la fenĂȘtre de rĂ©tention en mĂ©moire (dĂ©faut : 5 minutes) - Activer ou non le log PCAP rotatif pour analyse post-mortem ## Alternatives - **Open Source** : [Wireshark](https://www.wireshark.org/) (le standard GUI), [Zeek](https://github.com/zeek/zeek) (analyse rĂ©seau profonde), [ntopng](https://github.com/ntop/ntopng) (flow-based, plus mature), [tcpdump](https://github.com/the-tcpdump-group/tcpdump) (CLI) - **Web-based** : [Malcolm](https://github.com/cisagov/Malcolm) (suite complĂšte Zeek+Arkime), [Arkime](https://github.com/arkime/arkime) (capture full-packet avec UI web) - **PropriĂ©taire** : SolarWinds NetFlow, ExtraHop, Darktrace (hors budget et hors philosophie self-host) ## SĂ©curitĂ© - **Permissions Ă©levĂ©es** : `NET_RAW` est l'Ă©quivalent d'un sniffer — n'importe qui peut capturer des mots de passe en clair. Limiter l'accĂšs Ă  l'hĂŽte. - **DonnĂ©es sensibles** : les paquets capturĂ©s contiennent des credentials HTTP, des cookies, des mĂ©tadonnĂ©es personnelles. Chiffrer le volume de stockage, ne **jamais** exposer le dashboard publiquement. - **LĂ©galitĂ©** : la capture de paquets sur un rĂ©seau qui n'est pas le vĂŽtre est **illĂ©gale** dans la plupart des juridictions. - **ExpĂ©rimental** : projet Ă  1 Ă©toile, ne pas utiliser pour des diagnostics critiques. ## Ressources - [selfh.st — Networking](https://selfh.st/apps/?tag=networking) - [GitHub magicstack/magicpack](https://github.com/magicstack/magicpack) - [Scapy documentation](https://scapy.net/) ## Pages LiĂ©es - [[cat-networking]] - [[recettes-docker-compose]] - [[app-uptime-kuma]] — monitoring de services