14. Авг 2020, 10:39

Заметки по работе с Tomcat

Apache Tomcat

1. Генерация хранилища с сертификатом

keytool -genkey -alias [some-alias] -keyalg RSA

2. Импорт сертификата в хранилище

keytool -import -keystore [keystorename.jks] -file [certificate.pem] -alias [some-alias]

3. Экспортировать сертификат с приватным ключом из PKSC12 в keystore:

keytool -importkeystore -deststorepass [keystorepass] -destkeystore [keystorename.jks] -srckeystore [pkcs12filecertname.p12] -srcstoretype PKCS12 -srcstorepass [keystorepass] -srcalias [src-alias] -destalias [dest-alias]

deststorepass и srcstorepass должны совпадать.

4. Посмотреть список сертификатов в хранилище

keytool -list -v -keystore [keystorename.jks]

Обращаем внимание на параметр Entry type

В случае Entry type: trustedCertEntry в хранилище будет содержаться только сертификат без приватного ключа и SSL не заведется. Должно быть Entry type: PrivateKeyEntry

5. Экспорт сертификата из хранилища

keytool -export -keystore [keystorename.jks] -alias [some-alias] -storepass [keystorepass] -file [cert-file-name.pem]

6. Смена алиаса

keytool -changealias -alias "old-alias" -destalias "new-alias" -keystore [keystorename.jks]

7. Конвертация хранилища из JKS в PKCS12

keytool -importkeystore -srckeystore [keystorename.jks] -destkeystore [keystorename] -deststoretype pkcs12

8. Удаление сертификата с определенным алиасом из хранилища

keytool -delete -alias [some-alias] -keystore [keystorename.jks]

9. Пример коннектора, работающего по HTTPS с самоподписанным сертификатом

    <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
               maxThreads="150" SSLEnabled="true">
        <SSLHostConfig>
                <Certificate certificateKeystoreFile="[keystorename]" 
                             certificateKeystorePassword="[keystorepass]"
                             keyAlias="[some-alias]"
                             truststoreType="PKCS12" />
        </SSLHostConfig>
    </Connector>
comments powered by Disqus

© andrdi.com 2020