Trick #3: HTTPS med OSPI och Raspberry Pi

Hemsida forum I allmänhet Trick #3: HTTPS med OSPI och Raspberry Pi

Visar 4 inlägg - 1 till 4 (från 4 totalt)
  • Författare
    Inlagg
  • #23346
    Admin
    Keymaster

    För att komma åt OSPi med HTTPS-krypterad data behöver du en HTTPS-proxy som krypterar anslutningen.

    Ett sätt att göra detta är med Nginx.

    1. Installera Nginx:

    sudo apt-get uppdatering
    sudo apt-get installera nginx

    2. Skapa SSL-certifikat:

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

    3. Redigera konfiguration:

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

    Ta bort alla rader och använd denna konfiguration. Du kan behöva anpassa de två positionerna med "RASPI" med namnet på din Raspberry Pi.

    server {
    lyssna 80;
    retur 301 https://$host$request_uri;
    }

    server {

    lyssna 443;
    servernamn raspi;

    ssl_certifikat /etc/nginx/cert.crt;
    ssl_certifikatnyckel /etc/nginx/cert.key;

    ssl på;
    ssl_session_cache builtin:1000 shared:SSL:10m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HÖG:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers på;

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

    plats / {

    proxy_set_header Värd $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
    Keymaster

    Tyvärr är detta inte möjligt med OpenSprinkler 3 eftersom det inte finns någon SSL-klient tillgänglig för systemet. Du kan dock använda en (ytterligare) Linux eller Raspberry PI för att omdirigera krypteringen till OpenSprinkler 3. Byt bara ut i de två”http://localhost:8080” – Ange "localhost" med IP-adressen för OpenSprinkler och "8080" med "80".

     

    #23933
    nachtigall
    Deltagare

    Bra tips, det var det jag letade efter i alla fall. Tack. Jag ville också ha DynDNS och letsencrypt, men jag ska ta reda på om och hur det fungerar. I slutändan har detta mer att göra med hallon än med OpenSprinkler...

    #24088
    Admin
    Keymaster

    Ja, SSL-certifikatet är en sådan sak. Applikationen fungerar inte utan ett giltigt certifikat; det fungerar bara i webbläsaren och då bara om du bekräftar certifikatvarningen.

    Det finns dock fortfarande möjlighet att exportera certifikatet och installera det på smarttelefonen. Domännamnet måste matcha Common Name-certifikatet.

    Så om du t.ex. Till exempel, om du namngav din dyndns-domän sprinkler.dyndns.bla, måste det vanliga namnet vara exakt det. Och det är precis så du måste använda den i appen.

     

Visar 4 inlägg - 1 till 4 (från 4 totalt)
  • Du måste vara inloggad för att svara på detta ämne.