Miks Cloudflare'i puhverserver ei saa OpenVPN-i ühe nime peal kanda
Puhverserveri kaudu käiv kirje käsitleb HTTP-d ja HTTPS-i. Eraldage nimed, jätke kaks kuulajat ja andke igale ühendusele sertifikaat, mida selle teine pool tegelikult usaldab.
Üks masin jooksutab veebisaiti ja OpenVPN-i serverit ning kiusatus on suunata sellele üks hostinimi ja lasta oranžil pilvel liiklus korda teha. Puhverserver teeb korda HTTP ja HTTPS-i. See ei tee korda OpenVPN-i seanssi, ükskõik millist porti see seanss kasutab. Kaks nime, üks otse ja üks puhverserveri kaudu, ei maksa midagi ja kõrvaldavad terve segaduste klassi.
Kaks nime, kaks transporti
Andke veebisaidile puhverserveri kaudu käiv kirje, et selle HTTP- ja HTTPS-liiklus läbiks Cloudflare'i. Andke VPN-ile ainult DNS-iga kirje, mis laheneb otse avalikule VPN-i sissepääsule, ja laske kliendil kasutada UDP- või TCP-porti, mille jaoks see on seadistatud.
Mõlemad nimed võivad jõuda samale päritolumasinile. Erinevus on selles, mis toimub kliendi ja selle masina vahel, ja just see erinevus on jaotuse mõte.
Cloudflare'i võrguportide viide loetleb, milliseid porte tavaline veebipuhverserver vastu võtab. See nimekiri käsitleb HTTP-d ja HTTPS-i nendel portidel, mitte suvalisi protokolle, mis juhtumisi üht numbrit jagavad.
Port ei ole protokoll
OpenVPN-i viimine TCP 443 peale ei muuda seda HTTPS-iks. Puhverserver ootab ühenduse alguses endiselt HTTP-päringut ja OpenVPN-i klient saadab selle asemel binaarse juhtimisteate. Ühendus ebaõnnestub viisil, mis näeb välja nagu võrgu blokeering, sest midagi kasulikku ei jõua logisse.
Kui nõue on tõesti panna Cloudflare'i toode VPN-i andmete teele, hinnake sellist, mis dokumenteerib vajaliku protokolli toe. Ärge eeldage, et oranž pilv on üldine TCP või UDP tunnel, sest see on veebiliikluse vastupuhverserver kindla ülesandega.
Ainult DNS-iga kirje on igav vastus, mis töötab, ja selle poole tuleks esimesena pöörduda.
Üks masin vajab siiski kahte kuulajat
Eraldi nimed ei luba kahel protsessil samal ajal sama aadressi, porti ja transporti hõivata. Kui veebiserver hoiab juba TCP 443 kõigil aadressidel, ei saa OpenVPN-i eksemplar seda samuti võtta ilma teadliku kokkuleppeta.
Siduge VPN-i kuulaja teise pordi või teise aadressi külge, või pange ette dokumenteeritud multiplekser ja leppige sellega kaasneva halduskuluga. Kõik need valikud peaksid olema tulemüüri reeglites nähtavad, sest kuulaja, mida keegi ei dokumenteerinud, on see, mis intsidendi ajal kahe silma vahele jääb. Kirjutage valitud sidumine samasse runbooki, mis tunnelit kirjeldab. Siis ei avasta järgmine inimene seda öösel kell kaks uuesti.
Sertifikaadid järgivad ühendust, mida nad kaitsevad
Brauseri TLS-ühendus Cloudflare'iga ja Cloudflare'i ühendus teie päritoluga on kaks eraldi suhet kahe eraldi sertifikaadiga. Brauser näeb servasertifikaati. Päritolu esitab Cloudflare'ile oma sertifikaadi ja Cloudflare Origin CA sertifikaat on mõeldud täpselt teise suhte jaoks.
Seda päritolusertifikaati usaldab Cloudflare režiimis Full (strict) ja see ei ole üldiselt usaldatud brauserisertifikaat. Kui keegi külastab ainult DNS-iga hostinime otse ja saab hoiatuse, on see muutunud usaldustee oodatud tagajärg, mitte tõend, et krüpteerimine lakkas.
Otse külastatav veebisait vajab seetõttu sertifikaadiahelat, mida selle brauserid usaldavad. See võib eksisteerida kõrvuti puhverserveri kaudu käiva saidiga, mille päritolu ei ole üldse külastamiseks mõeldud.
OpenVPN kannab oma serveri identiteeti ja kliendi autentimist, oma sertifikaadiasutusega ja oma juhtkanali kaitsega. Veebisaidi lukk ei paku sellest midagi ja kaks ettevalmistusprotsessi peaksid jääma eraldi.
Kokkupuude järgib nime
Ainult DNS-iga VPN-kirje avaldab aadressi, millele see osutab. Kui see aadress on ka veebi päritolu, ei ole päritolu peidetud, ja selle kirjeldamine peidetuna, sest teine nimi käib puhverserveri kaudu, on viga, mis püsib, kuni keegi selle järgi skaneerib.
Otsustage, millised veebipäringud võivad päritolule otse jõuda, ja rakendage seda päritolul, seejärel lubage VPN-i kuulaja omadel tingimustel. Halduslehed, profiilide allalaadimised ja andmekuulaja võivad omada kolme erinevat kokkupuutenõuet isegi siis, kui üks pakett pakub kõiki kolme.
Hoidke genereeritud lingid avalikul veebinimel ja HTTPS-skeemil ning kliendiprofiilid VPN-i nimel päris protokolli ja pordiga. Kumbki teenus ei tohiks tavakäituses sõltuda teise puhverserveri seade ümberlülitamisest.
Töö järjekord: puhverserveri kaudu käiv nimi saidi jaoks, ainult DNS-iga nimi VPN-i jaoks, eraldi kuulajad, sertifikaat iga suhte kohta, seejärel üks test, mis tõestab, et iga nimi jõuab ainult sellesse teenusesse, kuhu peab.