Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Нужна помощь с настройкой ssl сертификата. / 5 сообщений из 5, страница 1 из 1
23.04.2016, 21:10
    #39223205
AK1988
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с настройкой ssl сертификата.
Веб сервер: Glassfish 5
Центр сертификации: startssl.com

1. Генерирую ключ с алиасом kidstore.ml в keystore.jks.
Код: sql
1.
keytool -genkey -alias kidstore.ml -keyalg RSA -keypass changeit -storepass changeit -keystore "/home/andrei/glassfish5/glassfish/domains/domain1/config/keystore.jks" -keysize 2048


Терминал
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
andrei@kidstore:~/glassfish5/glassfish/domains/domain1/config$ keytool -genkey -alias kidstore.ml -keyalg RSA -keypass changeit -storepass changeit -keystore "/home/andrei/glassfish5/glassfish/domains/domain1/config/keystore.jks" -keysize 2048
What is your first and last name?
  [Unknown]:  kidstore.ml
What is the name of your organizational unit?
  [Unknown]:  kidstore.ml
What is the name of your organization?
  [Unknown]:  kidstore.ml
What is the name of your City or Locality?
  [Unknown]:  Kremenchuk
What is the name of your State or Province?
  [Unknown]:  Poltava Region
What is the two-letter country code for this unit?
  [Unknown]:  UA
Is CN=kidstore.ml, OU=kidstore.ml, O=kidstore.ml, L=Kremenchuk, ST=Poltava Region, C=UA correct?
  [no]:  yes




2. Делаю сертификат kidstore.csr из сгенерированого выше ключа.
Код: sql
1.
keytool -certreq -alias kidstore.ml -file "/home/andrei/kidstore.csr" -keystore "/home/andrei/glassfish5/glassfish/domains/domain1/config/keystore.jks"



Содержимое сертификата (расшифровку можно посмотреть здесь https://www.sslshopper.com/csr-decoder.html или на скрине ниже)
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
-----BEGIN NEW CERTIFICATE REQUEST-----
MIIC8jCCAdoCAQAwfTELMAkGA1UEBhMCVUExFzAVBgNVBAgTDlBvbHRhdmEgUmVnaW9uMRMwEQYD
VQQHEwpLcmVtZW5jaHVrMRQwEgYDVQQKEwtraWRzdG9yZS5tbDEUMBIGA1UECxMLa2lkc3RvcmUu
bWwxFDASBgNVBAMTC2tpZHN0b3JlLm1sMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
gVIr6ZeyjxDIwuhGKd22syPzGElUwoFAZ2gDGFi+P2fHFAWNXHv2LgZ4+k6URWNUL+XogEWThiUd
iUR17CUs+a/8qwFr2MTL1dku7c3XhDP2ft+FApRipf7xo1Vhd/5pn47y/NNMbqasWUV9hukJKcD3
bWqIUSiTYHHCSZerCA5QWJx2d1ORRfePGHTJEuYp+9PPuZFGTr3aoE+bkg5esTeR1toH+hd3qENM
qBk7GKY08gbrWpNVfkdGk06iewIbg+/WhrUDXr5y31XD8gZXo9QIcJ8plDtWrEKlMPGlx82NSnGE
MbdJSX/ygFZfHXAONYJ4fAfREg9MVtEh3tCtoQIDAQABoDAwLgYJKoZIhvcNAQkOMSEwHzAdBgNV
HQ4EFgQUrKj0ADf9rLG4VPEYi0OM/X6B9TgwDQYJKoZIhvcNAQELBQADggEBACs8I/hiZ4O7DNDx
WZOMOJPt54s1Ojr2/O9z2UT7H96ETuEbu2gueCUB5RRVmlMMn3aaFvwzA3iLT/9eZMfiir+JYz5z
mYwjz9M291ET72SiwwyfWHZJcd8KHCZMeeAK6OQdcXvU4KW3YYK/1pXDeuWxaLXe2HD8Ea4Mu7/i
la0JKOIc6aHzmx1kgTvmb+gFy2r0OBFV7nocI07DDPlLCcFlZzIKto1ojIOq+b/lh02W13bpAAUS
bK0UttQnaH1ur9it9bQaQfYoNZtFnzSTvkZdlcY2aLjdwLzRxNExo8aIRoGATx/jn7g33WDO9gVN
gTOsFK0Y2JEacXlZh/XVusY=
-----END NEW CERTIFICATE REQUEST-----


http://rghost.net/8ljJyFSmV.view

3. В центре сертификации вставляю этот сертификат.
http://rghost.net/85JJZkBR2.view

4. Присылают архив с тремя файлами:
- root.crt
- 1_Intermediate.crt
- 2_kidstore.ml.crt
http://rghost.net/6rGPnnTGw.view

5. Добавляю первые два в cacerts.jks, третий в keystore.jks
Код: sql
1.
2.
3.
4.
keytool -import -alias root -keystore "/home/andrei/glassfish5/glassfish/domains/domain1/config/cacerts.jks" -trustcacerts -file "/home/andrei/startssl/root.crt"
keytool -import -alias intermediate -keystore "/home/andrei/glassfish5/glassfish/domains/domain1/config/cacerts.jks" -trustcacerts -file "/home/andrei/startssl/1_Intermediate.crt"

keytool -import -alias kidstore.ml -keystore "/home/andrei/glassfish5/glassfish/domains/domain1/config/keystore.jks" -trustcacerts -file "/home/andrei/startssl/2_kidstore.ml.crt"


первые две вставки проходят успешно, на третей вставке получаю ошибку
Код: sql
1.
keytool error: java.lang.Exception: Failed to establish chain from reply



Нашел такую тему http://stackoverflow.com/questions/22203627/glassfish-3-and-import-signed-ssl-certificate-issue с той же ошибкой

добавляю в keystore.jks root.crt
Код: sql
1.
keytool -import -v -trustcacerts -alias root -file "/home/andrei/startssl/root.crt" -keystore "/home/andrei/glassfish5/glassfish/domains/domain1/config/keystore.jks"



повторно добавляю 2_kidstore.ml.crt в keystore.jks
Код: sql
1.
keytool -import -alias kidstore.ml -keystore "/home/andrei/glassfish5/glassfish/domains/domain1/config/keystore.jks" -trustcacerts -file "/home/andrei/startssl/2_kidstore.ml.crt"


та же ошибка
Код: sql
1.
keytool error: java.lang.Exception: Failed to establish chain from reply



методом тыка понимаю что проблема в дубликации алиаса kidstore.ml в keystore.jks. Во всех мануалах пишут о необходимости соответствия алиаса с именем файла.

Меняю этот keystore.ml на нульцевый. В чистый keystore.jks добавляю
Код: sql
1.
2.
keytool -import -alias kidstore.ml -keystore "/home/andrei/glassfish5/glassfish/domains/domain1/config/keystore.jks" -trustcacerts -file "/home/andrei/startssl/2_kidstore.ml.crt"
keytool -import -v -trustcacerts -alias root -file "/home/andrei/startssl/root.crt" -keystore "/home/andrei/glassfish5/glassfish/domains/domain1/config/keystore.jks"



Далее открываю domain.xml и во всем файле меняю имя стандартного сертификата s1as на kidstore.ml, включаю Glassfish, сайт не открывается, mozilla пишет Secure Connection Failed, chrome пишет ERR_CONNECTION_CLOSED. В логах Glassfish-а пусто.


Снова удаляю keystore.jks. Добавляю самоподписной сертификат
Код: sql
1.
keytool -genkey -alias kidstore.ml -keyalg RSA -keypass changeit -storepass changeit -keystore "/home/andrei/glassfish5/glassfish/domains/domain1/config/keystore.jks" -keysize 2048


Терминал
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
andrei@kidstore:~$ keytool -genkey -alias kidstore.ml -keyalg RSA -keypass changeit -storepass changeit -keystore "/home/andrei/glassfish5/glassfish/domains/domain1/config/keystore.jks" -keysize 2048
What is your first and last name?
  [Unknown]:  kidstore.ml
What is the name of your organizational unit?
  [Unknown]:  kidstore.ml
What is the name of your organization?
  [Unknown]:  kidstore.ml
What is the name of your City or Locality?
  [Unknown]:  Kremenchuk
What is the name of your State or Province?
  [Unknown]:  Poltava Region
What is the two-letter country code for this unit?
  [Unknown]:  UA
Is CN=kidstore.ml, OU=kidstore.ml, O=kidstore.ml, L=Kremenchuk, ST=Poltava Region, C=UA correct?
  [no]:  yes



На самоподписном, по сути, таком же сертификате работает.

Добавление к самоподписному в keystore.jks
Код: sql
1.
2.
keytool -import -alias root -keystore "/home/andrei/glassfish5/glassfish/domains/domain1/config/keystore.jks" -trustcacerts -file "/home/andrei/startssl/root.crt"
keytool -import -alias intermediate -keystore "/home/andrei/glassfish5/glassfish/domains/domain1/config/keystore.jks" -trustcacerts -file "/home/andrei/startssl/1_Intermediate.crt"


проблемы сертифицированности не решает.

При добавлении в keystore.jks и cacerts.jks всех трех сертификатов, сайт не отображается.
Перед созданием темы искал ответ в гугле, вот статьи, но они или устаревшие или по-сути описывают выше проделаное, возможно они помогут.
http://www.axian.ru/blogs/weirdscience/how-to-add-an-existing-ssl-certificate-in-glassfish.php
https://askubuntu.com/questions/587683/glassfish-ssl-console-handshake-exception/589678
http://stackoverflow.com/questions/12860289/import-ssl-certificate-in-glassfish
http://virtualmarc.info/glassfish-startssl-zertifikate/
http://chaosben.blogspot.com/2012/11/glassfish-3-ssl-mit-kostenlosem.html

Что делать?
...
Рейтинг: 0 / 0
24.04.2016, 12:55
    #39223340
Dmitry.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с настройкой ssl сертификата.
прислать тебе должны твой сертификат но подписанный

4. Присылают архив с тремя файлами:
- root.crt
- 1_Intermediate.crt
- 2_kidstore.ml.crt

скорее всего это certificate chain

2_kidstore.ml.crt это ответ на твой запрос подписать сертификат
и ссылается он на 1_Intermediate.crt a тот на root.crt

и всех их надо заимпортить в keystore.jks

команды в пункте 5 примерно правильные только все импорть в keystore.jks

а ошибка "Failed to establish chain from reply" = не могу выстроить цепочку сертификатов из ответа (на подпись)
...
Рейтинг: 0 / 0
24.04.2016, 14:03
    #39223351
AK1988
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с настройкой ssl сертификата.
Спасибо Dmitry., сегодня проверил работу сайта на другом пк, оказалось он работал только на моем через локальную сеть, теперь снова возник вопрос предшествующий установке ssl соединения, домен зарегистрирован на freenom.com, а веб приложение развернуто на локальной машине, получается обращаясь по адресу kidstore.ml пользователь обращается к freenom.com, а они делают редирект на указаный мной ип, при этом конечный url выглядит вот так http://87.244.179.126, сразу нужно решить вопрос с отображением домена, а затем заняться ssl-ем. Наверно для решения нужно развертывать и домен и веб-приложение на одной машине. Еще раз спасибо!
...
Рейтинг: 0 / 0
24.04.2016, 20:30
    #39223431
Dmitry.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с настройкой ssl сертификата.
nslookup 87.244.179.126
Код: sql
1.
2.
Name:     126-179-244-87.sat.poltava.ua
Address:  87.244.179.126



nslookup kidstore.ml
Код: sql
1.
2.
Name:     kidstore.ml
Address:  195.20.48.203



запрос на 195.20.48.203 отвечает http кодом 301 и перенаправляет на 87.244.179.126

там, где ты заказывал имя kidstore.ml закажи чтобы прописали напротив него адрес 87.244.179.126
...
Рейтинг: 0 / 0
24.04.2016, 23:34
    #39223469
AK1988
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с настройкой ssl сертификата.
Dmitry., большое тебе спасибо. :)
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Нужна помощь с настройкой ssl сертификата. / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]