{"id":2669,"date":"2024-04-14T09:54:27","date_gmt":"2024-04-14T08:54:27","guid":{"rendered":"https:\/\/www.cgen-web-developpement.com\/fr\/?p=2669"},"modified":"2024-04-14T09:54:28","modified_gmt":"2024-04-14T08:54:28","slug":"room-control-securisation","status":"publish","type":"post","link":"https:\/\/www.cgen-web-developpement.com\/fr\/room-control-securisation\/","title":{"rendered":"Room Control &amp; Securisation"},"content":{"rendered":"\n<p>Un projet IOT open-source d\u00e9velopp\u00e9 comme base pour des programmes de room control.<\/p>\n\n\n\n<p><a href=\"https:\/\/gitlab.com\/CyrilGendarme\/iot-room-control-securisation\">https:\/\/gitlab.com\/CyrilGendarme\/iot-room-control-securisation<\/a><\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Description du projet<\/h2>\n\n\n\n<p>Vous pouvez trouver un sch\u00e9ma technique du projet, un diagramme de la logique des scripts et une description exhaustive du projet dans le dossier &#8220;Description du projet&#8221;. Voici une liste des \u00e9l\u00e9ments mis en place dans le but de s\u00e9curiser une pi\u00e8ce et les biens \u00e0 l&#8217;int\u00e9rieur:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Un syst\u00e8me d&#8217;authentification double n\u00e9cessitant la connaissance d&#8217;un mot de passe (la connexion se fait via un formulaire sur un site web) et la possession d&#8217;un badge RFID. La r\u00e9ponse \u00e0 la tentative d&#8217;authentification sera affich\u00e9e sur un \u00e9cran LCD. Appuyer sur un bouton permet \u00e9galement de se d\u00e9connecter.<\/li>\n\n\n\n<li>Un capteur d&#8217;angle \u00e0 placer sur une porte pour d\u00e9tecter quand elle est ouverte. De plus, un capteur de son (avec sensibilit\u00e9 pr\u00e9alablement calibr\u00e9e) est utilis\u00e9 pour d\u00e9terminer s&#8217;il y a de l&#8217;activit\u00e9 dans la pi\u00e8ce. Ces deux \u00e9l\u00e9ments sont connect\u00e9s \u00e0 un ESP8266.<\/li>\n\n\n\n<li>Un &#8220;capteur de pression&#8221; (dans ce projet, c&#8217;est un bouton) et un capteur de distance, qui assurent une double s\u00e9curit\u00e9 pour un objet sp\u00e9cifique. En pratique, l&#8217;objet \u00e0 prot\u00e9ger sera soit plac\u00e9 directement sur les capteurs, soit, s&#8217;il est trop petit, sur une petite plateforme. Ces deux capteurs sont connect\u00e9s \u00e0 un ESP32, qui communique via LoRa avec le Raspberry Pi (RPI).<\/li>\n\n\n\n<li>Une LED et un buzzer, qui sont activ\u00e9s lorsqu&#8217;une alarme est d\u00e9clench\u00e9e. (Il s&#8217;agit d&#8217;un prototype ; le produit final utiliserait probablement une sir\u00e8ne stroboscopique \u00e0 la place.)<\/li>\n\n\n\n<li>Lorsqu&#8217;une intrusion se produit, une photo de la pi\u00e8ce s\u00e9curis\u00e9e et une image satellite (de l&#8217;ext\u00e9rieur) sont envoy\u00e9es dans une salle Webex. Un SMS est envoy\u00e9 \u00e0 un num\u00e9ro de r\u00e9f\u00e9rence, et un e-mail est envoy\u00e9 \u00e0 une adresse pr\u00e9-sp\u00e9cifi\u00e9e. (Il serait \u00e9galement possible de contacter imm\u00e9diatement la police avec un message automatique contenant l&#8217;adresse du site. Cependant, cela n&#8217;est pas mis en \u0153uvre dans ce prototype pour des raisons \u00e9videntes.)<\/li>\n\n\n\n<li>En pratique, un \u00e9tat (ferm\u00e9, intrusion, personne authentifi\u00e9e) est associ\u00e9 \u00e0 la pi\u00e8ce en permanence. Cet \u00e9tat est visible sur un tableau de bord administratif, qui se compose d&#8217;une carte affichant les diff\u00e9rents sites s\u00e9curis\u00e9s, chacun associ\u00e9 \u00e0 une couleur. En cas d&#8217;intrusion, l&#8217;administrateur a la possibilit\u00e9 de d\u00e9sactiver l&#8217;alarme. Ce tableau de bord permet \u00e9galement de consulter l&#8217;historique des changements d&#8217;\u00e9tat pour le site (stock\u00e9 dans une base de donn\u00e9es). Le client dispose \u00e9galement d&#8217;un tableau de bord (limit\u00e9 \u00e0 son site) qui lui permet de se connecter (en utilisant le badge RFID pour entrer le mot de passe) et de d\u00e9sactiver l&#8217;alarme si n\u00e9cessaire.<\/li>\n\n\n\n<li>Des v\u00e9rifications r\u00e9guli\u00e8res de l&#8217;\u00e9tat du RPI seront effectu\u00e9es \u00e0 l&#8217;aide de l&#8217;API Shodan, qui v\u00e9rifiera l&#8217;\u00e9tat du port 80 sur l&#8217;adresse IP correspondante. En cas d&#8217;\u00e9chec, l&#8217;administrateur sera notifi\u00e9 sur son tableau de bord.<\/li>\n\n\n\n<li>Une VM priv\u00e9e sera utilis\u00e9e comme courtier, et un courtier public sera utilis\u00e9 pour transmettre des informations sur les changements d&#8217;\u00e9tat du site \u00e0 un administrateur (utilis\u00e9 sur leur tableau de bord et avec la base de donn\u00e9es) et pour acc\u00e9der aux donn\u00e9es de connexion pour la base de donn\u00e9es. Les abonn\u00e9s seront des n\u0153uds Node-RED qui ex\u00e9cutent des scripts sur des VM\/RPI (composants du protocole d&#8217;intrusion, r\u00e9ponse aux tentatives de connexion, etc.).<\/li>\n<\/ul>\n\n\n\n<p>La solution propos\u00e9e vise \u00e0 englober des sc\u00e9narios o\u00f9 le plus haut niveau de s\u00e9curit\u00e9 est requis, et inclut donc tous les \u00e9l\u00e9ments ci-dessus. Cependant, chacun de ces composants peut \u00eatre consid\u00e9r\u00e9 comme un &#8220;module&#8221; pouvant \u00eatre utilis\u00e9 en fonction de besoins sp\u00e9cifiques. Pour cela, les scripts Python seront aussi petits que possible et assembl\u00e9s ensemble par l&#8217;ex\u00e9cution de plusieurs threads cr\u00e9\u00e9s \u00e0 partir des scripts situ\u00e9s dans un certain r\u00e9pertoire du syst\u00e8me de fichiers.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><a href=\"#tech-implied\"><\/a>Technologies<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Linux SysAdmin : 2 VM&#8217;s Ubuntu et un Raspeberry Pi (gestion dynamique des IP&#8217;s, s\u00e9curisation, installation de divers outils from source)<\/li>\n\n\n\n<li>Microcontrollers : ESP32 and ESP8266 (programmation effectu\u00e9e par l&#8217;interm\u00e9diaire de l&#8217;IDE Arduino)<\/li>\n\n\n\n<li>MongoDB database<\/li>\n\n\n\n<li>MQTT protocol (authentication, topics and securisation)<\/li>\n\n\n\n<li>Cryptographie : Certificats asym\u00e9trique cr\u00e9\u00e9s avec openssl<\/li>\n\n\n\n<li>Protocole LoRaWan<\/li>\n\n\n\n<li>Python, utilis\u00e9 comme language de scripting<\/li>\n\n\n\n<li>Node-Red<\/li>\n\n\n\n<li>Divers API&#8217;s interfac\u00e9es : Twilio, Teams Webex, NASA&#8217;s Earth, Shodan<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Un projet IOT open-source d\u00e9velopp\u00e9 comme base pour des programmes de room control. https:\/\/gitlab.com\/CyrilGendarme\/iot-room-control-securisation Description du projet Vous pouvez trouver un sch\u00e9ma technique du projet, un diagramme de la logique des scripts et une description exhaustive du projet dans le dossier &#8220;Description du projet&#8221;. Voici une liste des \u00e9l\u00e9ments mis en place dans le but [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2432,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_et_pb_use_builder":"off","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"categories":[20],"tags":[],"class_list":["post-2669","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-portfolio"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Room Control &amp; Securisation<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.cgen-web-developpement.com\/fr\/room-control-securisation\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Room Control &amp; Securisation\" \/>\n<meta property=\"og:description\" content=\"Un projet IOT open-source d\u00e9velopp\u00e9 comme base pour des programmes de room control. https:\/\/gitlab.com\/CyrilGendarme\/iot-room-control-securisation Description du projet Vous pouvez trouver un sch\u00e9ma technique du projet, un diagramme de la logique des scripts et une description exhaustive du projet dans le dossier &#8220;Description du projet&#8221;. Voici une liste des \u00e9l\u00e9ments mis en place dans le but [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.cgen-web-developpement.com\/fr\/room-control-securisation\/\" \/>\n<meta property=\"og:site_name\" content=\"CGEN Development\" \/>\n<meta property=\"article:published_time\" content=\"2024-04-14T08:54:27+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-04-14T08:54:28+00:00\" \/>\n<meta name=\"author\" content=\"cgen\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/www.cgen-web-developpement.com\/fr\/wp-content\/uploads\/sites\/10\/2024\/04\/room-securisation.jpg\" \/>\n<meta name=\"twitter:label1\" content=\"\u00c9crit par\" \/>\n\t<meta name=\"twitter:data1\" content=\"cgen\" \/>\n\t<meta name=\"twitter:label2\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.cgen-web-developpement.com\/fr\/room-control-securisation\/\",\"url\":\"https:\/\/www.cgen-web-developpement.com\/fr\/room-control-securisation\/\",\"name\":\"Room Control &amp; Securisation\",\"isPartOf\":{\"@id\":\"https:\/\/www.cgen-web-developpement.com\/fr\/#website\"},\"datePublished\":\"2024-04-14T08:54:27+00:00\",\"dateModified\":\"2024-04-14T08:54:28+00:00\",\"author\":{\"@id\":\"https:\/\/www.cgen-web-developpement.com\/fr\/#\/schema\/person\/4b176fd9c11e08ae04b075dba477c641\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.cgen-web-developpement.com\/fr\/room-control-securisation\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.cgen-web-developpement.com\/fr\/room-control-securisation\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.cgen-web-developpement.com\/fr\/room-control-securisation\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.cgen-web-developpement.com\/fr\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Room Control &amp; Securisation\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.cgen-web-developpement.com\/fr\/#website\",\"url\":\"https:\/\/www.cgen-web-developpement.com\/fr\/\",\"name\":\"CGEN Development\",\"description\":\"Cr\u00e9ation de sites web et d&#039;applications\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.cgen-web-developpement.com\/fr\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.cgen-web-developpement.com\/fr\/#\/schema\/person\/4b176fd9c11e08ae04b075dba477c641\",\"name\":\"cgen\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/www.cgen-web-developpement.com\/fr\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/7a9d88b71532e9290c9f3e26a8f62a11bbe46d45009ea7e6cb1cb040918076d1?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/7a9d88b71532e9290c9f3e26a8f62a11bbe46d45009ea7e6cb1cb040918076d1?s=96&d=mm&r=g\",\"caption\":\"cgen\"},\"url\":\"https:\/\/www.cgen-web-developpement.com\/fr\/author\/cgen\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Room Control &amp; Securisation","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.cgen-web-developpement.com\/fr\/room-control-securisation\/","og_locale":"fr_FR","og_type":"article","og_title":"Room Control &amp; Securisation","og_description":"Un projet IOT open-source d\u00e9velopp\u00e9 comme base pour des programmes de room control. https:\/\/gitlab.com\/CyrilGendarme\/iot-room-control-securisation Description du projet Vous pouvez trouver un sch\u00e9ma technique du projet, un diagramme de la logique des scripts et une description exhaustive du projet dans le dossier &#8220;Description du projet&#8221;. Voici une liste des \u00e9l\u00e9ments mis en place dans le but [&hellip;]","og_url":"https:\/\/www.cgen-web-developpement.com\/fr\/room-control-securisation\/","og_site_name":"CGEN Development","article_published_time":"2024-04-14T08:54:27+00:00","article_modified_time":"2024-04-14T08:54:28+00:00","author":"cgen","twitter_card":"summary_large_image","twitter_image":"https:\/\/www.cgen-web-developpement.com\/fr\/wp-content\/uploads\/sites\/10\/2024\/04\/room-securisation.jpg","twitter_misc":{"\u00c9crit par":"cgen","Dur\u00e9e de lecture estim\u00e9e":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.cgen-web-developpement.com\/fr\/room-control-securisation\/","url":"https:\/\/www.cgen-web-developpement.com\/fr\/room-control-securisation\/","name":"Room Control &amp; Securisation","isPartOf":{"@id":"https:\/\/www.cgen-web-developpement.com\/fr\/#website"},"datePublished":"2024-04-14T08:54:27+00:00","dateModified":"2024-04-14T08:54:28+00:00","author":{"@id":"https:\/\/www.cgen-web-developpement.com\/fr\/#\/schema\/person\/4b176fd9c11e08ae04b075dba477c641"},"breadcrumb":{"@id":"https:\/\/www.cgen-web-developpement.com\/fr\/room-control-securisation\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.cgen-web-developpement.com\/fr\/room-control-securisation\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.cgen-web-developpement.com\/fr\/room-control-securisation\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.cgen-web-developpement.com\/fr\/"},{"@type":"ListItem","position":2,"name":"Room Control &amp; Securisation"}]},{"@type":"WebSite","@id":"https:\/\/www.cgen-web-developpement.com\/fr\/#website","url":"https:\/\/www.cgen-web-developpement.com\/fr\/","name":"CGEN Development","description":"Cr\u00e9ation de sites web et d&#039;applications","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.cgen-web-developpement.com\/fr\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"fr-FR"},{"@type":"Person","@id":"https:\/\/www.cgen-web-developpement.com\/fr\/#\/schema\/person\/4b176fd9c11e08ae04b075dba477c641","name":"cgen","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.cgen-web-developpement.com\/fr\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/7a9d88b71532e9290c9f3e26a8f62a11bbe46d45009ea7e6cb1cb040918076d1?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/7a9d88b71532e9290c9f3e26a8f62a11bbe46d45009ea7e6cb1cb040918076d1?s=96&d=mm&r=g","caption":"cgen"},"url":"https:\/\/www.cgen-web-developpement.com\/fr\/author\/cgen\/"}]}},"_links":{"self":[{"href":"https:\/\/www.cgen-web-developpement.com\/fr\/wp-json\/wp\/v2\/posts\/2669","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.cgen-web-developpement.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.cgen-web-developpement.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.cgen-web-developpement.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cgen-web-developpement.com\/fr\/wp-json\/wp\/v2\/comments?post=2669"}],"version-history":[{"count":1,"href":"https:\/\/www.cgen-web-developpement.com\/fr\/wp-json\/wp\/v2\/posts\/2669\/revisions"}],"predecessor-version":[{"id":2670,"href":"https:\/\/www.cgen-web-developpement.com\/fr\/wp-json\/wp\/v2\/posts\/2669\/revisions\/2670"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.cgen-web-developpement.com\/fr\/wp-json\/wp\/v2\/posts\/2432"}],"wp:attachment":[{"href":"https:\/\/www.cgen-web-developpement.com\/fr\/wp-json\/wp\/v2\/media?parent=2669"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.cgen-web-developpement.com\/fr\/wp-json\/wp\/v2\/categories?post=2669"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.cgen-web-developpement.com\/fr\/wp-json\/wp\/v2\/tags?post=2669"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}