Настраивать SSL на новой установке Glassfish 3.1
У меня были многочисленные проблемы с 3.0.1, таким образом, я рекомендую обновить до 3,1
Следуя инструкциям на ссылке выше, это успешно создает keystore и сертификаты.
Измените Основной пароль
Основной пароль, который установлен на Glassfish, является также паролем, который предоставляет доступ к хранилищу сертификата SSL. Пароль по умолчанию для Glassfish 3.1 является "changeit", Glassfish 3.0.1 не имеет основного пароля по умолчанию. Для изменения основного пароля открывают командную строку и тип
cd C:\glassfish3\bin
asadmin change-master-password
Вам предложат пароль по умолчанию, затем попросил вводить новый пароль, который должен быть установлен на то, на что Вы устанавливаете свой пароль хранилища сертификатов.
Установите сертификат
скопируйте файл server.keystore файл к C:\glassfish3\glassfish\domains\domain1\config\
В C:\glassfish3\glassfish\domains\domain1\config
откройте документ domain.xml и найдите все экземпляры фразы s1as
и замените их псевдонимом, который Вы дали своим сертификатам. Должно быть приблизительно 22 изменения. В том же документе заменяют все экземпляры keystore.jks
кому: server.keystore
, это - название нового keystore, созданного в javadude инструкциях выше. Должно быть 2 изменения.
Установка glassfish для SSL
Запустите сервер Glassfish путем попытки Запускаться-> Все Программы->, веб-профиль выпуска открытого исходного кода сервера Glassfish-> Запускает сервер приложений. Это откроет cmd окно, минимизированное внизу экрана. Максимизируйте это и введите основной пароль Glassfish. Откройте веб-браузер и введите URL http://localhost:4848
получить доступ к консоли администрирования. Перейдите к Конфигурациям-> конфигурация Сервера-> Сетевая конфигурация-> Сетевые слушатели-> Http-listener-2. Измените Порт на 443 и удостоверьтесь, что разрешать флажок безопасности устанавливается. Нажмите сохраняют. На SSL Вкладка устанавливает флажок рядом с SSL3 и TLS, изменяет сертификат NickName на псевдоним, который Вы устанавливаете на предыдущем шаге (если это уже автоматически не установило), и щелчок сохраняют.
В конце концов, я не смог заставить saslauthd выводить какую-либо лучшую отладочную информацию, но на случай, если это поможет кому-то еще, вот способ, которым я следовал, чтобы решить свою проблему.
Сначала я запустил saslauthd с помощью strace, вот так:
# strace -f saslauthd -d -a ldap
Затем я смог увидеть все системные вызовы, сделанные saslauthd. Похоже, что при первоначальном обмене с сервером AD произошел сбой, возможно, во время согласования TLS.
Я решил посмотреть, смогу ли я воспроизвести подобное поведение, используя инструмент командной строки ldapsearch, поставляемый с openldap. Я дал такую команду:
$ ldapsearch -d 9 -H ldaps://ldap.ad.mycompany.com:3269/ -D MYBINDDN -w xxxxxx \
-b DC=mycompany,DC=xx '(&(cn=myuser)(objectClass=person))'
-d 9, наконец, дала мне полезные отладочные данные:
TLS: certificate [CN=VeriSign Class 3 Public Primary Certification Authority - G5,OU="(c) 2006 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US] is not valid - error -8179:Peer's Certificate issuer is not recognized..
При чтении справочной страницы ldap.conf я обнаружил, что мне нужно установить TLS_CACERT и / или TLS_CACERTDIR, чтобы они указывали на пакеты сертификатов и файлы. Я использую Centos 6, они находятся в / etc / pki / tls / certs /,