SSL-соединение от клиента Java - PullRequest
6 голосов
/ 11 февраля 2010

Я создаю клиентскую программу Java, которая будет отправлять конфиденциальную информацию на сервер Tomcat. Поэтому мне нужно использовать SSL-соединение, чтобы информация была зашифрована.

Мне нужно использовать самозаверяющий ненадежный сертификат, но возникают проблемы при установлении соединения с Java-клиента.

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

Я следовал за настройкой Tomcat 5.5 SSL, и они упомянули, чтобы создать хранилище ключей:

keytool -genkey -alias tomcat -keyalg RSA

Тогда я сделал экспорт выше:

keytool -export -keystore .keystore -alias tomcat -file localhost.cer

Затем я сделал импорт указанного сертификата на клиентский компьютер:

keytool -import -alias tomcat -file localhost.cer -keystore "C:\Program Files"\Java\jdk1.6.0_17\jre\lib\security\cacerts"

Но при запуске клиента я получаю:

Исключение в потоке "основной" 1031 *

Это код клиента:

URL url = new URL("https://localhost:8443");
HttpsURLConnection conn = (HttpsURLConnection)url.openConnection();
conn.setSSLSocketFactory(sslsocketfactory);
InputStream inputstream = conn.getInputStream();

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

Может кто-нибудь объяснить, как экспортировать и импортировать сертификат, созданный в Tomcat, на клиентский компьютер?

Спасибо.

Ответы [ 3 ]

1 голос
/ 11 февраля 2010

У Atlassian есть хорошие инструкции, как это исправить.

http://confluence.atlassian.com/display/JIRA/Connecting+to+SSL+services

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

0 голосов
/ 12 августа 2011

Я думаю, вы должны ввести пароль, используя "changeit".

0 голосов
/ 11 февраля 2010

Используйте Apache HTTP Cleint jar и следуйте этому SSL Guide .

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...