BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 27 апр 2024, 22:17

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 13 ] 
Автор Сообщение
 Заголовок сообщения: Java 1.6 и TLS 1.2
СообщениеДобавлено: 07 окт 2015, 14:09 
Не в сети
Клиент

Зарегистрирован: 07 мар 2012, 15:02
Сообщения: 932
Откуда: Воронеж
Карма: 35
Долгое время рассылали SMS через одного провайдера по HTTPS. На днях они поменяли у себя сертификат, в котором TLS 1.2. Теперь биллинг не может установить HTTPS соединение из-за шестовый явы. Есть ли простые способы решить проблему без установки 6.2 и перехода на Java 1.8?

_________________

Клиент: вер. 6.2.873 / 04.12.2017 19:38:11
os: Windows 7; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_65
Сервер: вер. 6.2.1202 / 04.12.2017 19:39:21
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_91


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Java 1.6 и TLS 1.2
СообщениеДобавлено: 07 окт 2015, 14:28 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
http://docs.bitel.ru/display/BGBILLING62/SSLv3

Накатили вниз до 5.1 версии.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Java 1.6 и TLS 1.2
СообщениеДобавлено: 07 окт 2015, 14:30 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
Хм, не сразу заметил. Так у вас проблема наоборот, что TLS не поддерживается . Ну все равно попробуйте прописать протокол явно для tomcat и возможно в самой java тоже.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Java 1.6 и TLS 1.2
СообщениеДобавлено: 07 окт 2015, 14:31 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
в 6й яве этого вроде как нету TLSv1.2, только с 7й
https://blogs.oracle.com/java-platform- ... _and_https

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Java 1.6 и TLS 1.2
СообщениеДобавлено: 07 окт 2015, 14:32 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
а нет у вас же как у клиента проблема . Тогда попробуйте тогда Java тюнинговать по той же ссылке. Только java . писать
Код:
connector.https.sslEnabledProtocols

бесполезно, это для нашего встроенного tomcat


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Java 1.6 и TLS 1.2
СообщениеДобавлено: 07 окт 2015, 14:33 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
у вас какая версия ? можно просто поставить 7-у java.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Java 1.6 и TLS 1.2
СообщениеДобавлено: 07 окт 2015, 15:44 
Не в сети
Клиент

Зарегистрирован: 07 мар 2012, 15:02
Сообщения: 932
Откуда: Воронеж
Карма: 35
stark писал(а):
у вас какая версия ? можно просто поставить 7-у java.

А на моём биллинге можно просто взять и поставить java 7? Вдруг что-нибудь поломается?

_________________

Клиент: вер. 6.2.873 / 04.12.2017 19:38:11
os: Windows 7; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_65
Сервер: вер. 6.2.1202 / 04.12.2017 19:39:21
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_91


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Java 1.6 и TLS 1.2
СообщениеДобавлено: 07 окт 2015, 17:09 
Не в сети
Клиент

Зарегистрирован: 07 мар 2012, 15:02
Сообщения: 932
Откуда: Воронеж
Карма: 35
Похоже, я всё напутал. TLS ни при чём. Включил в приложении дебаг:
Код:
-Djavax.net.debug=all

Увидел, что в качестве протокола используется TLSv1.

В том же дебаге обнаружил, что проблема возникает после вот этих строк:
Код:
*** Diffie-Hellman ServerKeyExchange
DH Modulus:  { ... }
DH Base:  { 2 }
Server DH Public Key:  { ... }
Anonymous
main, handling exception: java.lang.RuntimeException: Could not generate DH keypair

Гугл находит похожие ошибки, но они с другим стэктрейсом (здесь его вовсе нет). Никто не сталкивался с таким?

_________________

Клиент: вер. 6.2.873 / 04.12.2017 19:38:11
os: Windows 7; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_65
Сервер: вер. 6.2.1202 / 04.12.2017 19:39:21
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_91


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Java 1.6 и TLS 1.2
СообщениеДобавлено: 07 окт 2015, 17:24 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
vkulakov писал(а):
Похоже, я всё напутал. TLS ни при чём. Включил в приложении дебаг:
Код:
-Djavax.net.debug=all

Увидел, что в качестве протокола используется TLSv1.

В том же дебаге обнаружил, что проблема возникает после вот этих строк:
Код:
*** Diffie-Hellman ServerKeyExchange
DH Modulus:  { ... }
DH Base:  { 2 }
Server DH Public Key:  { ... }
Anonymous
main, handling exception: java.lang.RuntimeException: Could not generate DH keypair

Гугл находит похожие ошибки, но они с другим стэктрейсом (здесь его вовсе нет). Никто не сталкивался с таким?


Пополнее можно информацию дать ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Java 1.6 и TLS 1.2
СообщениеДобавлено: 07 окт 2015, 18:00 
Не в сети
Клиент

Зарегистрирован: 07 мар 2012, 15:02
Сообщения: 932
Откуда: Воронеж
Карма: 35
Попробую подробнее описать проблему.

Написал простенький класс:
Код:
package ru.xxx.test;

import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.BasicResponseHandler;
import org.apache.http.impl.client.DefaultHttpClient;

public class TestApp {

   public static void main(String[] args) throws Exception {
      String url = "https://t-sms.ru/";

      HttpGet get = new HttpGet(url);
      BasicResponseHandler handler = new BasicResponseHandler();
      
      new DefaultHttpClient().execute(get, handler);
   }
}

При запуске класса подключаю все либы биллинга версии 6.0 build 1862 и в параметры прописываю -Djavax.net.debug=all

После запуска в логах такое:
Код:
*** Diffie-Hellman ServerKeyExchange
DH Modulus:  { ... }
DH Base:  { 2 }
Server DH Public Key:  { ... }
Anonymous
main, handling exception: java.lang.RuntimeException: Could not generate DH keypair
main, SEND TLSv1 ALERT:  fatal, description = internal_error
main, WRITE: TLSv1 Alert, length = 2
[Raw write]: length = 7
0000: 15 03 01 00 02 02 50                               ......P
main, called closeSocket()
main, IOException in getSession():  javax.net.ssl.SSLException: java.lang.RuntimeException: Could not generate DH keypair
main, called close()
main, called closeInternal(true)
main, called close()
main, called closeInternal(true)
Exception in thread "main" javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
   at com.sun.net.ssl.internal.ssl.SSLSessionImpl.getPeerCertificates(SSLSessionImpl.java:352)
   at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:128)
   at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:572)
   at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:180)
   at org.apache.http.impl.conn.ManagedClientConnectionImpl.open(ManagedClientConnectionImpl.java:294)
   at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:640)
   at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:479)
   at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:906)
   at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:1066)
   at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:1044)
   at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:1035)
   at ru.joxnet.test.TestApp.main(TestApp.java:36)

Куда копать - пока не знаю. В ТП t-sms пока ничего не ответили, по ошибке "peer not authenticated" ничего внятного гугл не находит - это слишком общая ошибка, по ошибке "Could not generate DH keypair" гугл находит популярную проблему, но ко мне она, вроде, не сильно подходит. На java 1.7 всё прекрасно работает, но переводить биллинг на 1.7 совсем не хочется. Ещё пробовал добавить сертификат сайта и корневой сертификат в cacerts - тоже не помогает, хотя другим сайтам с левыми сертификатами это помогало.

Тупняк длится уже несколько часов :(...

_________________

Клиент: вер. 6.2.873 / 04.12.2017 19:38:11
os: Windows 7; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_65
Сервер: вер. 6.2.1202 / 04.12.2017 19:39:21
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_91


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Java 1.6 и TLS 1.2
СообщениеДобавлено: 07 окт 2015, 19:18 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
почему не хотите переводить на 7-ю. 6-ая версия биллинга с ней работает нормально .


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Java 1.6 и TLS 1.2
СообщениеДобавлено: 07 окт 2015, 19:22 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
кажется там бага, которую в 6-ой java исправлять уже не хотят.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Java 1.6 и TLS 1.2
СообщениеДобавлено: 07 окт 2015, 19:44 
Не в сети
Клиент

Зарегистрирован: 07 мар 2012, 15:02
Сообщения: 932
Откуда: Воронеж
Карма: 35
stark писал(а):
почему не хотите переводить на 7-ю. 6-ая версия биллинга с ней работает нормально .

Много работы дополнительной - среду разработки перенастраивать, пересобирать всё, другие проекты тоже желательно будет на 1.7 перевести, чтобы зоопарка не получилось. Тем более, если переходить на 6.2, то в любом случае на 1.8 обновляться - лишний раз не хочется. Опять же, рано утром это делать нужно...

Но над вариантом подумаю ещё.

Вообще, сейчас костыль с NGINX сделал - сервер отправляется SMS'ки через него. Не очень красиво, но работает.

_________________

Клиент: вер. 6.2.873 / 04.12.2017 19:38:11
os: Windows 7; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_65
Сервер: вер. 6.2.1202 / 04.12.2017 19:39:21
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_91


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 13 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.174s | 44 Queries | GZIP : On ]