Keytool: Importando chave TLS do servidor LDAP: Difference between revisions
No edit summary |
|||
Line 25: | Line 25: | ||
cd /opt/java-1.8.0/jre/lib/security | cd /opt/java-1.8.0/jre/lib/security | ||
cp cacerts cacerts_orig | cp cacerts cacerts_orig | ||
Revision as of 18:12, 11 October 2023
Exemplo de criação de arquivo para pegar a chave TLS/SSL de um servidor LDAPS
# openssl s_client -showcerts -connect ldapserver.empresax.com:636 < /dev/null > /tmp/cst-key.out # openssl x509 -outform DER < /tmp/cst-key.out > /tmp/cst-key.der # openssl x509 -inform der -in /tmp/cst-key.der -out /tmp/cst-key.pem # keytool -import -alias Selfsigned -keystore cacerts -file /tmp/cst-key.pem
informar uma senha, exemplo "changeit" e depois sim para aceitar a importação do certificado
No seu programa java informe para utilizar o arquivo
System.setProperty("javax.net.ssl.trustStore", "/home/ebasso/cacerts");
Importando uma chave da Let's Encrypt
Tive um problema em um cliente, onde uma aplicação Java não acessava um servidor HTTPs com a chave da Let's Encrypt.
Realizei os seguintes passos para importar a chave.
1) Ir para o diretório da cacerts e fazer o backup da cacerts
cd /opt/java-1.8.0/jre/lib/security cp cacerts cacerts_orig
2) Verificar se exista o certificado da Let's Encrypt e da ISRG Root X1
keytool -v -list -keystore cacerts -storepass changeit | grep "ISRG Root X1" keytool -v -list -keystore cacerts -storepass changeit | grep Encrypt
No meu caso a ISRG já existia, mas a Encrypt não.
Baixe os arquivos .der do seguinte site https://letsencrypt.org/certificates/
3) Importe usando comando
keytool -import -keystore cacerts -storepass changeit -noprompt -trustcacerts -alias letsencryptr3 -file lets-encrypt-r3.der
4) Verificando o import
keytool -v -list -keystore cacerts -storepass changeit | grep Encrypt