Feodor2 / Mypal68

web browser
Other
542 stars 34 forks source link

Правила применимости сертификатов сайтов #457

Closed zanud closed 4 weeks ago

zanud commented 1 month ago

За последние пару недель на разных сайтах несколько раз сталкивался с такой ситуацией:

Сайт https://subname2.subname1.name.com/ предъявляет сертификат, выданный на "name.com" и "*.name.com". Браузер в результате выдаёт мне целую страницу предупреждения о недействительном сертификате. Да, поклацав мышкой по разным местам этой страницы, можно в конце-концов попасть на желаемую страницу, но уж больно это неудобно. При этом на страницы домена "subname1.name.com" браузер заходит молча.

А ведь маску "*.name.com" можно понимать двояко, в том числе и как: "любая строка, оканчивающаяся на '*.name.com'" . Можно ли сделать какой-то настройкой разрешение браузеру применять именно такую трактовку звёздочки?

Feodor2 commented 1 month ago

ничего не понял, нужна ссылка на рельный сайт.

zanud commented 1 month ago

Ну, вот пример: если попытаться зайти на https://www.e-sementsov.narod.ru/, то браузер выдаёт свою внутреннюю страничку "Предупреждение: Вероятная угроза безопасности" с детализацией:

MyPal не доверяет этому сайту, потому что он использует сертификат, недействительный для www.e-sementsov.narod.ru. Сертификат действителен только для следующих доменов: *.narod.ru, narod.ru

и приходится жмакать несколько кнопок, чтобы таки попасть туда, куда хочется.

Но если из URL убрать" www." и заходить на https://e-sementsov.narod.ru/, то браузер на сайт заходит сразу же, молча.

Feodor2 commented 4 weeks ago

Ну так то сайт сделан неумело (правильно или всегда c www или нет), ты проверь на других бравзерах, если он так тебе надо свяжись с его разработчиком.

zanud commented 4 weeks ago

Ну так то сайт сделан неумело (правильно или всегда c www или нет)

Существуют сайты, которые доступны через тот вариант URL, через который на него пришли: пришли с "www." - дальше все внутренние переходы будут на "www."; пришли без "www." - дальше все внутренние переходы будут без "www."

Существуют сайты, которые при заходе через "www." перенаправляют на адрес без "www."

Существуют сайты, которые при заходе без "www." перенаправляют на адрес с "www."

И все эти три варианта в равной степени корректны, все имеют право на существование. Более того, последние два могут быть реализованы даже не средствами веб-сервера или HTML, а прописаны прямо в DNS - там такое предусмотрено.

К тому же в нашем случае сертификат вообще выдан не сайту а хостингу в целом (*.narod.ru), а там неумёхи редко попадаются.

ты проверь на других бравзерах

Проверял, конечно. Точно так же реагируют, как Mypal.

Я же не утверждаю, что Mypal в данном случае неправ. Может быть, вообще правилами работы с сертификатами только такая трактовка и предусмотрена. Но даже в таком случае было бы неплохо иметь возможность строгость проверки ослабить и считать, что "*." покрывает все поддомены того домена, на который сертификат выдан.

Ведь даже с чисто административной стороны процесса: владельцем любого поддомена (любой вложенности) какого-либо домена может быть только владелец этого вышестоящего домена, и никто, кроме него, не мог создать этот поддомен и положить сертификат на сервер. Поэтому смысла распространять действие звёздочки только на первый подуровень как-то не просматривается.

если он так тебе надо свяжись с его разработчиком.

Я на этот сайт попал один раз и больше туда ходить не буду - уже незачем. Но так получилось, что я за короткий отрезок времени напоролся на точно такую же ситуацию ещё на нескольких сайтах. И в будущем буду напарываться. Вот я и подумал, что было бы удобно иметь возможность уменьшить количество головной боли и телодвижений (и себе, и другим пользователям).