Astuce n°3 : HTTPS avec OSPI et Raspberry Pi

Page d'accueil Forums En général Astuce n°3 : HTTPS avec OSPI et Raspberry Pi

Hinweis: Beiträge im Forum sind nur für angemeldete Kunden mit mindestens einem Kauf möglich. Bitte melde dich mit dem Kundenkonto an, über das du bestellt hast.

4 matières de 1 à 4 (sur un total de 4)
  • Auteur
    Messages
  • #23346
    Admin
    Maître des clés

    Afin d'accéder à l'OSPi avec des données cryptées HTTPS, vous avez besoin d'un proxy HTTPS qui crypte la connexion.

    Une façon de procéder consiste à utiliser Nginx.

    1. Installez Nginx :

    sudo apt-get mise à jour
    sudo apt-get install nginx

    2. Créez un certificat SSL :

    cd /etc/nginx
    sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/nginx/cert.key -out /etc/nginx/cert.crt

    3. Modifier la configuration :

    sudo nano /etc/nginx/sites-enabled/default

    Supprimez toutes les lignes et utilisez cette configuration. Vous devrez peut-être adapter les deux chiffres « RASPI » avec le nom de votre Raspberry Pi.

    serveur {
    écoutez 80 ;
    retour 301 https://$hôte$request_uri;
    }

    serveur {

    écoutez 443 ;
    nom_serveur raspi;

    certificat_ssl /etc/nginx/cert.crt;
    ssl_certificate_key /etc/nginx/cert.key ;

    SSL activé ;
    ssl_session_cache intégré : 1000 partagé : SSL : 10 m ;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2 ;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers activé ;

    # access_log /var/log/nginx/access.log;

    emplacement / {

    proxy_set_header Hôte $host ;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;

    # Fix the “It appears that your reverse proxy set up is broken » error.
    proxy_pass http://localhost:8080;
    proxy_read_timeout 90;

    proxy_redirect http://localhost:8080 https://raspi;
    }
    }

    4. Nginx aktivieren und neu starten:

    sudo systemctl enable nginx

    sudo service nginx restart

    5. Fertig.

    Sie können nun per Browser zugreifen. Er leitet http auf https anfragen um oder Sie greifen direkt per http darauf zu

    Das Original der Anleitung stammt von hier und wurde angepasst:

    https://www.digitalocean.com/community/tutorials/how-to-configure-nginx-with-ssl-as-a-reverse-proxy-for-jenkins

    Vergessen Sie nicht, die Portfreigabe ihres Routers auf den Raspi-Port 443 zu ändern (also z.b. vorher 3000 nach raspi/80 ändern in 3000 nach raspi/443). In der OpenSprinkler-App verbinden Sie sich dann mit der Option « SSL »

    #23347
    Admin
    Maître des clés

    Malheureusement, cela n'est pas possible avec l'OpenSprinkler 3, car aucun client SSL n'est disponible pour ce système. Vous pouvez toutefois utiliser un Linux ou Raspberry PI (supplémentaire) pour rediriger le chiffrement vers l'OpenSprinkler 3. Remplacez simplement, dans les deux mentions « http://localhost:8080 », « localhost » par l'adresse IP de l'OpenSprinkler et « 8080 » par « 80 ».

     

    #23933
    nachtigall
    Participant

    Très bon conseil, c'est ce que je cherchais en tout cas. Merci. Je voulais aussi DynDNS et Letsencrypt, mais je vais voir si et comment cela fonctionne. En fin de compte, cela a plus à voir avec Raspberry qu'avec OpenSprinkler...

    #24088
    Admin
    Maître des clés

    Oui, le certificat SSL est une telle chose. L'application ne fonctionne pas sans un certificat valide ; cela ne fonctionne que dans le navigateur Web et uniquement si vous confirmez l'avertissement du certificat.

    Il reste cependant la possibilité d’exporter le certificat et de l’installer sur le smartphone. Le nom de domaine doit correspondre au certificat Common Name.

    Donc si vous, par ex. Par exemple, si vous avez nommé votre domaine dyndns sprinkler.dyndns.bla, le nom commun doit être exactement celui-là. Et c'est exactement ainsi que vous devez l'utiliser dans l'application.

     

4 matières de 1 à 4 (sur un total de 4)
  • Connexion