Hoe om HTTPS die eerste versoek te maak deur 'n VPN
Slegs HTTPS-modus, regte HTTPS-boekmerke en HSTS is drie verskillende oplossings. Gaan deur hulle in volgorde sodat die eerste versoek geënkripteer word, nie herlei word nie.
'n Blaaier wat http:// eerste tik en op https:// land nadat 'n herleiding reeds een versoek in die duidelike gestuur het, en 'n VPN verander dit nie. Die tonnel beskerm die been van die kliënt tot by die uitgangsknoop; dit enkripteer niks bo die vervoerlaag nie, so 'n waarnemer tussen die uitgang en die oorsprong sien steeds die gewone teks hop. Om HTTPS die eerste versoek te maak, is 'n kliënt-kantverandering met drie dele: 'n regte HTTPS-adres, die blaaier se opgraderingsmodus en die webwerf se eie beleid. Die stappe hieronder is die volgorde wat ek gebruik, elk met die tjek wat jou vertel of dit geneem het.
Stap 1: bevestig wat die eerste versoek eintlik is
Voordat jy iets verander, kyk na wat die blaaier stuur. Maak die netwerkpaneel oop met die bladsy wat van 'n koue kas herlaai is en lees die eerste ry: as die skema http is en die status 301 of 308 is, is alles na daardie ry 'n tweede versoek. curl -sS -o /dev/null -w '%{http_code} %{url_effective}\n' http://example.com reproduseer dieselfde volgorde buite die blaaier en druk die URL waarop jy beland het.
Twee uitkomste is moontlik en hulle benodig verskillende regstellings. As die webwerf HTTPS op dieselfde gasheer bedien, is die oplossing om op te hou om die HTTP-vorm te publiseer: werk die boekmerk, die wiki-skakel, die lessenaarkortpad en die e-possjabloon wat mense klik op. As die webwerf glad nie HTTPS bedien nie, sal geen blaaierinstelling dit skep nie, en die eerlike antwoord is dat die bestemming die probleem is. Moenie oor die tweede geval met 'n uitsondering skryf nie, want 'n sertifikaatuitsondering op 'n rekeningbladsy verander 'n vervoerprobleem in 'n geloofsprobleem. Skryf neer in watter geval jy is voordat jy 'n instelling raak.
Stap 2: skakel die blaaier se slegs HTTPS-modus aan
Die opgraderingsmodus is die tweede deel, en die modusse is nie uitruilbaar nie. Kyk wat joune doen voordat jy dit aktiveer: gradeer stil op, gradeer op met 'n waarskuwing, of weier om te laai.
In Firefox is die kontroles agter about:config en in die privaatheidinstellingsbladsy, met dom.security.https_only_mode as die skakelaar en per-werf-uitsonderings wat vanaf die hangslotkieslys bestuur word. In Chrome en Edge is dieselfde idee onder Instellings, Privaatheid en sekuriteit, Sekuriteit, gemerk Gebruik altyd veilige verbindings. Wat ook al die etiket, verifieer die gedrag teen 'n gasheer wat net op poort 80 antwoord, want 'n modus wat opgradeer en dan stilweg terugval, is nie die beskerming wat jy dink jy geaktiveer het nie. Die Firefox HTTPS-Only-dokumentasie spel die opgradering, waarskuwing en uitsonderingsgedrag vir daardie blaaier uit.
Stap 3: maak die hulpbronne reg, nie net die adresbalk nie
Wanneer 'n opgradering misluk, lees die presiese fout in plaas van die adresbalk. 'n Gasheer met geen HTTPS-luisteraar nie, 'n gasheernaam wat nie by die sertifikaat pas nie en 'n ketting wat verval het, produseer verskillende boodskappe en behoort aan verskillende eienaars. Slegs die eerste is 'n gaping aan die bedienerkant; die tweede is gewoonlik 'n boekmerk wat nooit opgedateer is nie; die derde is 'n hernuwingsprobleem waarvoor die VPN-verbinding irrelevant is.
Moenie 'n sertifikaatuitsondering by 'n rekeningwerf voeg nie, want die VPN is aan. Die uitsondering deaktiveer die kontrole wat presies die onderskepping sou vang wat 'n VPN bedoel is om te voorkom.
Die derde deel is binne die bladsy, en dit is die een wat mense mis. 'n Bladsy wat oor HTTPS laai, kan steeds beelde, lettertipes of skrifte van 'n http-URL afhaal, en die blaaier sal dit óf blokkeer óf die sekuriteitsaanwyser vir die hele bladsy afgradeer. Inspekteer die mislukte versoeke in die netwerkpaneel en maak die hulpbronverwysings by hul eienaar reg eerder as om aan te neem dat die adresbalk elke versoek beskryf. Op 'n webwerf wat u bestuur, beteken dit dat u die gestoorde URL's in die CMS of die sjabloon moet regstel in plaas daarvan om dit in die blaaier te herskryf. As jy nie die bron kan verander nie, teken die gemengde inhoud aan as 'n bekende gaping, want 'n hangslot oor 'n bladsy wat gewone teksbronne trek, is 'n vals sein.
Stap 4: wat HSTS byvoeg, en wat dit nie doen nie
HSTS is 'n webwerfbeleid eerder as 'n blaaiervoorkeur, en dit is die enigste meganisme hier wat 'n getikte http:// op 'n vars profiel oorleef. Sodra 'n blaaier 'n Strict-Transport-Security-opskrif vir 'n gasheer gesien het, herskryf dit latere versoeke na https voordat dit gestuur word, wat presies die eiendom is wat jy wil hê. Dit doen niks vir 'n gasheer wat die blaaier nog nooit besoek het nie, en niks vir 'n ander gasheernaam wat dieselfde toepassing bedien nie.
Kyk wat die oorsprong stuur met curl -sSI https://example.com | grep -i strict-transport-security. 'n Ontbrekende kopskrif is 'n bedienerverandering en nie iets wat 'n kliënt kan installeer nie. As dit teenwoordig is, lees max-age en of includeSubDomains gestel is, want 'n kort maksimum ouderdom verval tussen besoeke en 'n ontbrekende includeSubDomains laat elke subdomein onbeskermd. RFC 6797 definieer hoe 'n gebruikersagent die beleid toepas en wat dit mag ignoreer. Voorlaai is 'n afsonderlike verbintenis, so gaan status deur die hstspreload.org API na voordat jy iemand belowe dat 'n domein op die lys is.
Verifikasie en terugrol
Terugrol is goedkoop vir die kliëntinstellings en duur vir HSTS. Deur slegs HTTPS-modus af te skakel, herstel die vorige gedrag onmiddellik; 'n lang maksimum ouderdom nie, en besoekers wat dit reeds ontvang het, hou aan om op te gradeer totdat dit verval.
Verifieer dus in volgorde voordat jy dit klaar noem. Herlaai vanaf 'n koue kas en bevestig die eerste versoek in die netwerkpaneel is https met geen voorafgaande herleiding nie. Kontroleer dan 'n subdomein, want includeSubDomains is waar hierdie beleide gewoonlik nouer blyk te wees as wat aanvaar word. Gaan dan een bladsy na wat derdeparty-bates trek, aangesien gemengde inhoud die mislukking is wat elke ander oplossing oorleef.
As die eerste versoek na dit alles nog http is, is die kliënt nie meer die veranderlike nie: die skakel wat mense klik is. Soek die plekke wat jy beheer vir die http-vorm van die gasheernaam, dateer hulle op en toets weer met dieselfde kouekas herlaai. Hou die VPN-vraag deurgaans apart, want die tonnel verander wie die versoek kan sien en verander nooit of die versoek geënkripteer is nie. Die reël om in die kaartjie te sit, is dat die eerste versoek die een is wat saak maak, en 'n herleiding is slegs 'n kwitansie vir 'n versoek wat reeds gestuur is.