Настроить Apache на сервере b.example.com, чтобы разрешить запрашивать защищенные ресурсы на b.example.com с сайта example.com без предупреждений? - PullRequest
1 голос
/ 26 марта 2012

У меня есть сервер A, на котором размещен наш основной сайт www.example.com;у нас есть сертификат SSL, который распространяется на * .example.com.

. На защищенной части нашего сайта мы хотим сделать запрос к написанному нами веб-сервису и разместить его на отдельном компьютере / IP,сервер B. Веб-сервис был выделен на sub.example.com, поэтому наш SSL-сертификат покрывает это.

Что нам нужно сделать с точки зрения настройки Apache на сервере B?Насколько я понимаю, помимо прослушивания виртуального раздела на 443, нам также необходимо настроить:

SSLEngine On
SSLCertificateFile /etc/apache2/ssl/server.crt
SSLCertificateKeyFile /etc/apache2/ssl/server.key

Я предполагаю, что мой вопрос - мы должны использовать здесь наш сертификат и ключ от сервера A, илимы можем просто создать самозаверяющий аккаунт, возможно, указав sub.example.com при создании сертификата?

Я должен добавить - цель этого состоит в том, чтобы избежать предупреждений безопасности браузера и т. п., когда посетители заходятбезопасная часть example.com на сервере А..

Большое спасибо!

1 Ответ

2 голосов
/ 26 марта 2012

Во избежание предупреждений все запросы, сделанные со страницы, полученной со страницы, полученной с использованием URL-адреса https://, должны выполняться также с использованием HTTPS.

Оба сервера должны быть настроены с сертификатами, действительными для имен хостов, которые они хотят обслуживать.

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

Если предполагается, что браузер пользователя будет подключаться как к серверу A, так и к серверу B (возможно, через XHR или для загрузки дополнительного контента, такого как изображения или сценарии), следует убедиться, что оба сервера используют сертификаты, которым браузер доверяет , В этом случае вам придется использовать свой групповой сертификат + закрытый ключ на обоих (или, по крайней мере, сертификаты + личные ключи, действительные на каждом.)

...