Bonjour à tous,
En tant que développeur software et amateur d'électronique, je travaille sur mon propre système d'accès pour gérer l'ouverture de mes portes.
Cela se passe plutôt bien et j'ai déjà pu implémenter la plupart des parties, mais je suis confronté à un dernier défi: le réseau.
C'est une partie essentielle de la sécurité de mon système et je dois m'assurer qu'il est correctement configuré. Cependant, mes connaissances en la matière sont assez limitées. J'ai essayé de me documenter autant que possible sur internet mais je n'arrive pas à avoir une vue d'ensemble et je ne veux pas investir de l'argent dans du mauvais matériel.
Voici un schéma de mon système :
Les terminaux sont des microcontrôleurs esp32 (plus précisément des modules wESP32) qui lisent les étiquettes RFID (Mifare Desfire EV1) contenant un secret et l'envoient à une unité centrale qui effectue tous les contrôles d'autorisation/validité et envoie une requête HTTP à un contrôleur de relais pour ouvrir réellement les portes. L'unité centrale peut également communiquer par HTTPS avec un dispositif NFC pour configurer les cartes NFC.
Les terminaux se trouvent à l'extérieur du bâtiment et sont donc très peu sécurisés, mais tout le reste se trouve dans une salle sécurisée.
La communication entre l'unité centrale et les relais n'est pas sécurisée (le dispositif que j'utilise ne gère pas SSL) et il est donc très important que personne ne puisse simplement brancher son ordinateur portable à la place du terminal et envoyer une commande d'ouverture de porte au contrôleur des relais... Je veux donc que les terminaux voient le moins possible et ne puissent communiquer que sur le port 443 avec l'unité centrale et ne voient aucun autre trafic (pas même celui des autres terminaux).
Il me faudrait donc trouver un switch avec au moins 8 sorties PoE, 3 normales et une pour internet. Et j'aurais besoin de pouvoir définir des règles dans le commutateur pour m'assurer que :
- eth0..7 ne peut communiquer qu'avec eth8 (et non entre eux) sur le port 443
- eth9 ne peut communiquer qu'avec eth8 sur le port 443
- eth10 ne peut communiquer avec eth8 que sur le port 80
- Seul eth8 peut accéder à internet sur eth11
Pour l'instant, la seule piste que j'ai trouvée serait d'utiliser MikroTik netPower 16P. Il fonctionne sous RouterOS et apparemment on peut définir ce genre de règles de pare-feu comme ici: https://github.com/rcarvalloh/mikrotik_zbf
Quelqu'un aurait-il une idée du matériel que je pourrais utiliser pour répondre à mes besoins ? Et comment définir les règles de pare-feu dont j'ai besoin ?
P.S.: Je n'ai pas un budget illimité, alors si le problème est trop compliqué à résoudre avec du hardware standard, je peux aussi assouplir mes requirements. Je pourrais imaginer avoir 4 zones, une pour eth0-7, une pour eth8, une pour eth9-10 et une pour eth11. La communication étant cryptée par SSL, il serait acceptable que les terminaux voient les données des autres.
D'avance pour votre aide précieuse.