Trick Nr 3: HTTPS mit OSPI und Raspberry Pi
Startseite › Foren › Allgemein › Trick Nr 3: HTTPS mit OSPI und Raspberry Pi
- Dieses Thema hat 3 Antworten sowie 2 Teilnehmer und wurde zuletzt vor vor 3 Jahren, 6 Monaten von Admin aktualisiert.
-
AutorBeiträge
-
10. Februar 2021 um 23:38 Uhr #23346AdminAdministrator
Um HTTPS verschlüsselt auf den OSPi zugreifen zu können, benötigt man einen HTTPS Proxy, der die Verbindung verschlüsselt.
Eine Möglichkeit ist dies mit Nginx zu machen.
1. Nginx installieren:
sudo apt-get update
sudo apt-get install nginx2. SSL Zertifikat erstellen:
cd /etc/nginx
sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/nginx/cert.key -out /etc/nginx/cert.crt3. Konfiguration bearbeiten:
sudo nano /etc/nginx/sites-enabled/default
Löschen Sie alle Zeilen und verwenden Sie diese Konfiguration. Eventuell müssen sie die beiden stellen mit “RASPI” mit dem Namen ihres Raspberry Pi anpassen.
server {
listen 80;
return 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:
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”
10. Februar 2021 um 23:43 Uhr #23347AdminAdministratorMit 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”.
14. April 2021 um 17:33 Uhr #23933nachtigallTeilnehmerToller Tipp, danach habe ich sowieso gesucht. Danke. Ich wollte noch DynDNS und letsencrypt zusätzlich, aber ob und wie das geht, werde ich schon rausbekommen. Letztlich hat das ja mehr mit Raspberry als mit OpenSprinkler zu tun…
30. April 2021 um 20:27 Uhr #24088AdminAdministratorJa, 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.
-
AutorBeiträge
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.