Truc #3: HTTPS met OSPI en Raspberry Pi

Startpagina Forums Algemeen Truc #3: HTTPS met OSPI en 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 reportages op het strand - 1 tot 4 (busje in totaal 4)
  • Auteur
    Rapport
  • #23346
    Admin
    Sleutelbeheerder

    Om toegang te krijgen tot de OSPi met HTTPS-gecodeerde gegevens, hebt u een HTTPS-proxy nodig die de verbinding codeert.

    Een manier om dit te doen is met Nginx.

    1. Installeer Nginx:

    sudo apt-get-update
    sudo apt-get install nginx

    2. Maak een SSL-certificaat:

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

    3. Configuratie bewerken:

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

    Verwijder alle regels en gebruik deze configuratie. Mogelijk moet u de twee cijfers met “RASPI” aanpassen aan de naam van uw Raspberry Pi.

    server {
    luister 80;
    retour 301 https://$host$request_uri;
    }

    server {

    listen 443;
    server_name raspi;

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

    ssl on;
    ssl_session_cache builtin:1000 shared:SSL:10m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers on;

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

    location / {

    proxy_set_header Host $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
    Sleutelbeheerder

    Mit dem OpenSprinkler 3 geht das leider nicht, da für das System kein SSL Client verfügbar ist. Allerdings können Sie einen (Zusätzlichen) Linux- oder Raspberry PI verwenden, um auf den OpenSprinkler 3 die Verschlüsselung umzuleiten. Ersetzen Sie einfach in den beiden “http://localhost:8080” – Angaben das “localhost” durch die Ip-adresse des OpenSprinklers und “8080” mit “80”.

     

    #23933
    nachtigall
    Deelnemer

    Goeie tip, daar was ik in ieder geval naar op zoek. Bedankt. Ik wilde ook DynDNS en letencrypt, maar ik zal uitzoeken of en hoe dat werkt. Uiteindelijk heeft dit meer met Raspberry te maken dan met OpenSprinkler...

    #24088
    Admin
    Sleutelbeheerder

    Ja, das mit dem SSL Zertifikat ist so eine Sache. Ohne ein gültiges Zertifikat geht auch die Applikation nicht, es geht nur im Webbrowser und dann auch nur, wenn man die Zertifikatswarnung bestätigt.

    Es gibt allerdings noch die Möglichkeit, das Zertifikat zu exportieren und auf dem Smartphone zu installieren. Der Domänenname muss dem Zertifikat Common Name übereinstimmen.

    Also wenn man z. B. seine dyndns Domäne sprinkler.dyndns.bla genannt hat, dann muss der Common Name genau so heißen. Und genau so muss man diese dann auch in der app verwenden.

     

4 reportages op het strand - 1 tot 4 (busje in totaal 4)
  • Je moet een antwoord van de ander krijgen dat je kunt geven.