Cybercafé est une application Java/JavaFX pour la gestion d’un cybercafé et le filtrage réseau en temps réel.
Elle permet :
- La gestion des postes, utilisateurs, réservations et demandes de connexion.
- La surveillance du trafic réseau et le blocage de paquets selon des règles de filtrage configurables.
- La journalisation en direct des paquets bloqués ou autorisés.
- 🔑 Gestion des utilisateurs : ajout, modification, suppression, recherche.
- 🖥️ Gestion des postes : suivi de l’état (libre/occupé) et des connexions.
- 📅 Réservations : création, consultation, suppression avec confirmation.
- 📨 Demandes de connexion : notification automatique quand le temps est écoulé.
- 🛡️ Règles de filtrage réseau : blocage d’IP ou de protocole (TCP/UDP/ICMP).
- 📡 Surveillance réseau :
- Lecture de paquets simulés (JSON/NDJSON).
- Détection en temps réel des paquets à bloquer.
- Journalisation automatique dans la base de données.
- 📊 Tableau de bord : affichage en direct des journaux.
- Frontend : JavaFX + CSS (interface moderne et responsive).
- Backend : Java 21+, JDBC, DAO (pattern MVC).
- Base de données : MySQL/MariaDB.
- Service réseau :
PacketProcessorlit des fichiers JSON/NDJSON générés par un script Python (simulate_packets.py) ou par un capteur réseau.
Cybercafe/
├─ src/main/java/com/example/monprojet/
│ ├─ controllers/ # Contrôleurs JavaFX
│ ├─ dao/ # Accès base de données (DAO)
│ ├─ model/ # Entités (Utilisateur, Poste, Journal, Reglefiltre…)
│ └─ service/ # PacketProcessor, logique de filtrage réseau
├─ src/main/resources/
│ ├─ View/ # Fichiers FXML
│ ├─ css/ # Feuilles de style CSS
│ └─ database.sql # Script de création de la base
└─ README.md
- Java 21+
- Maven 3+
- MySQL/MariaDB (base
cybercafe)
git clone https://github.com/devDav65/Cybercafe.git
cd Cybercafe- Importer
database.sql(danssrc/main/resources) dans MySQL. - Vérifier les paramètres de connexion dans
Database.java(URL, utilisateur, mot de passe).
mvn clean javafx:runPour tester la capture en temps réel :
python simulate_packets.pyLe script génère un flux de paquets dans simulated_packets.jsonl.
PacketProcessor lit ce fichier en continu et met à jour le journal dans l’interface.
- Support d’un vrai sniffing réseau (ex: Scapy, PCAP).
- Gestion avancée des tarifs et paiements.
- Notifications push sur mobile.
KOKA Essowaba David
- 🏙️ Lomé, Togo
- 💼 Étudiant & Développeur passionné de cybersécurité