Како направити HTTPS први захтев преко VPN
Режим само HTTPS, прави HTTPS обележивачи и HSTS су три различита решења. Прођите кроз њих тако да први захтев буде шифрован, а не преусмерен.
Прегледач који прво укуца http:// и слети на https:// након што је преусмеравање већ послао један захтев у чистом облику, а VPN то не мења. Тунел штити ногу од клијента до излазног чвора; не шифрује ништа изнад транспортног слоја, тако да посматрач између излаза и почетка и даље види скок отвореног текста. Постављање HTTPS првог захтева је промена на страни клијента са три дела: стварном HTTPS адресом, режимом надоградње прегледача и сопственом политиком сајта. Кораци у наставку су редослед који користим, сваки са чеком који вам говори да ли је требало.
Корак 1: потврдите шта је заправо први захтев
Пре него што било шта промените, погледајте шта прегледач шаље. Отворите мрежни панел са страницом која је поново учитана из хладног кеша и прочитајте први ред: ако је шема хттп и статус је 301 или 308, све после тог реда је други захтев. curl -sS -o /dev/null -w '%{http_code} %{url_effective}\n' http://example.com репродукује исту секвенцу ван прегледача и штампа URL на којој сте завршили.
Могућа су два исхода и потребна су различита поправка. Ако сајт приказује HTTPS на истом хосту, решење је да престанете да објављујете HTTP образац: ажурирајте обележивач, вики везу, пречицу на радној површини и шаблон е-поште на који људи кликну. Ако сајт уопште не опслужује HTTPS, ниједна поставка прегледача га неће креирати, а искрен одговор је да је одредиште проблем. Немојте папирирати други случај са изузетком, јер изузетак сертификата на страници налога претвара проблем транспорта у проблем акредитива. Запишите у ком случају се налазите пре него што додирнете поставку.
Корак 2: укључите режим само HTTPS прегледача
Режим надоградње је други део, а режими нису заменљиви. Проверите шта ваш ради пре него што га омогућите: надоградите тихо, надоградите са упозорењем или одбијте учитавање.
У Firefox контроле се налазе иза about:config и на страници подешавања приватности, са dom.security.https_only_mode као прекидачем и изузецима по сајту којима се управља из менија катанца. У Chrome и Edge иста идеја се налази под Подешавања, Приватност и безбедност, Безбедност, са ознаком Увек користи безбедне везе. Без обзира на ознаку, проверите понашање у односу на хост који одговара само на порту 80, јер режим који се надограђује и потом тихо враћа није заштита за коју мислите да сте омогућили. Firefox HTTPS-Only документација описује понашање надоградње, упозорења и изузетака за тај прегледач.
Корак 3: поправите ресурсе, а не само траку за адресу
Када надоградња не успе, прочитајте тачну грешку уместо траке за адресу. Хост без слушаоца HTTPS, име хоста које се не подудара са сертификатом и истекао ланац производе различите поруке и припадају различитим власницима. Само први је јаз на страни сервера; други је обично обележивач који никада није ажуриран; трећи је проблем обнављања за који веза VPN није битна.
Немојте додавати изузетак сертификата на локацију налога јер је VPN укључен. Изузетак онемогућава проверу која би ухватила тачно пресретање које VPN треба да спречи.
Трећи део је унутар странице и то је оно што људима недостаје. Страница која се учитава преко HTTPS и даље може да повуче слике, фонтове или скрипте са хттп URL, а прегледач ће их или блокирати или ће смањити безбедносни индикатор за целу страницу. Прегледајте неуспеле захтеве на мрежној табли и поправите референце ресурса код њиховог власника уместо да претпостављате да трака за адресу описује сваки захтев. На сајту који покрећете, то значи исправљање сачуваних URLs у CMS или шаблону уместо да их поново пишете у прегледачу. Ако не можете да промените извор, снимите мешани садржај као познату празнину, јер је катанац на страници која повлачи изворе отвореног текста лажан сигнал.
Корак 4: шта HSTS додаје, а шта не
HSTS је политика сајта, а не подешавање прегледача, и то је једини механизам који овде преживи откуцани http:// на новом профилу. Када прегледач види заглавље Strict-Transport-Security за хост, преписује касније захтеве на хттпс пре него што их пошаље, што је управо оно својство које желите. Не ради ништа за хост који претраживач никада није посетио, као ни за друго име хоста који служи истој апликацији.
Проверите шта извор шаље са curl -sSI https://example.com | grep -i strict-transport-security. Заглавље које недостаје је промена сервера, а не нешто што клијент може да инсталира. Ако постоји, прочитајте max-age и да ли је includeSubDomains подешен, јер кратак max-age истиче између посета, а недостајући includeSubDomains оставља сваки поддомен незаштићеним. RFC 6797 дефинише како кориснички агент примењује смернице и шта може да игнорише. Унапред учитавање је посебна обавеза, па проверите статус преко hstspreload.org API пре него што некоме обећате да је домен на листи.
Верификација и враћање
Враћање је јефтино за подешавања клијента и скупо за HSTS. Искључивање режима само HTTPS одмах враћа претходно понашање; дугачак max-age не ради, а посетиоци који су га већ примили настављају да се надограђују док не истекне.
Зато проверите по реду пре него што то назовете готовим. Поново учитајте из хладног кеша и потврдите да је први захтев на мрежној табли хттпс без претходног преусмеравања. Затим проверите поддомен, јер је includeSubDomains место где ове смернице обично испадају уже него што се претпоставља. Затим проверите једну страницу која повлачи средства треће стране, пошто је мешани садржај грешка која преживи сваку другу исправку.
Ако је први захтев и даље хттп након свега тога, клијент више није променљива: веза на коју људи кликну јесте. Претражујте на местима која контролишете хттп форму имена хоста, ажурирајте их и поново тестирајте са истим поновним учитавањем хладног кеша. Држите питање VPN одвојено у целости, јер тунел мења ко може да види захтев и никада не мења да ли је захтев шифрован. Ред који треба ставити у тикет је да је први захтев онај који је битан, а преусмеравање је само признаница за већ послат захтев.