Instalação segura para recuperação de assinante do cliente em SSL
Cada perfil no ambiente do WebSphere Application Server contém um certificado em cadeias exclusivo assinado por um certificado raiz exclusivo existente com tempo de vida longo que foi criado quando o perfil foi criado. Esse certificado substitui o certificado autoassinado que é enviado com o WebSphere Application Server Versão 6.1 assim como o certificado simulado padrão que é enviado em liberações anteriores à Versão 6.1. Quando um perfil é associado a um gerenciador de implementação, o signatário para o certificado de assinatura raiz é incluído no armazenamento confiável comum para a célula, estabelecendo a confiança para todos os certificados assinados por esse certificado raiz.

Pelo padrão, os cliente não confiam em servidores de perfis diferentes no ambiente do WebSphere Application Server. Isto é, eles não contêm o signatário raiz para esses servidores. É possível executar algumas ações para ajudar a estabelecer essa confiança:
- Ative o prompt de troca de assinante para aceitar o assinate durante a tentativa de conexão.
- Execute o utilitário retrieveSigners para fazer download dos signatários desse sistema antes de fazer a conexão.
- Copie o arquivo trust.p12 do diretório /config/cells/<cell_name>/nodes/<node_name> do perfil do servidor para o diretório /etc do cliente. Atualize a configuração de SSL para refletir o novo nome do arquivo e a senha, se forem diferentes. Copiar o arquivo fornece ao cliente um trust.p12 que contém todos os signatários de servidores nessa célula. Além disso, pode ser necessário desempenhar essa etapa para clientes de nível anterior que ainda estejam utilizando o arquivo DummyClientTrustFile.jks. Neste caso, talvez sena necessário alterar o arquivo sas.client.props ou soap.client.props para refletir o novo armazenamento de confiança, a senha do armazenamento de confiança e o tipo de armazenamento de confiança (PKCS12).
Utilizando o Prompt de Troca de Signatário para Recuperar Signatários de um Cliente
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[z/OS]](../images/ngzos.gif)
C:\WASX_e0540.11\AppServer\profiles\AppSrv01\bin\serverStatus -all ADMU0116I: As informações de ferramenta estão sendo registradas no arquivo
C:\WASX_e0540.11\AppServer\profiles\AppSrv01\logs\serverStatus.log ADMU0128I: Iniciando a ferramenta com o
perfil AppSrv01 ADMU0503I:
Recuperando o status do servidor para todos os servidores ADMU0505I: Servidores localizados na configuração:
ADMU0506I: Nome do Servidor: dmgr
*** SSL SIGNER EXCHANGE PROMPT *** Signatário SSL do host de destino 192.168.1.5 não encontrado no armazenamento confiável
C:\WebSphere\AppServer\profiles\AppSrv01\etc\trust.p12.
Estas são as informações do signatário (verifique se o valor de compilação corresponde ao exibido no servidor):
Subject DN: CN=myhost.austin.ibm.com, OU=myhostNode01Cell, OU=myhostNode01, O=IBM, C=US
Issuer DN: CN=myhost.austin.ibm.com, OU=Root Certificate, OU=myhostNode01Cell, OU=myhostNode01,
O=IBM, C=US
Serial number: 2510775664686266 Expires: Thu Feb 19 15:58:49 CST 2009
SHA-1 Digest: 2F:96:70:23:08:58:6F:66:CD:72:61:E3:46:8B:39:D4:AF:62:98:C3
MD5 Digest: 04:53:F8:20:A2:8A:6D:31:D0:1D:18:90:3D:58:B9:9D
Subject DN: CN=myhost.austin.ibm.com, OU=Root Certificate, OU=myhostNode01Cell,
OU=myhostNode01, O=IBM, C=US Issuer DN: CN=myhost.austin.ibm.com, OU=Root
Certificate, OU=myhostNode01Cell, OU=myhostNode01, O=IBM, C=US Serial number:
2510773295548841 Expires: Tue Feb 15 15:58:46 CST 2028 SHA-1 Digest:
2F:96:70:23:08:58:6F:66:CD:72:61:E3:46:8B:39:D4:AF:62:98:C3
MD5 Digest: 04:53:F8:20:A2:8A:6D:31:D0:1D:18:90:3D:58:B9:9D
Incluir signatário no armazenamento de confiança agora? (s/n) s Uma nova tentativa da solicitação pode precisar ocorrer. ADMU0508I: O Gerenciador de Implementação "dmgr" foi INICIADO
![[IBM i]](../images/iseries.gif)
/QIBM/UserData/WebSphere/AppServer/V85/ND/profiles/dmgr/bin/serverStatus -all ADMU0116I:
As informações da ferramenta estão sendo registradas no arquivo
/QIBM/UserData/WebSphere/AppServer/V85/ND/profiles/dmgr/logs/serverStatus.log ADMU0128I:
Iniciando ferramenta com o perfil dmgr ADMU0503I:
Recuperando o status do servidor para todos os servidores ADMU0505I: Servidores localizados na configuração:
ADMU0506I: Nome do servidor:
dmgr *** SSL SIGNER EXCHANGE PROMPT *** O assinante do SSL a partir do host de destino 192.168.1.5 não
estão localizado no armazenamento confiável
/QIBM/UserData/WebSphere/AppServer/V85/ND/profiles/dmgr/etc/trust.p12.
Estas são as informações do signatário (verifique se o valor de compilação corresponde ao exibido no servidor):
Subject DN: CN=myhost.austin.ibm.com, OU=myhostNode01Cell, OU=myhostNode01, O=IBM, C=US
Issuer DN: CN=myhost.austin.ibm.com, OU=Root Certificate, OU=myhostNode01Cell, OU=myhostNode01,
O=IBM, C=US
Serial number: 2510775664686266 Expires: Thu Feb 19 15:58:49 CST 2009
SHA-1 Digest: 2F:96:70:23:08:58:6F:66:CD:72:61:E3:46:8B:39:D4:AF:62:98:C3
MD5 Digest: 04:53:F8:20:A2:8A:6D:31:D0:1D:18:90:3D:58:B9:9D
Subject DN: CN=myhost.austin.ibm.com, OU=Root Certificate, OU=myhostNode01Cell,
OU=myhostNode01, O=IBM, C=US Issuer DN: CN=myhost.austin.ibm.com, OU=Root
Certificate, OU=myhostNode01Cell, OU=myhostNode01, O=IBM, C=US Serial number:
2510773295548841 Expires: Tue Feb 15 15:58:46 CST 2028 SHA-1 Digest:
2F:96:70:23:08:58:6F:66:CD:72:61:E3:46:8B:39:D4:AF:62:98:C3
MD5 Digest: 04:53:F8:20:A2:8A:6D:31:D0:1D:18:90:3D:58:B9:9D
Incluir signatário no armazenamento de confiança agora? (s/n) s Uma nova tentativa da solicitação pode precisar ocorrer. ADMU0508I: O Gerenciador de Implementação "dmgr" foi INICIADO
![[IBM i]](../images/iseries.gif)
/QIBM/UserData/WebSphere/AppServer/V85/profiles/default/bin/serverStatus -all ADMU0116I:
As informações da ferramenta estão sendo registradas no arquivo
/QIBM/UserData/WebSphere/AppServer/V85/profiles/default/logs/serverStatus.log ADMU0128I:
Iniciando a ferramenta com o perfil padrão ADMU0503I: Recuperando status do servidor para todos os servidores
ADMU0505I: Servidores localizados na
configuração: ADMU0506I: Nome do servidor: server1
*** SSL SIGNER EXCHANGE PROMPT *** Signatário SSL do host de destino 192.168.1.5
não foi localizado no armazenamento confiável
/QIBM/UserData/WebSphere/AppServer/V85/profiles/default/etc/trust.p12.
Aqui estão as informações do signatário
(verifique se o valor de compilação corresponde ao que é exibido no servidor):
Subject DN: CN=myhost.austin.ibm.com, OU=myhostNode01Cell, OU=myhostNode01,
O=IBM, C=US Issuer DN:
CN=myhost.austin.ibm.com, O=IBM, C=US
Serial number: 2510775664686266 Expires: Thu Feb 19 15:58:49 CST 2009
SHA-1 Digest: 2F:96:70:23:08:58:6F:66:CD:72:61:E3:46:8B:39:D4:AF:62:98:C3
MD5 Digest: 04:53:F8:20:A2:8A:6D:31:D0:1D:18:90:3D:58:B9:9D
Subject DN: CN=myhost.austin.ibm.com, OU=Root Certificate, OU=myhostNode01Cell,
OU=myhostNode01, O=IBM, C=US Issuer DN: CN=myhost.austin.ibm.com, OU=Root
Certificate, OU=myhostNode01Cell, OU=myhostNode01, O=IBM, C=US Serial number:
2510773295548841 Expires: Tue Feb 15 15:58:46 CST 2028 SHA-1 Digest:
2F:96:70:23:08:58:6F:66:CD:72:61:E3:46:8B:39:D4:AF:62:98:C3
MD5 Digest: 04:53:F8:20:A2:8A:6D:31:D0:1D:18:90:3D:58:B9:9D
Incluir signatário no armazenamento de confiança agora? (s/n) s Uma nova tentativa da solicitação pode precisar ocorrer.
ADMU0508I: O Gerenciador de Aplicativos "server1" foi INICIADO
Para automatizar este processo, consulte comando retrieveSigners.Quando um prompt aceita o signatário, o tempo limite de um soquete pode ocorrer e a conexão pode ser interrompida. Por esta razão, a mensagem Uma nova tentativa da solicitação pode precisar ocorrer. é exibida após a resposta ao prompt. A mensagem informa ao usuário submeter novamente o pedido. Esse problema não deve ocorrer com freqüência e pode ser mais prevalecente em alguns protocolos do que em outros.
Pode ser necessária uma nova tentativa do pedido se o soquete esgotar o tempo enquanto espera uma resposta do prompt. Se a nova tentativa for necessária, observe que o prompt não será exibido novamente se (y) for digitado, o que indica que o signatário já foi incluído no armazenamento confiável.
Verifique a compilação SHA-1 exibida, que é a assinatura do certificado enviado pelo servidor. Se você consultar o certificado no servidor, verifique se a mesma compilação SHA-1 é exibida.
Você poderá desativar o prompt quando não desejar que ele seja exibido, executando o utilitário retrieveSigners para recuperar todos os assinantes de uma célula específica. É possível fazer download ou upload dos signatários de qualquer armazenamento de chaves remoto para qualquer outro que seja local, fazendo referência a um truststore comum com esse script do cliente. Para obter informações adicionais, consulte Configuração do Certificado Encadeado Padrão em SSL.
Usando o Utilitário retrieveSigners para Fazer Download de Signatários para um Cliente
É possível executar o utilitário retrieveSigners para recuperar todos os signatários do armazenamento de chaves remoto para um armazenamento de chaves do cliente especificado.O armazenamento de chaves remoto comum para referência é o CellDefaultTrustStore.
O truststore contém os signatários que permitem que o cliente se conecte a seus processos. O utilitário retrieveSigners pode apontar para qualquer armazenamento de chaves na configuração de destino, dentro do escopo do processo de destino, e pode fazer download dos signatários (apenas entradas de certificado) em qualquer armazenamento de chaves do cliente no arquivo ssl.client.props.![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[z/OS]](../images/ngzos.gif)
C:\WASX_e0540.11\AppServer\profiles\AppSrv01\bin\retrieveSigners.bat CellDefaultTrustStore
ClientDefaultTrustStore -autoAcceptBootstrapSigner CWPKI0308I: Incluindo alias do assinante
"CN=myhost.austin.ibm.com,
O=IBM, C=US" to local keystore "ClientDefaultTrustStore" with the following SHA
digest: 91:A1:A9:2D:F2:7D:70:0F:04:06:73:A3:B4:A4:9C:56:9D:A8:A3:BA CWPKI0308I:
Adding signer alias "default" to
local keystore "ClientDefaultTrustStore" with the following SHA digest:
40:20:CF:BE:B4:B2:9C:F0:96:4D:EE:E5:14:92:9E:37:8D:51:A5:47
![[IBM i]](../images/iseries.gif)
/QIBM/UserData/WebSphere/AppServer/V85/ND/profiles/dmgr/bin retrieveSigners CellDefaultTrustStore
ClientDefaultTrustStore -autoAcceptBootstrapSigner CWPKI0308I: Incluindo alias do assinante "CN=myhost.austin.ibm.com,
O=IBM, C=US" to local keystore "ClientDefaultTrustStore" with the following
SHA digest: 91:A1:A9:2D:F2:7D:70:0F:04:06:73:A3:B4:A4:9C:56:9D:A8:A3:BA CWPKI0308I: Adding signer alias
"default" to local keystore
"ClientDefaultTrustStore" with the following SHA digest: 40:20:CF:BE:B4:B2:9C:F0:96:4D:EE:E5:14:
92:9E:37:8D:51:A5:47
Utilize a opção –autoAcceptBootstrapSigner para ativar
automaticamente o WebSphere Application Server para recuperar e
aceite o assinante para conexões administrativas.
A compilação SHA-1 é impressa enquanto o signatário é incluído, portanto você
pode verificar a compilação após a conclusão da operação. Obtendo Signatários para Clientes e Servidores de um Release Anterior
Para coletar todos os signatários para a célula em um único arquivo de armazenamento de chaves trust.p12, conclua as seguintes etapas:
- Copie o arquivo de armazenamento de chaves trust.p12 no servidor e replique-o no cliente. O cliente faz referência direta ao arquivo a partir dos arquivos sas.client.props e soap.client.props que especificam as propriedades SSL para releases anteriores.
- Altere a senha do armazenamento de chaves do lado do cliente de modo que corresponda ao nome da célula padrão associado ao armazenamento de chaves copiado.
- Altere o tipo de armazenamento de chaves padrão do arquivo trust.p12 para PKCS12 na configuração do cliente.
As duas amostras de código a seguir mostram uma visualização anterior e uma posterior das alterações a serem feitas.
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[z/OS]](../images/ngzos.gif)
com.ibm.ssl.protocol=SSL com.ibm.ssl.keyStore=file\:/// C\:/SERV1_601_0208/AppServer/profiles/AppSrv01/etc/
DummyClientKeyFile.jks com.ibm.ssl.keyStorePassword={xor}CDo9Hgw\= com.ibm.ssl.keyStoreType=JKS
com.ibm.ssl.trustStore=
file\:/// C\:/SERV1_601_0208/AppServer/profiles/AppSrv01/etc/DummyClientTrustFile.jks
com.ibm.ssl.trustStorePassword={xor}CDo9Hgw\=
com.ibm.ssl.trustStoreType=JKS
![[IBM i]](../images/iseries.gif)
com.ibm.ssl.protocol=SSL com.ibm.ssl.keyStore=/QIBM/UserData/WebSphere/AppServer/V85/ND/profiles/
dmgr/etc/DummyClientKeyFile.jks
com.ibm.ssl.keyStorePassword={xor}CDo9Hgw\= com.ibm.ssl.keyStoreType=JKS com.ibm.ssl.trustStore=
/QIBM/UserData/WebSphere/
AppServer/V85/ND/profiles/dmgr/etc/DummyClientTrustFile.jks com.ibm.ssl.trustStorePassword={xor}CDo9Hgw\
= com.ibm.ssl.trustStoreType=JKS
![[IBM i]](../images/iseries.gif)
com.ibm.ssl.protocol=SSL com.ibm.ssl.keyStore=/QIBM/UserData/WebSphere/AppServer/V85/Base/
profiles/default/
etc/DummyClientKeyFile.jks
com.ibm.ssl.keyStorePassword={xor}CDo9Hgw\= com.ibm.ssl.keyStoreType=JKS com.ibm.ssl.trustStore=
/QIBM/UserData/WebSphere/AppServer/
V85/Base/profiles/default/etc/DummyClientTrustFile.jks com.ibm.ssl.trustStorePassword={xor}CDo9Hgw\=
com.ibm.ssl.trustStoreType=JKS
Mudanças na configuração SSL que são necessárias para um arquivo de armazenamento confiável comum no diretório /etc do cliente![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[z/OS]](../images/ngzos.gif)
com.ibm.ssl.protocol=SSL com.ibm.ssl.keyStore=file\:/// C\:/SERV1_601_0208/AppServer/profiles/AppSrv01/etc/
DummyClientKeyFile.jks com.ibm.ssl.keyStorePassword={xor}CDo9Hgw\= com.ibm.ssl.keyStoreType=JKS
com.ibm.ssl.trustStore=file\:/// C\:/SERV1_601_0208/AppServer/profiles/AppSrv01/etc/trust.p12
com.ibm.ssl.trustStorePassword=myhostNode01Cell com.ibm.ssl.trustStoreType=PKCS12
![[IBM i]](../images/iseries.gif)
com.ibm.ssl.protocol=SSL com.ibm.ssl.keyStore=/QIBM/UserData/WebSphere/AppServer/V85/ND/profiles/dmgr/etc/
DummyClientKeyFile.jks com.ibm.ssl.keyStorePassword={xor}CDo9Hgw\= com.ibm.ssl.keyStoreType=JKS
com.ibm.ssl.trustStore=/QIBM/UserData/WebSphere/AppServer/V85/ND/profiles/dmgr/etc/trust.p12
com.ibm.ssl.trustStorePassword=myhostNode01Cell com.ibm.ssl.trustStoreType=PKCS12
![[IBM i]](../images/iseries.gif)
com.ibm.ssl.protocol=SSL com.ibm.ssl.keyStore=/QIBM/UserData/WebSphere/AppServer/V85/Base/
profiles/default/etc/
DummyClientKeyFile.jks com.ibm.ssl.keyStorePassword={xor}CDo9Hgw\= com.ibm.ssl.keyStoreType=JKS
com.ibm.ssl.trustStore=/QIBM/UserData/WebSphere/AppServer/V85/Base/profiles/default/etc/trust.p12
com.ibm.ssl.trustStorePassword=myhostNode01Cell com.ibm.ssl.trustStoreType=PKCS12
Também é possível fazer essas alterações no arquivo soap.client.props e especificar o arquivo key.p12 no lugar do arquivo DummyClientKeyFile.jks. Entretanto, você também deve alterar os valores keyStorePassword e keyStoreType para que correspondam àquelas no arquivo key.p12 padrão.
Em liberações do WebSphere Application Server anteriores à Versão 7.0, você deve editar a configuração SSL no servidor para substituir o armazenamento confiável comum. O arquivo trust.p12, utilizado pelo servidor, também deve conter o signatário do certificado fictício padrão para conexões entre servidores em níveis de release anteriores. Talvez seja necessário extrair manualmente o certificado padrão do arquivo DummyServerKeyFile.jks e, em seguida, importar o certificado para o arquivo trust.p12 incluído na configuração.