как настроить SSL для CAS и клиента (разные машины) - PullRequest
5 голосов
/ 17 февраля 2012

как настроить ssl-сертификат (самоподписанный) на разных машинах для CAS-сервера и клиента

  • Сервер CAS: Linux, Tomcat, jdk6
  • Клиент: Windows, Tomcat, JDK6
  • Сертификат: самоподписанный (keytool)
  • Окружающая среда: развитие

CAS и клиенты работают нормально на одном компьютере, если на другом компьютере выдается ошибка сертификата.

достаточно ли одного самозаверяющего сертификата для клиентского и серверного компьютера?

требуются любые конкретные изменения настроек клиента и сервера, такие как имя компьютера сервера и имя компьютера клиента для создания сертификата

1 Ответ

4 голосов
/ 18 февраля 2012

Не могли бы вы добавить исключение, которое вы получаете и в каком узле?

В качестве общего совета обратите внимание, что:

1) вам необходимо установить сертификат на клиентской JVMНа машине, если вы используете https-соединение на стороне сервера между клиентом cas и сервером CAS

2) JVM не примет (во время выполнения) самоподписанный сертификат с ip в CN (общее имя).

Подробнее см. https://wiki.jasig.org/display/CASUM/SSL+Troubleshooting+and+Reference+Guide


Таким образом, из опубликованного вами исключения следует следующий случай (цитируемый по ссылке выше для устранения неполадок CAS):

Альтернативные имена субъектов отсутствуют. Пример трассировки стека альтернативного имени javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: Альтернативные имена субъектов отсутствуют.1017 *

Это обычно происходит, когда самозаверяющий сертификат, выданный localhost, помещается на компьютер, к которому осуществляется доступ по IP-адресу.Следует отметить, что генерация сертификата с IP-адресом для общего имени, например CN = 192.168.1.1, OU = Middleware, dc = vt, dc = edu, не будет работать в большинстве случаев, когда клиент, устанавливающий соединение, является Java,Например, клиент Java CAS будет выдавать ошибки SSL при подключении к серверу CAS, защищенному сертификатом, содержащим IP-адрес в CN.

Вы решили изменить сертификат с именем домена вместоip, а затем переустановить его в системном хранилище доверенных сертификатов для клиента CAS и в хранилище ключей для сервера CAS?

...