certificados SSL desaparecem IIS


19

Estou tentando importar um certificado para o IIS. Tudo está bem no MMC (Windows Console). Terminei os magos e parece que está tudo bem. Mas, quando eu atualizo a lista de certificados ou movo para outra tela do IIS, o certificado desaparece da lista.

Eu não tenho idéia de qual é o problema. O que eu posso fazer?


A maioria das respostas cobre os pontos principais (falta a chave privada), e eu tenho uma postagem no blog para revelar mais informações básicas blog.lextudio.com/…
Lex Li

Respostas:


13

Esse problema ocorre quando o certificado importado não possui uma chave privada associada. Se alguém estiver tentando importar um certificado no nível do domínio para o IIS, não será possível importar se o certificado não tiver uma chave privada associada e fará com que o certificado desapareça na atualização.

A solução seria importar o arquivo .CER para o arquivo pessoal do seu sistema (de onde o certificado é solicitado) e exportá-lo com chave privada. Em seguida, copie o arquivo .pfx para o servidor necessário e importe-o da opção de certificado do servidor no IIS. Isso resolveria o problema.


1
Algumas pessoas não usam o Windows para solicitar seus certificados; portanto, a solução pode não ajudá-las. Eles devem se referir a outras respostas para gerar um arquivo .pfx, com ferramentas como o OpenSSL.
Lex Li

3

Eu tive esse problema várias vezes. Se você estiver usando um SSL do NetworkSolutions, a correção será:

  1. Vá para o MMC Certificate Manager.
  2. Veja Certificados pessoais e exclua o certificado que está "Desaparecendo".
  3. Em seguida, consulte as "Solicitações de registro de certificado" e clique com o botão direito do mouse para exportar.
  4. Selecione "Sim, exporte com chave privada.

Isso permitirá que você exporte o arquivo .pfx que você pode importar do gerenciador do IIS 7. Lembre-se de voltar ao MMC Certificate Manager e selecione "Personal Certificates" e, nas propriedades, adicione o "Friendly Name" novamente para que ele seja exibido no IIS Manager.


Minha solução é arrastar os Certificados que tem a chave privada a partir de "autoridade de certificação Intermediate" para "Certificados pessoais" em mmc pressionando Ctrl (Copie Cert)
Bruce

Consegui exportar o arquivo .pfx (ele me pediu para usar uma senha para proteger a chave privada). A exportação funcionou, mas quando tentei importá-lo para o IIS, ele disse que não conseguiu descriptografar o arquivo
Alejandro Lozdziejski

1

Isso está no IIS 6 ou IIS 7? Você o importou no console do MMC ou no IIS? Tente importá-lo no console do MMC primeiro e depois selecioná-lo no IIS. Além disso, verifique se o arquivo que você está importando é um arquivo .pfx que inclui a chave privada.


1

Eu também tive esse problema e o resolvi usando o OpenSSL para criar o arquivo .pfx correto. Instruções para isso podem ser encontradas aqui


1
É a única solução que funcionou para mim
Shiko

1

Se o servidor não tiver uma chave privada associada ao certificado importado, o certificado desaparecerá na atualização (e também não estará disponível para ligações).

Você pode verificar no mmc - Certificates - Personal store e confirmar se o certificado foi instalado, mas está faltando uma chave privada.

Se você tiver um PFX (chave privada) e senha, poderá importá-lo (como já foi dito), mas se você acabou de fazer uma solicitação de certificado, provavelmente não a terá.

Supondo que você esteja no servidor correto (o mesmo em que solicitou o certificado), provavelmente a chave privada foi corrompida de alguma forma . Você pode abrir o certificado público, obter o número de série e tentar restaurar a chave privada do armazenamento de chaves, como descrito aqui .


0

Use o gerenciador de certificação para importar o arquivo. A partir daí, tente exportar. Se você não pode exportar como um arquivo PFX, acredito que isso significa que não há chave privada no certificado. Você pode ter baixado o errado da sua CA. Estou lidando com nossa CA agora, então ainda não estou 100% certo disso.


0

Então, depois de lutar por isso por algumas horas, baixando novamente o certificado gastando tempo no telefone com suporte técnico e olhando para todos os blogs que pude encontrar, fiquei perplexo. Tentei reenviar a solicitação de certificado para gerar novamente o certificado (sem sorte). Com um último esforço, regenerei a solicitação de certificado e reescrevi o certificado, e agora ele funciona bem. Não sei o que aconteceu e fui muito cuidadoso ao digitar meus dados nas duas vezes. Minha solução foi simplesmente gerar uma nova solicitação e re-codificar o certificado.


Eu só quero entender o que Dave escreveu: refazer o certificado. Eu tive o problema que provavelmente foi causado pela importação de um certificado errado no MMC (um certificado da Autoridade de Certificação Intermediária deve ser importado usando o MMC, mas importei o certificado para o site). Excluí-o depois que percebi, mas nada ajudou até gerar novamente um CSR de acordo com as instruções de nossa autoridade de certificação (que suporte técnico é excelente) e importar o certificado re-codificado no IIS.

0

Eu tenho o mesmo problema com um certificado IIS (com chave privada, .pfx) depois de importar para o nó MMC Local / Pessoal / Certificado em uma máquina Windows Server 2008R2.

O certificado importa bem, diz que é bom para a CA também é bom. Em seguida, posso configurar meu servidor proxy (TMG 2010) para usar o certificado em um ouvinte da web. Tudo funciona muito bem e o ouvinte da web e as regras subseqüentes que usam o ouvinte funcionam bem.

Depois de algum tempo, ainda não tentei cronometrar, o certificado desaparece do nó MMC L / P / C. Meu ouvinte do TMG ainda mostra esse certificado como aquele que está configurado para usar, mas o certificado real se foi.


0

Descobri que o problema pode ser reproduzido quando o certificado em folha foi instalado sob as Autoridades de Certificação Intermediárias. Removê-lo (e deixar qualquer intermediário real, se aplicável) e concluir o assistente corrige o problema.


0

Como Sandeep disse, o IIS exclui seu certificado se ele não tiver uma chave privada. Isso geralmente ocorre se você usar o IIS para criar uma solicitação de certificado de uma autoridade de certificação. Sua CA não possui sua chave privada (você possui), portanto o arquivo não contém a chave privada. Ele são os passos exatos que você precisa executar:

Você criou originalmente uma solicitação de certificado do IIS no seu servidor. Você enviou o arquivo TXT da solicitação à sua autoridade de certificação para que eles pudessem criar o certificado para você.

Sua Autoridade de Certificação enviou de volta um arquivo .CRT No mesmo Windows Server usado para criar a Solicitação de Certificado, no Windows Explorer, clique com o botão direito do mouse no arquivo .CRT que sua Autoridade de Certificação lhe enviou.

Selecione Instalar certificado O Assistente para importação de certificados é executado

No Assistente para Importação de Certificados, em Local da Loja, selecione Máquina Local

Em seguida, selecione Coloque todos os certificados no seguinte armazenamento e selecione Autoridades de certificado raiz confiáveis

OK Isso faz com que o Windows importe o certificado para o Windows (não para o IIS). Agora você precisa obter o arquivo PFX que contém a chave privada:

Iniciar Mmc

Arquivo - Adicionar / remover snap-in…

Certificados (computador local)

De certificados (computador local) - certificação raiz confiável expandida

Pasta Autoridades

Selected Certificates

Noticed my imported certificate with a key logo displayed on it

Abra o certificado

Observe que ele exibe "Você tem uma chave privada que corresponde a este certificado".

Está bem

Clique com o botão direito do mouse no certificado.

All Tasks --> Export

Próximo

Na página "Exportar chave privada" do assistente, selecione "Sim, exporte a chave privada"

Próximo

O Assistente para exportação de certificados solicita que você exporte o formato de arquivo PKCS # 12 (.PFX)

Próximo

O Assistente para Exportação de Certificados exige que você proteja o arquivo com uma senha:

Digite uma senha com a qual proteger o arquivo.

Próximo

Navegue para um local e forneça o nome do arquivo. O arquivo terá a extensão .PFX.

Em seguida, abra o IIS 7

Selecione o servidor IIS no painel esquerdo (conexões)

Clique em Abrir certificados do servidor na visualização Recursos

No painel "Ações" do lado direito, clique em Importar…

Selecione o arquivo PFX que você exportou

Forneça a senha que você usou para protegê-lo

Clique OK


0

Eu estava tendo o mesmo problema nesta manhã em que consegui adicionar o certificado, mas assim que clico em atualizar, ele estava desaparecendo. Aqui está como eu resolvi isso:

Use as etapas abaixo para instalar o ssl cert no dev box: Use o arquivo .pfx. Na sua caixa de desenvolvimento, vá para Ferramenta Administrativa-> Gerenciador do IIS-> Certificados do Servidor. Clique em Importar no painel direito. Navegue até o arquivo .pfx baixado, use a senha. Certifique-se de marcar "Permitir que este certificado seja exportado", caso contrário, se você receber um erro de ligação posteriormente. Vá para Sites, localize seu site, clique em ligações e edite https para usar o novo certificado SSL.


0

A solução de Nick Olsen funcionou para mim (certificado RapidSSL) e incluirei as etapas exatas aqui (há vários links, um está quebrado):

  1. Instale o OpenSSL a partir daqui
  2. Crie os seguintes arquivos no diretório de instalação do OpenSSL (C: \ OpenSSL-Win32 \ bin por padrão):

    • privatekey.txt - Copie e cole o conteúdo da chave privada
    • certificate.txt - Copie e cole o texto da seção Certificado
    • intermediário.txt - Copie e cole o texto da seção Intermediário (etapa opcional)
  3. Crie o arquivo .pfx usando o seguinte comando

    openssl pkcs12 -export -out certificate.pfx -inkey privatekey.txt -in certificate.txt -certfile intermediate.txt
    
  4. Importe o arquivo nos Certificados do Servidor (IIS)


0

Muitas pessoas chegarão aqui sem perceber que estão fazendo o processo de certificação incorretamente por adicionar SSL a seus sites públicos. Eles terão baixado um certificado de alguém como godaddy e não perceberam que o fizeram na ordem errada! Eles não receberão nenhuma mensagem de erro, tudo o que acontecerá é que o certificado no IIS desaparecerá assim que você clicar em outra seção.

O processo correto é o seguinte:

  1. No IIS, você solicita um certificado (MUITAS PESSOAS ESTÃO FALTANDO ESTA PARTE)
  2. Você usa o código solicitado do IIS para solicitar um certificado no site público (por exemplo, godaddy). Muitas pessoas não estão executando a etapa um e estão usando uma chave gerada aleatoriamente
  3. Faça o download dos certificados que foram criados usando seu código de solicitação.
  4. você adiciona o certificado intermediário na autoridade de certificação local (use o MMC para chegar lá)
  5. Você adiciona o outro certificado no IIS
  6. Você configura as ligações

Aqui estão os links. Criar solicitação de certificado

https://www.instantssl.com/ssl-certificate-support/csr-generation/iis-ssl-certificate-7x.html

https://uk.godaddy.com/help/iis-8-install-a-certificate-4951


0

Processe se o certificado estiver ativado.

  1. Entre no seu VPS Go Daddy via Área de Trabalho Remota.
  2. Abra o Gerenciador do IIS / destaque o nó do servidor (painel esquerdo, IP do seu VPS) / clique duas vezes em Certificados do servidor (painel central) / clique em Criar solicitação de certificado / Preencher (o nome comum é um FQDN, seudominio.com.br) / escolha Microsoft RSA SChannel e Comprimento de 2048 bits / salve como um arquivo yourdomain.txt na área de trabalho.
  3. Abra o arquivo seudominio.txt que você acabou de criar / Copie todo o texto.
  4. Entre no Go Daddy a partir do seu navegador no VPS via Área de Trabalho Remota / Meus Produtos / SSL / Use seu crédito SSL ativado / clique no quadrado cinza do centro Digite novamente e gerencie / cole o texto na caixa de texto / Salvar / Enviar alterações salvas.
  5. Após a verificação do proprietário do domínio, volte para Go Daddy / Meus produtos / Certificados SSL / escolha o domínio ao qual o certificado será aplicado / selecione Tipo de servidor (IIS) / Download / extrair para a área de trabalho.
  6. Execute mmc / Arquivo / Adicionar / Remover snap-in / Certificados / Adicionar / Conta de computador / Computador local / Concluir / OK
  7. Expanda Certificados (Computador Local) / clique com o botão direito do mouse em Autoridades de Certificação Intermediárias / clique com o botão direito do mouse / Todas as Tarefas / Importar / importe o arquivo com PKCS7 # 7 no menu suspenso e esse arquivo será exibido na janela / Avançar / Marque "Colocar todos os certificados no seguinte armazenamento" Selecione "Autoridade de certificação intermediária" / Concluir / Fechar / Salvar "Não" / Fechar mmc Console.
  8. Volte ao Gerenciador do IIS / selecione o site atribuído ao certificado (painel esquerdo) / Ligações (painel direito) / Adicionar / Tipo (https), Endereço IP (IP do seu VPS), Porta (443), adicione seu nome de domínio (seu domínio) .com) / o certificado deve aparecer no menu suspenso mostrando seu domínio.com.

Nota: Eu também verificaria o YouTube / Sachin Sammy sobre como fazer um script de redirecionamento de http para https.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.