bg-tutorials

Como Instalar um Certificado SSL no GlassFish

Neste tutorial, você aprenderá como instalar um certificado SSL no GlassFish (agora Eclipse GlassFish) usando o utilitário Java keytool e a linha de comando asadmin.

Gerar um código CSR para GlassFish

O primeiro passo ao encomendar um certificado SSL é criar uma CSR (Certificate Signing Request) e enviá-la à sua Autoridade Certificadora (o seu fornecedor de SSL). A CSR é um bloco de texto que contém detalhes sobre o seu site e a sua organização. A CA usa-a para verificar a sua identidade, por isso, se a CSR contiver informações incorretas ou desatualizadas, a CA não assinará o seu certificado.

No GlassFish, a CSR é gerada com o keytool a partir de um keystore Java, e esse mesmo keystore contém a chave privada que você reutilizará durante a instalação. Você tem duas opções:

Você pode abrir o seu ficheiro CSR com qualquer editor de texto (por exemplo, o Notepad). Antes de enviá-lo à sua CA, recomendamos uma verificação final para detetar erros de digitação. Use a nossa ferramenta de descodificação de CSR para o inspecionar.

Dependendo do tipo de validação do seu certificado, a emissão demora entre alguns minutos e alguns dias úteis. Assim que os ficheiros SSL chegarem à sua caixa de entrada, continue com a instalação abaixo.

Instalar um certificado SSL no GlassFish

A ideia central de uma instalação no GlassFish é que o seu certificado assinado tem de ficar associado à chave privada criada com a sua CSR. Faz isso importando a cadeia de certificados e o certificado assinado para o keystore que já contém essa chave, o mesmo que usou para gerar a CSR.

Passo 1: Extraia os ficheiros do seu certificado

A sua CA envia o certificado por e-mail para o endereço fornecido, normalmente como um arquivo ZIP. Extraia-o. Os ficheiros chegam num de dois formatos:

  • PEM: ficheiros separados, tipicamente um .crt (o certificado do seu servidor) e um .ca-bundle (os certificados raiz e intermediários).
  • PKCS#7: um único ficheiro .p7b (ou .cer) que já agrupa o seu certificado juntamente com a cadeia completa.

Passo 2: Carregue os ficheiros SSL para o seu servidor GlassFish

Carregue os ficheiros extraídos para o servidor, no mesmo diretório do keystore a partir do qual gerou a sua CSR (referido abaixo como mykeystore.jks). O formato PEM requer dois comandos de importação; o PKCS#7 requer apenas um. Escolha o formato que corresponde aos seus ficheiros.

Formato PEM. Importe primeiro o pacote da CA para que o keytool consiga construir uma cadeia de confiança completa e, em seguida, importe o certificado do seu servidor. Importe o pacote da CA com:

keytool -import -trustcacerts -alias ca -file file.ca-bundle -keystore mykeystore.jks

Use o nome que preferir para o alias desta entrada da cadeia (aqui, ca), desde que seja diferente do alias da sua chave privada. De seguida, importe o certificado do servidor assinado para o alias existente da chave privada, o alias que usou ao gerar a CSR:

keytool -import -trustcacerts -alias myalias -file file.crt -keystore mykeystore.jks

Aqui, myalias tem de ser o alias que já contém a sua chave privada. Como esse alias tem uma chave, o keytool trata esta importação como uma resposta de certificado e associa o certificado assinado à chave. Este é o passo que faz o HTTPS funcionar; veja o aviso abaixo.

Formato PKCS#7. Um ficheiro .p7b já contém a cadeia completa, por isso um único comando importa tudo de uma vez, novamente para o alias da chave privada:

keytool -import -trustcacerts -alias myalias -file file.p7b -keystore mykeystore.jks

O keytool pede a palavra-passe do seu keystore. Como acima, myalias tem de corresponder ao alias existente da sua chave privada. Se não se lembrar do alias, liste o conteúdo do keystore:

keytool -list -v -keystore mykeystore.jks

Procure a entrada cujo tipo é PrivateKeyEntry; esse é o alias para o qual o seu certificado assinado deve ser importado.

⚠️ Erro crítico: não importe o certificado assinado com um alias novo. Se o alias não tiver uma chave privada existente, o keytool armazena o certificado como uma entrada de confiança independente, sem chave associada, e o TLS falhará. Importe sempre a resposta para o alias que já contém a chave (alias predefinido do GlassFish: s1as).

Passo 3: Importe para o keystore predefinido do GlassFish

Com o seu certificado no lugar, importe o seu keystore para o keystore predefinido do GlassFish. Numa instalação padrão, ele está localizado no diretório de configuração do domínio, por exemplo glassfish/domains/domain1/config/keystore.jks (versões mais antigas do GlassFish 4 colocam isto dentro de uma pasta principal glassfish4/). O truststore correspondente é o cacerts.jks, no mesmo diretório.

Nota: O GlassFish cria o domain1 por predefinição. Se você adicionou o seu próprio domínio, use o respetivo diretório.

Importe o seu keystore para o keystore do GlassFish com:

keytool -importkeystore -srckeystore mykeystore.jks -destkeystore keystore.jks

Passo 4: Faça corresponder as palavras-passe do keystore

A palavra-passe do keystore do GlassFish tem de corresponder à master password do GlassFish para o domínio. Se a master password, a palavra-passe do keystore e a palavra-passe da chave privada não forem todas iguais, o GlassFish não conseguirá desbloquear a chave e o seu certificado SSL não funcionará. (Num domínio recém-criado, a palavra-passe predefinida do keystore é changeit.)

Passo 5: Atualize a configuração do seu GlassFish

Após uma importação bem-sucedida, aponte o listener HTTPS do GlassFish para o seu certificado, para que este passe a servir o novo certificado em vez do autoassinado predefinido. Pode fazer isto a partir do navegador, através da Consola de Administração do GlassFish, ou manualmente, editando o domain.xml.

Opção A: Consola de Administração. Primeiro, ative a administração segura para o domínio:

asadmin enable-secure-admin

Reinicie o domínio GlassFish (o predefinido é domain1) para que a alteração tenha efeito:

asadmin restart-domain domain1

Agora abra a consola em https://yoursite.com:4848. Ignore o aviso do certificado autoassinado e continue. Navegue até Configurations > server-config > HTTP Service > HTTP Listeners > http-listener-2.

Abra a aba SSL e, no campo Certificate Nickname, introduza o alias do seu certificado (o mesmo do alias do keystore). Depois, mude para a aba General e altere a porta do listener para 443. O GlassFish usa a porta 8181 para HTTPS por predefinição. Guarde as alterações.

Por vezes, nem todas as referências de configuração são atualizadas para o novo alias na consola. Se isso acontecer, conclua a alteração manualmente no domain.xml (Opção B).

Opção B: Editar o domain.xml. O ficheiro domain.xml está localizado no mesmo diretório de configuração, por exemplo glassfish/domains/domain1/config/domain.xml. Para uma edição segura, pare primeiro o domínio:

asadmin stop-domain domain1

Abra o domain.xml num editor de texto e use a função Localizar (Ctrl+F) para encontrar s1as, o alias de certificado predefinido do GlassFish. Substitua todas as ocorrências de s1as pelo alias do seu certificado (neste guia, myalias). Ao atualizar todas as ocorrências, também protege a Consola de Administração com o seu certificado.

Guarde o domain.xml e inicie o domínio novamente:

asadmin start-domain domain1

Parabéns, o seu certificado SSL está agora instalado no seu servidor GlassFish.

Teste a sua instalação SSL

Depois de instalar o certificado, execute o nosso verificador SSL para testar o estado da sua instalação. A verificação instantânea revela quaisquer erros ou vulnerabilidades (como um certificado intermediário em falta ou uma cadeia não confiável) que possam afetar a forma como os navegadores tratam o seu certificado.

Onde comprar um certificado SSL para GlassFish?

O melhor lugar para comprar um certificado SSL para GlassFish é a SSL Dragon. Oferecemos alguns dos preços mais baixos do mercado e descontos regulares em toda a nossa gama de produtos SSL, além de termos estabelecido parcerias com as melhores marcas SSL do setor, garantindo encriptação forte e suporte dedicado. Todos os nossos certificados SSL são compatíveis com o GlassFish.

Para o ajudar a escolher, criámos duas ferramentas gratuitas. O nosso SSL Wizard precisa apenas de alguns segundos para encontrar a melhor oferta SSL para o seu projeto e orçamento.

Perguntas Frequentes

Qual é o keystore e o alias predefinidos no GlassFish?

Um domínio do GlassFish vem com dois ficheiros JKS no seu diretório de configuração: keystore.jks, que contém as chaves privadas, e cacerts.jks, o truststore de certificados de CA confiáveis. Ambos ficam em domains/domain1/config/ por predefinição. O alias de certificado predefinido usado pelo listener HTTP seguro é s1as, e a palavra-passe predefinida do keystore é changeit.

Por que motivo o meu certificado SSL do GlassFish não funciona depois de o importar?

A causa habitual é importar o certificado assinado com um alias novo, em vez do alias que já contém a sua chave privada. Nesse caso, o keytool armazena-o como uma entrada de certificado confiável sem chave, e o GlassFish não consegue concluir o handshake TLS. Volte a importar a resposta assinada para o alias existente da chave privada (predefinição: s1as). A segunda causa mais comum é uma incompatibilidade de palavras-passe; o keystore, a chave e a master password do domínio têm de ser todas idênticas.

Devo importar primeiro o pacote da CA ou o certificado?

Importe primeiro o pacote da CA (certificados raiz e intermediários), como entrada confiável. Isto permite que o keytool construa uma cadeia completa quando importar depois o certificado do servidor assinado para o alias da chave privada. Com um ficheiro PKCS#7 (.p7b), a cadeia já vem agrupada, pelo que uma única importação resolve tudo.

Como reinicio o GlassFish depois de alterar a configuração SSL?

Execute asadmin restart-domain domain1 para aplicar as alterações num único passo, ou pare e inicie o domínio separadamente com asadmin stop-domain domain1 seguido de asadmin start-domain domain1. É necessário reiniciar após ativar a administração segura e após editar o domain.xml.

Qual porta o GlassFish usa para HTTPS?

Por predefinição, o listener seguro (http-listener-2) usa a porta 8181, e a Consola de Administração usa a porta 4848. Para servir HTTPS na porta padrão, altere a porta do listener para 443 na Consola de Administração ou no domain.xml.

Economize 10% em certificados SSL ao fazer seu pedido hoje!

Emissão rápida, criptografia forte, 99,99% de confiança no navegador, suporte dedicado e garantia de reembolso de 25 dias. Código do cupom: SAVE10

Uma imagem detalhada de um dragão em voo
Escrito por

Redator de conteúdo experiente, especializado em certificados SSL. Transformação de tópicos complexos de segurança cibernética em conteúdo claro e envolvente. Contribua para melhorar a segurança digital por meio de narrativas impactantes.

Avatar of Sergiu Rosca
Technical Review by Sergiu Rosca

Sergiu Rosca is the core web developer behind SSL Dragon. He manages the technical infrastructure, platform performance, and backend integrations that keep the site running smoothly and securely. At SSL Dragon, Sergiu shares practical insights on web development, site optimization, and technical troubleshooting.

All SSL Dragon installation guides are tested on live server environments and undergo a strict peer-review process to ensure your infrastructure remains secure. Read our full Editorial Policy.