Sztuczka nr 3: HTTPS z OSPI i Raspberry Pi

Strona główna Fora Ogólnie Sztuczka nr 3: HTTPS z OSPI i Raspberry Pi

Wyświetlanie 4 wpisów - od 1 do 4 (z 4 w sumie)
  • Autor
    Wpisy
  • #23346
    Admin
    Klucznik

    Aby uzyskać dostęp do OSPi z danymi zaszyfrowanymi HTTPS, potrzebujesz proxy HTTPS, które szyfruje połączenie.

    Jednym ze sposobów na osiągnięcie tego jest Nginx.

    1. Zainstaluj Nginx:

    sudo apt-get update
    sudo apt-get zainstaluj nginx

    2. Utwórz certyfikat SSL:

    płyta CD /etc/nginx
    sudo openssl req -x509 -węzły -dni 3650 -newkey rsa:2048 -keyout /etc/nginx/cert.key -out /etc/nginx/cert.crt

    3. Edytuj konfigurację:

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

    Usuń wszystkie linie i użyj tej konfiguracji. Może być konieczne dostosowanie dwóch cyfr za pomocą „RASPI” do nazwy Twojego Raspberry Pi.

    serwer {
    słuchaj 80;
    powrót 301 https://$host$request_uri;
    }

    serwer {

    słuchaj 443;
    nazwa_serwera raspi;

    certyfikat_ssl /etc/nginx/cert.crt;
    klucz_certyfikatu ssl /etc/nginx/cert.key;

    ssl włączone;
    ssl_session_cache wbudowany:1000 udostępniony:SSL:10m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers włączone;

    # log_dostępu /var/log/nginx/access.log;

    lokalizacja / {

    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;

    # Napraw błąd „Wygląda na to, że konfiguracja odwrotnego proxy jest uszkodzona”.
    proxy_pass http://localhost:8080;
    proxy_read_timeout 90;

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

    4. Włącz Nginx i uruchom ponownie:

    sudo systemctl włącz nginx

    Sudo ponowne uruchomienie usługi Nginx

    5. Gotowe.

    Możesz teraz uzyskać dostęp przez przeglądarkę. Przekierowuje http na żądania https lub uzyskujesz do niego dostęp bezpośrednio przez http

    Oryginalne instrukcje pochodzą stąd i zostały zaadaptowane:

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

    Nie zapomnij zmienić wersji portu routera na port Raspi 443 (np. wcześniej zmień 3000 na raspi/80 na 3000 na raspi/443). Następnie w aplikacji OpenSprinkler łączysz się za pomocą opcji „SSL”.

    #23347
    Admin
    Klucznik

    Niestety nie jest to możliwe w przypadku OpenSprinkler 3, ponieważ dla tego systemu nie jest dostępny klient SSL. Można jednak użyć (dodatkowego) systemu Linux lub Raspberry PI, aby przekierować szyfrowanie do OpenSprinkler 3. Po prostu zamień dwa „http://localhost:8080&8221; – Wpisz „localhost” z adresem IP OpenSprinkler i „8080” z „80”.

     

    #23933
    nachtigall
    Uczestnik

    Świetna wskazówka, w każdym razie tego szukałem. Dzięki. Chciałem też DynDNS i letsencrypt, ale dowiem się, czy i jak to działa. Ostatecznie ma to więcej wspólnego z Raspberry niż z OpenSprinkler...

    #24088
    Admin
    Klucznik

    Tak, certyfikat SSL jest czymś takim. Aplikacja nie działa bez ważnego certyfikatu; działa to tylko w przeglądarce internetowej i tylko wtedy, gdy potwierdzisz ostrzeżenie o certyfikacie.

    Nadal istnieje jednak możliwość wyeksportowania certyfikatu i zainstalowania go na smartfonie. Nazwa domeny musi być zgodna z certyfikatem nazwy zwyczajowej.

    Jeśli więc np. Na przykład, jeśli nazwałeś swoją domenę dyndns zraszacz.dyndns.bla, wówczas nazwa zwyczajowa musi być dokładnie taka. I właśnie tak trzeba go używać w aplikacji.

     

Wyświetlanie 4 wpisów - od 1 do 4 (z 4 w sumie)
  • Trzeba się znaleźć przez rozwiązanie w tym temacie.