Проблема SelfSSL - 2 защищенных сайта, работающие на одном компьютере с сертификатами selfssl - PullRequest
0 голосов
/ 13 июля 2010

Я немного причесываюсь из-за проблемы, которая возникает у нас на одном из серверов среды нашего проекта.Я пытаюсь запустить 2 разные версии нашего сайта из 2 разных кодовых баз.Сайт имеет безопасную и небезопасную зону.

Я могу, как и ожидалось, создать столько незащищенных сайтов, сколько захочу.

Проблема, с которой я сталкиваюсь, заключается в том, что я не могу получить два защищенных сайта для каждого партнера.-существовать в том же окне.

Я создал сертификаты, используя SelfSSL для каждого сайта.Каждый сайт, как и следовало ожидать, имеет собственный порт, соответственно 443 и 444.

Я обнаружил, что, как только у меня работает защищенный сайт A, защищенный сайт B перестает работать, несмотря на наличие собственногосертификат.затем, когда я исправляю сайт B, сайт A. перестает работать.

Есть предложения?

Пример моей команды SelfSSL приведен ниже:

C:\Program Files\IIS Resources\SelfSSL>selfssl /T /V:600 /S:162950877 /P:444 /N:
CN=SITEREFRESH

Сервер работаетWindows Server 2003, поэтому я думаю, будет IIS5

Ben

Ответы [ 3 ]

0 голосов
/ 31 марта 2011
0 голосов
/ 09 января 2019

Я знаю, что это старый вопрос, но у меня возникли те же проблемы не так давно, и я решил опубликовать, как я решил проблему.Начнем с того, что это очень старая проблема: https://blogs.msdn.microsoft.com/david.wang/2005/04/20/bug-selfssl-allows-only-one-website-to-have-ssl-at-a-time/

После множества проб и ошибок кажется, что если привязки уже существуют до того, как вы запустите selfssl, тогда сертификаты будут работать с этими привязками.Например:

appcmd set site "[site-name]" /+bindings.[protocol='https',bindingInformation='*:44302:']
selfssl /N:CN="[cert name]" /S:[site_id] /P:44302 /Q /T

appcmd set site "[other-site-name]" /+bindings.[protocol='https',bindingInformation='*:44301:']
selfssl /N:CN="[other cert name]" /S:[site_id] /P:44301 /Q /T

Это создаст две привязки на разных сайтах, которые оба работают (https://[site -name]: 44301 и https://[other -site-name]: 44302 ).Похоже, что selfssl не будет создавать и подписывать несколько привязок, он будет подписывать только несколько привязок.

PS.См. appcmd docs для получения дополнительной информации, если вы хотите узнать больше об этом инструменте.

0 голосов
/ 28 октября 2010

Почему бы не использовать один и тот же сертификат на обоих сайтах? Любой сертификат SSL предназначен для идентификации хоста (сервера), а не подэкземпляров сервера, работающего на разных портах (но с одним и тем же именем хоста / полным доменным именем).

Вполне вероятно, что IIS видит коллизию между одной и той же идентификационной информацией, используемой в двух разных сертификатах, и отказывается оставлять оба работающих сайта, которые подтверждают одну и ту же идентификационную информацию с разными сертификатами. В производственных условиях это можно рассматривать как попытку подделать личность сервера с помощью другого сертификата, что заставит фанатов безопасности вздрогнуть и кричать из комнаты.

...