Acces de l’exterieure

Forum dédié à l'accès à DomoticZ depuis l'extérieur de chez vous : routage de ports, VPN, VPS ...
La sécurité, c'est important !!
pierrotori
Messages : 553
Inscription : 29 févr. 2016, 12:11

Acces de l’exterieure

Message par pierrotori »

Bonjour
Voici ma reflexion qui me taraude depuis que j’ai le projet d’utiliser du geofencing dans ma domotique
Comment gérez vous ca avez vous ouvert le port directement sur domoticz ou vous êtes reste en openvpn ou wireguard au niveau de l’accès ?
Bonne soirée
lost
Messages : 938
Inscription : 12 nov. 2016, 11:01

Re: Acces de l’exterieure

Message par lost »

pierrotori a écrit : 25 avr. 2023, 19:15 Comment gérez vous ca avez vous ouvert le port directement sur domoticz ou...
Personnellement, mon domoticz est ouvert sur l'extérieur depuis des années en HTTPS et avec un certificat letsencrypt (+ domaine via no-ip). Juste un fail2ban qui au besoin limitera les tentatives de bruteforce mais ne sert guère: A ma grande surprise (ayant eu un serveur ssh ouvert en direct sur l'extérieur assez longtemps qui était attaqué sans arrêt), le https est assez calme. A part les robots d'indexation de moteurs de recherche qui lâchent l'affaire sur la page de login, les seuls blocages dans les logs de fail2ban sont... nos propres erreurs occasionnelles!
Désormais, en fait, le ssh est débloqué via un switch vituel domoticz+script pour 1mn le temps de se connecter si besoin d'un shell pour les tâches administratives. C'est dire que j'ai un bon niveau de confiance et cela évite bien de la complexité.
Keros
Messages : 4932
Inscription : 23 juil. 2019, 20:57

Re: Acces de l’exterieure

Message par Keros »

Il y a également une solution avec CloudFlare Tunnel. Cela nécessite d'avoir un nom de domaine. C'est le même principe que l'utilisation d'un VPS mais avec toute la partie fastidieuse en moins. Cela revient aussi à faire confiance dans le VPS (hébergeur), CloudFlare, etc ...

Je suis étonné que Lost soit si peu attaqué sur ses ports ouverts. Tu n'aurais pas un gros trou dans la raquette qui ne nécessiterait même pas d'attaquer pour rentrer ? :mrgreen:
Neutrino
Messages : 2369
Inscription : 10 juil. 2015, 15:42
Localisation : Les Herbiers(85)

Re: Acces de l’exterieure

Message par Neutrino »

Un port à la con ouvert en http (genre 25865) et un fail2ban.
J'ai une petite dizaine d'IP actuellement bloquées.
Pour tout le reste, j'ai un serveur openvpn qui fait très bien le job.
Ma maison à plein d'IP ! :mrgreen:
SAV Bonjour. Vous avez vidé le cache ?
pierrotori
Messages : 553
Inscription : 29 févr. 2016, 12:11

Re: Acces de l’exterieure

Message par pierrotori »

J'ai du mal suivre @lost qui dit que fail2bain n'a pas une grande utilité et @neutrino dit que http suffit avec un fail2bain quoi penser
En effet un https avec fail2bain est sûrement une sécurité, cela veut dire qu'il faut tout passer en https pour la connexion et les scripts
Mais si vous faites de la géolocalisation qu'elle est votre achitecture ?
Neutrino
Messages : 2369
Inscription : 10 juil. 2015, 15:42
Localisation : Les Herbiers(85)

Re: Acces de l’exterieure

Message par Neutrino »

Le https va chiffrer la connexion entre toi et domoticz. ça empêche à des gens d'écouter ce qu'il se passe entre toi et Domoticz. Mais ça n'empêche pas à quelqu'un de vouloir s'y connecter.
C'est la que Fail2Ban intervient.
Comme son nom l'indique, si tu échoues à te connecter, ton ip est bannie.

Je passe pas par https par pur flemme de gérer un certificat :mrgreen:
Après, je fais pas de géolocalisation.
Je pourrais avec Tasker, mais j'en trouve pas l'utilité.
Ma maison à plein d'IP ! :mrgreen:
SAV Bonjour. Vous avez vidé le cache ?
pierrotori
Messages : 553
Inscription : 29 févr. 2016, 12:11

Acces de l’exterieure

Message par pierrotori »

Merci @neutrino pour l’explication je suis tenté de tester cette config afin de pouvoir tester des commandes https a partir d’outil comme geofence

Donc tu utilises une config accès direct vers domoticz sans utiliser un openvpn, juste en acces web standard, le cote sympa c’est l’accès direct

@lost ton dispositif de déblocage de ssh execute des ouvertures de tables firewall c'est ça ?

Si je résume apres avoir lu sur le sujet sachant que je suis en docker full
- Création d'un domaine voir noip https://www.noip.com/ avec mise la jour avec ma livebox
- Creation d’un user admin backup dans domoticz conseillé dans l'article suivant https://www.domoticz.com/wiki/Security
- Basculer en https avec certificat voir article https://www.domoticz.com/wiki/Native_HT ... SL_support
et https://www.domoticz.com/wiki/Native_se ... ts_Encrypt
- Ouverture d'un port translate sur https de domoticz
Fail2bn et domoticz https://www.domoticz.com/wiki/Setup_fa ... ail2ban%20
- ajout du container fail2ban https://hub.docker.com/r/linuxserver/fail2ban
Option openvpn ajout d'un interrupteur pour activer celui-ci permettant d'executer le container Wireguard pour un certain temps par exemple
J'utilise a ce jour wireguard et des fois c'est un peu lourd d'activer le vpn avec certaines contraintes de routage d'ip local que j'ai découvert a ce jour

Pourriez vous me dire si j’ai oublie une étape en terme de sécurité?
pierrotori
Messages : 553
Inscription : 29 févr. 2016, 12:11

Re: Acces de l’exterieure

Message par pierrotori »

je reviens sur ce sujet d'accéder en https à domoticz, c'est en effet lourd à mettre en place
De plus étant sur un armv7l, j'ai du mal à trouver des containers en 32 bits.

je continue ma lecture sur letsencrypt et fai2ban, en espérant y arriver un jour
pierrotori
Messages : 553
Inscription : 29 févr. 2016, 12:11

Re: Acces de l’exterieure

Message par pierrotori »

Bonjour
Ayant bien avancé, j'ai maintenant 2 containers en plus
Certbot utiliser pour le certificat en passant cette commande, je dois réessayer avec l'option webroot

Code : Tout sélectionner

sudo docker run -it --rm  --name certbot -p 80:80 -p 443:443 -v "/home/pi/certbot/etc/letsencrypt:/etc/letsencrypt" -v "/home/pi/certbot/var/lib/letsencrypt:/var/lib/letsencrypt" certbot/certbot certonly --standalone --preferred-challenges http -m <mon email> -d <mon domaine>
et fail2ban pour bannir les IP
Ayant ouvert temporairement le port 443 vers 8443 de mon container domoticz, j'ai enfin réussi a me connecter en https de l'extérieur
Voici la config pour prendre en compte les certificats

Code : Tout sélectionner

- EXTRA_CMD_ARG=-sslcert /opt/domoticz/userdata/server_cert.pem -ssldhparam /opt/domoticz/userdata/dhparam.pem
paramétrage du fail2ban, celui-ci bannit bien l'IP pendant 10 min et j'ai bien dans la log

Code : Tout sélectionner

NOTIC [domoticz] Ban 92.184.119.44
INFO  [domoticz] Found 92.184.119.44 - 2023-09-19 13:07:42
NOTIC [domoticz] Unban 92.184.119.44
commande interressante pour récupérer les dates du certificat

Code : Tout sélectionner

openssl x509 -in server_cert.pem -text | grep Not
ou
openssl x509 -noout -in server_cert.pem -dates
resultat
Not Before: Sep 14 08:06:14 2023 GMT
Not After : Dec 13 08:06:13 2023 GMT
Quand je me reconnecte avec la même IP alors que je suis banni , normalement il est censé interdire, non ?
Répondre