2014-04-19 3 views
0

Я загрузил apache james 2.3.2. На данный момент я просто хочу заставить его работать на localhost с ssl encyption (но я очень мало знаю о ssl). Сначала мне удалось запустить его, создать учетные записи (запустив james-2.3.2/bin/run.bat) и подключиться к этой учетной записи с помощью почтового клиента mozilla thunderbird. Проблема возникает, когда я пытаюсь создать самоподписанный сертификат ssl. Я пробовал два разных метода.ошибка настройки apache james 2.3.2 для поддержки ssl: NoSuchAlgorithmException

  1. работает Keytool -genkeypair создает в хранилище ключей .keystore в моем домашнем каталоге и

  2. работает Keytool -genkeypair -alias сертификат -keystore my_keystore.pfx -storepass пароль - validity 365 -keyalg RSA -keysize 2048 -storetype pkcs12 создает хранилище ключей в my_keystore.pfx.

Джеймс-2.3.2 будет принять .keystore но Thunderbird не будет и Thunderbird будет принимать my_keystore.pfx но Джеймс бросает исключения. Я думаю, что ошибка может быть в файле james-2.3.2/apps/james/SAR-INF/conf.xml.

<sockets> 
    <server-sockets> 
    <factory name="plain" class="org.apache.avalon.cornerstone.blocks.sockets.DefaultServerSocketFactory"/> 
    <factory name="ssl" class="org.apache.avalon.cornerstone.blocks.sockets.TLSServerSocketFactory"> 
     <ssl-factory> 
     <keystore> 
      <file>conf/my_keystore.pfx</file> 
      <password>password</password> 
      <key-password>password</key-password> 
      <type>PKCS12</type> 
      <protocol>TLS</protocol> 
      <algorithm>SHA256withRSA</algorithm> 
      <authenticate-client>false</authenticate-client> 
     </keystore> 
     </ssl-factory> 
    </factory> 
    </server-sockets 

Когда я пытаюсь запустить Джеймс снова из пакетного файла я получаю NoSuchAlgorithException. Попробовали использовать allsorts для тега алгоритма вместо SHA256withRSA, но ничего не работает. Если кто-нибудь знает ответ, я бы был прав. Также, если кто-нибудь знает, как включить ведение журнала, поэтому я могу увидеть его в файле журнала, который тоже был бы полезен.

ответ

0

sunjce_provider.jar необходимо скопировать из папки JRE lib в папку lib в Джеймсе. Затем Джеймс примет файл .pfx, если тег алгоритма оставлен по умолчанию SunX509. Я заметил этот самородок информации в комментариях файла конфигурации xml.

Смежные вопросы