У меня есть 2 веб-сервера, A и B. A - это веб-сайт, используемый пользователями, а B - это набор веб-сервисов, используемых сервером A. Поэтому мне нравится включать https для сервера B. Поскольку браузеры не должны идти сюда, я думал, что будет достаточно использовать самоподписанный сертификат. Я успешно создал самоподписанный сертификат на сервере B (через IIS) и экспортировал его, скопировал на сервер A, добавил в доверенные сертификаты. Но все же я получаю предупреждение браузера при открытии https-соединения с сервером B. Я подозреваю, что проблема в том, что сертификат привязан к имени машины, а не к myservices.mydomain.com?
Итак, 2 вопроса
Можно ли использовать самоподписанный сертификат для сервера, обслуживающего только мой веб-сайт?
Если да, то как я могу это создать?
1) Можно ли использовать самоподписанный сертификат для сервера, обслуживающего только мой веб-сайт?
Если это общедоступный веб-сайт, все пользователи получат предупреждение, потому что они не доверяют вам, вы не находитесь в хранилище доверенных сертификатов ни в одном браузере или системе. Если вы один имеете доступ к этому веб-сайту или только через HTTPS (и все остальные через HTTP), вы можете вручную доверять ему, добавив сертификат в свой локальный магазин.
2) Если да, то как я могу это сгенерировать?
Я не понимаю, что вы хотите создать, так как у вас уже есть сертификат. У вас есть 2 возможности доверять собственному самозаверяющему сертификату.
Во-первых, вы можете добавить исключения для каждого приложения. Получив предупреждение, вы сможете пометить сертификат как действительный и надежный. Убедитесь, что вы проверили отпечатки пальцев, иначе вы могли доверять сертификату злоумышленника.
Во-вторых, вы можете позволить ему доверять вашей системе, добавив его в хранилище сертификатов системы. Здесь необходимо, чтобы Общее имя (CN) или любой из Альтернативные имена субъектов (SAN) точно соответствует имени домена, которое вы используете для доступа к веб-странице. Не смешивайте здесь имена хостов, доменные имена и IP-адреса.