Puncte:0

Cum configurez un proxy invers nginx pentru unitatea Synology?

drapel sr

tl;dr

Am încercat să configurez nginx pentru a redirecționa o conexiune TCP peste 6690 către Synology Drive. Dar la utilizare asculta 6690 ssl; Synology Drive Client nu poate găsi NAS-ul și când îl folosește asculta 6690; (fără SSL) NAS este găsit, dar certificatul său nesemnat este utilizat în locul certificatului stocat cu nginx. Aveți idee cum să activați SSL și să utilizați un proxy invers nginx cu Synology Drive?

Introducere

Am găsit deja câteva postări/întrebări care explică cum să configurați o conexiune SSL la un Synology NAS folosind nginx ca proxy invers pe un computer separat. Astfel, atunci când accesez (https://)my-domain.com, pot (deja) să accesez site-ul meu de setări Synology Drive (adică DSM-ul accesibil prin portul 5000/5001). Cu toate acestea, vreau să configurez și Synology Drive pentru a utiliza același certificat SSL de la Let's Encrypt, dar aici întâmpin dificultăți la configurarea nginx.

Întrebare

Deci, vreau doar să fie configurat Synology Drive și am configurat DNS-ul drive.my-domain.com pentru a ajunge la routerul meu.De asemenea, am achiziționat un certificat SSL pentru acest domeniu și am ajustat portul HTTPS Synology Drive la 10003. În routerul meu, am redirecționat porturile 80, 443 și 6690 către proxy-ul meu invers, așa cum este recomandat. Aici. Pentru nginx, am configurat /etc/nginx/conf.d/synology.conf:

includ /etc/letsencrypt/options-ssl-nginx.conf;

Server {
    asculta 80;
    nume_server drive.domeniul-meu.com server_implicit;

    # Pentru verificarea Let's Encrypt
    locație ^~ /.cunoscut {
        permite tuturor;
        root /data/letsencrypt/;
    }
}

Server {
    asculta 80;
    asculta 443 ssl;
    nume_server drive.my-domain.com;

    Locație / {
        proxy_set_header Gazdă $gazdă;
        proxy_set_header X-Real_IP $adresă_la distanță;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $schema;
        proxy_pass https://<IP-OF-SYNOLOGY-NAS>:10003;
        proxy_read_timeout 90;
    }

    ssl_certificate /etc/letsencrypt/live/drive.my-domain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/drive.my-domain.com/privkey.pem;
    
    includ /etc/letsencrypt/options-ssl-nginx.conf;
    dacă ($schemă != "https") {
        returnează 301 https://$host$request_uri;
    }
}

În plus, am adăugat următoarea linie la /etc/nginx/nginx.conf:

...

includ /etc/nginx/fallthrough.conf;

Și /etc/nginx/fallthrough.conf conține următoarele:

curent {

    amonte synology_drive {
         server <IP-OF-SYNOLOGY-NAS>:6690;
    }

    Server {
        asculta 6690 ssl;
        proxy_pass synology_drive;
        
        ssl_certificate /etc/letsencrypt/live/drive.my-domain.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/drive.my-domain.com/privkey.pem;
    }
}

Cu toate acestea, atunci când încercați să configurați Synology Drive Client, acesta nu poate conecta/găsește Synology NAS. La schimbarea /etc/nginx/fallthrough.conf să nu folosească SSL, adică:

curent {

    amonte synology_drive {
         server <IP-OF-SYNOLOGY-NAS>:6690;
    }

    Server {
        asculta 6690;
        proxy_pass synology_drive;
    }
}

Este găsit Synology NAS, dar este folosit certificatul autosemnat stocat pe NAS, în locul certificatului de la Let's Encrypt stocat pe computerul proxy invers.

Stie cineva ce sunt sau poate gresesc aici?

Puncte:1
drapel us

The curent modulul este un modul de proxy de nivel 4, adică redirecționează numai pachetele TCP între clientul care se conectează și serverul proxy.

Deoarece TLS se întâmplă la un nivel superior, nginx nu participă la criptarea SSL. Sunt de fapt surprins de faptul că nginx nu dă erori la certificat_ssl directivele care sunt în configurația dvs.

Singura dvs. opțiune este să copiați cheia privată și certificatul de la nginx pe dispozitivul Synology, deoarece aceasta este entitatea care încheie conexiunea TLS în acest caz.

drapel sr
Înainte de a configura nginx ca proxy invers, deja copiam în mod regulat cheile în Synology. Dar acest lucru părea instabil și nu metoda preferată. Ei bine... cred că va trebui să rămân deocamdată.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.