Este guia mostra como gerar um CSR (Certificate Signing Request) no Microsoft IIS (Internet Information Services) no Windows Server. Você pode criar a solicitação de duas formas: através da interface gráfica do IIS Manager (o clássico assistente ponto-e-clique), ou com o certreq.exe e um arquivo INF a partir do PowerShell. Ambos os métodos mantêm a chave privada no servidor, no armazenamento de certificados do Windows, e produzem uma solicitação PKCS #10 que você envia à sua Autoridade Certificadora.
Um aviso importante para saber desde já: o assistente do IIS Manager não adiciona um Subject Alternative Name (SAN) à solicitação, e toda CA pública agora exige que o nome do host apareça no SAN, não apenas no Common Name. Se você precisa de um SAN (e quase sempre precisa), use o método certreq.exe mais abaixo, ou gere o CSR fora do servidor com nosso Gerador de CSR e importe o certificado emitido como um arquivo .pfx.
Faça login como Administrador no Windows Server que deseja proteger (ou em uma estação de trabalho que execute um site IIS) e siga a seção correspondente à sua versão do IIS. Os passos abaixo abrangem o IIS 10 no Windows Server 2025, 2022, 2019 e 2016 (também o IIS 10 no Windows 10 e Windows 11 cliente), além dos assistentes mais antigos do IIS 8 / 8.5 / 7 / 6 para infraestrutura legada.
Gerar um CSR no IIS 10 (Windows Server 2016 a 2025)
O IIS 10 é a versão que acompanha o Windows Server 2016, 2019, 2022 e 2025, bem como o recurso IIS no Windows 10 e Windows 11 cliente. A interface do Manager é a mesma em todas as versões.
Passo 1: Abrir o IIS Manager
- Pressione Win + R, digite
inetmgr, e pressione Enter, ou - Abra o menu Iniciar e procure por Internet Information Services (IIS) Manager.
Passo 2: Abrir Server Certificates
- No painel Connections à esquerda, clique no nome do servidor.
- No painel central (Home), clique duas vezes em Server Certificates.
Passo 3: Iniciar a solicitação de certificado
No painel Actions à direita, clique em Create Certificate Request. A caixa de diálogo Distinguished Name Properties é aberta.
Passo 4: Preencher o Distinguished Name
Insira os detalhes do assunto abaixo. Use apenas caracteres ASCII padrão; letras não latinas quebram a solicitação:
- Common Name: o nome de domínio totalmente qualificado (FQDN) que você deseja proteger, por exemplo www.example.com. Para um certificado wildcard, coloque um asterisco antes do domínio raiz, por exemplo *.example.com.
- Organization: o nome legal completo da sua empresa, exatamente como registrado. Obrigatório para certificados OV e EV. Para certificados de Validação de Domínio (DV), este campo é ignorado, então qualquer texto curto funciona.
- Organizational unit: um rótulo de departamento como TI ou Web. Este atributo está obsoleto para certificados públicos (o CA/Browser Forum o eliminou gradualmente), portanto, deixe-o minimalista ou pule-o quando a caixa de diálogo permitir.
- City/locality: a cidade onde sua organização está registrada, escrita por extenso (por exemplo Seattle, não SEA).
- State/province: o nome completo do estado ou província (por exemplo Washington, não WA).
- Country/region: o código de país ISO de duas letras (por exemplo US, GB, DE).
Verifique todos os campos e clique em Next.
Passo 5: Escolher o Cryptographic Service Provider e o tamanho da chave
Na caixa de diálogo Cryptographic Service Provider Properties:
- Cryptographic service provider: selecione Microsoft RSA SChannel Cryptographic Provider. Esta é a escolha correta para um certificado RSA servido pelo IIS via HTTPS. (Escolha Microsoft DH SChannel Cryptographic Provider apenas no raro caso em que precise de uma chave Diffie-Hellman, que não é usada para TLS web normal.)
- Bit length: selecione 2048. Este é o mínimo atual aceito por toda CA pública. Escolha 3072 ou 4096 apenas se sua política exigir uma chave maior; a contrapartida é um handshake TLS ligeiramente mais lento.
Clique em Next.
Passo 6: Salvar o arquivo CSR
Na caixa de diálogo File Name, clique no botão de navegação e escolha uma pasta que você consiga encontrar novamente, depois digite um nome de arquivo com extensão .txt, por exemplo certreq.txt. Não aceite o caminho padrão C:WindowsSystem32: essa pasta é incômoda de navegar e você pode não ter permissão de escrita, dependendo do UAC. A Área de Trabalho ou uma pasta dedicada C:certs funciona melhor.
Clique em Finish. O IIS grava o CSR no caminho escolhido e armazena a chave privada correspondente como uma solicitação pendente no armazenamento de certificados do Windows neste servidor.
Passo 7: Copiar o CSR e enviá-lo à CA
Abra o arquivo salvo no Bloco de Notas (ou qualquer editor de texto). Você verá um bloco assim:
-----BEGIN NEW CERTIFICATE REQUEST-----
MIIDXjCCAkYCAQAwgZQxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApXYXNoaW5ndG9u
... (many lines of base64) ...
-----END NEW CERTIFICATE REQUEST-----
Selecione o bloco inteiro, incluindo as linhas BEGIN NEW CERTIFICATE REQUEST e END NEW CERTIFICATE REQUEST, copie-o e cole-o no campo CSR do seu formulário de pedido. Quando a CA validar a solicitação e emitir seu certificado, siga como instalar um certificado SSL no IIS e use Complete Certificate Request para associar o arquivo .cer emitido com a chave pendente neste servidor.
O assistente do IIS Manager não adiciona um SAN
O assistente acima produz uma solicitação cujo único nome de host é o Common Name. Navegadores e clientes modernos (Chromium, Firefox, Safari, .NET, Java, Go) somente validam o nome do host em relação à extensão Subject Alternative Name; o Common Name é ignorado para decisões de confiança desde 2017. As CAs públicas respondem copiando o CN automaticamente para uma entrada SAN em pedidos de nome único, então uma solicitação apenas com CN ainda funciona para um único nome de host. Mas:
- Se você precisar de múltiplos nomes de host em um único certificado (por exemplo example.com e www.example.com, ou um certificado multi-domínio), o assistente do IIS Manager não consegue codificá-los.
- Se sua CA aceitar solicitações estritamente como enviadas, um SAN ausente pode ser rejeitado mesmo para um único nome de host.
Para qualquer coisa além de um único nome, use o método certreq.exe abaixo, ou gere o CSR com nosso Gerador de CSR e importe o certificado emitido para o IIS como um arquivo .pfx.
Gerar um CSR com certreq.exe e um arquivo INF (com suporte a SAN)
A ferramenta de linha de comando certreq.exe vem com todo Windows Server e permite especificar um SAN, o tamanho da chave, o assunto exato e o provedor. O fluxo tem três partes: escrever um arquivo INF de solicitação, executar certreq -new para gerar o CSR (e a chave correspondente no armazenamento do Windows), depois enviar o CSR à sua CA.
Passo 1: Criar o arquivo INF de solicitação
Abra o Bloco de Notas como Administrador e salve o arquivo abaixo como request.inf. Edite a linha Subject e as entradas DNS em [Extensions] para corresponder ao seu domínio:
[Version]
Signature="$Windows NT$"
[NewRequest]
Subject = "CN=www.example.com, O=Example Inc, L=Seattle, S=Washington, C=US"
KeySpec = 1
KeyLength = 2048
Exportable = TRUE
MachineKeySet = TRUE
SMIME = FALSE
PrivateKeyArchive = FALSE
UserProtected = FALSE
UseExistingKeySet = FALSE
ProviderName = "Microsoft RSA SChannel Cryptographic Provider"
ProviderType = 12
RequestType = PKCS10
KeyUsage = 0xa0
[EnhancedKeyUsageExtension]
OID = 1.3.6.1.5.5.7.3.1
[Extensions]
2.5.29.17 = "{text}"
_continue_ = "dns=www.example.com&"
_continue_ = "dns=example.com"
Notas sobre os valores:
- Subject: uma única linha, campos separados por vírgulas. Use o código de país ISO de duas letras em C=.
- KeyLength: mínimo de 2048. Defina 3072 ou 4096 se sua política exigir.
- Exportable = TRUE: permite exportar a chave privada junto com o certificado emitido (para backup ou instalação em um segundo servidor). Defina como FALSE se quiser que a chave fique restrita a esta máquina.
- MachineKeySet = TRUE: armazena a chave no repositório Local Computer (de onde o IIS lê). Mantenha isso ativado para o IIS.
- 2.5.29.17: o OID para Subject Alternative Name. Adicione uma linha _continue_ por nome de host; todas as linhas, exceto a última, devem terminar com o separador &.
Passo 2: Gerar o CSR
Abra um Prompt de Comando ou PowerShell elevado na pasta que contém request.inf e execute:
certreq -new request.inf certreq.txt
O certreq gera a chave privada no repositório Local Computer e grava a solicitação PKCS #10 em certreq.txt. Abra o arquivo, copie o bloco completo de BEGIN NEW CERTIFICATE REQUEST até END NEW CERTIFICATE REQUEST, e envie-o no seu formulário de pedido, da mesma forma que no método do IIS Manager.
Quando a CA devolver o certificado emitido, complete-o com:
certreq -accept certnew.cer
Isso associa o certificado emitido com a chave privada que estava aguardando no repositório, e o certificado passa a estar disponível para vincular no IIS.
Verificar o CSR antes de enviá-lo (opcional)
Vale a pena confirmar o Common Name, as entradas SAN e o tamanho da chave antes de enviar a solicitação à sua CA. No servidor, a ferramenta integrada certutil lê a solicitação:
certutil -dump certreq.txt
Se você tiver o OpenSSL instalado (o Windows não o inclui; você pode instalá-lo separadamente a partir de uma versão como a da Shining Light Productions), este comando exibe os mesmos detalhes:
openssl req -noout -text -in certreq.txt
Prefere uma ferramenta online? Cole o conteúdo da solicitação no decodificador de CSR da SSL Dragon para ler o Common Name, as entradas SAN e o tamanho da chave. Confirme que o Common Name corresponde ao nome de host que os clientes usarão e que todo nome necessário aparece na lista Subject Alternative Name.
Gerar um CSR no IIS 8 e 8.5 (Windows Server 2012 / 2012 R2)
O assistente do IIS 8 / 8.5 é idêntico ao do IIS 10. O Windows Server 2012 e 2012 R2 atingiram o fim do suporte estendido em outubro de 2023, então planeje migrar essas cargas de trabalho para uma versão atual do Windows Server; até lá, os passos abaixo ainda funcionam.
- Pressione Win + R, digite
inetmgr, e clique em OK. (Alternativamente, abra o Internet Information Services (IIS) Manager a partir da tela Iniciar.) - Em Connections, selecione o servidor, depois clique duas vezes em Server Certificates no painel Home.
- Em Actions, clique em Create Certificate Request.
- Em Distinguished Name Properties, preencha Common Name, Organization, Organizational unit, City/locality, State/province e Country/region exatamente como descrito no IIS 10 acima (apenas caracteres ASCII padrão, nomes completos de estado e cidade, código de país de duas letras). Clique em Next.
- Em Cryptographic Service Provider Properties, selecione Microsoft RSA SChannel Cryptographic Provider e defina o Bit length como 2048. Clique em Next.
- Em File Name, escolha uma pasta que você consiga encontrar novamente e salve o arquivo com extensão .txt (por exemplo certreq.txt). Clique em Finish.
- Abra o arquivo salvo no Bloco de Notas, copie o bloco completo de BEGIN NEW CERTIFICATE REQUEST até END NEW CERTIFICATE REQUEST, e cole-o no seu formulário de pedido.
A mesma limitação de SAN se aplica no IIS 8 / 8.5: se você precisar de mais de um nome de host, use o método certreq.exe acima.
Gerar um CSR no IIS 7 (Windows Server 2008 / 2008 R2)
O Windows Server 2008 e 2008 R2 estão há muito tempo fora do período de suporte, portanto, trate o assistente do IIS 7 como um procedimento legado para sistemas que você ainda não pode substituir. O fluxo é o mesmo do IIS 8 / 10:
- Pressione Win + R, digite
inetmgr, e clique em OK, ou abra Iniciar > Ferramentas Administrativas > Internet Information Services (IIS) Manager. - Em Connections, selecione o nome do servidor, depois clique duas vezes em Server Certificates.
- Em Actions, clique em Create Certificate Request.
- Em Distinguished Name Properties, informe Common Name, Organization, Organizational unit, City/locality, State/province e Country/region conforme descrito no IIS 10. Clique em Next.
- Em Cryptographic Service Provider Properties, escolha Microsoft RSA SChannel Cryptographic Provider e 2048 bits. Clique em Next.
- Clique no botão de navegação em Specify a file name for the certificate request, escolha uma pasta, digite um nome de arquivo terminado em .txt, e clique em Finish.
- Abra o arquivo salvo no Bloco de Notas, copie o bloco completo da solicitação (incluindo as linhas BEGIN NEW CERTIFICATE REQUEST e END NEW CERTIFICATE REQUEST), e cole-o no seu formulário de pedido.
Gerar um CSR no IIS 5 e 6 (obsoleto)
O IIS 5 e 6 (Windows 2000 Server e Windows Server 2003) estão há muito tempo fora do período de suporte e não devem hospedar sites públicos. Use esta seção apenas se estiver mantendo infraestrutura legada que ainda não pode substituir:
- Abra Iniciar > Painel de Controle > Ferramentas Administrativas > Internet Information Services.
- Clique com o botão direito em Default Web Site (ou seu site) e escolha Properties.
- Abra a aba Directory Security e clique em Server Certificate.
- No IIS Certificate Wizard, selecione Create a new certificate e clique em Next.
- Selecione Prepare the request now, but send it later e clique em Next.
- Digite um nome descritivo para o certificado, defina o Bit length como 2048, deixe as outras caixas de seleção desmarcadas, e clique em Next.
- Insira o nome legal da organização e uma Organizational unit (use um rótulo curto como TI). Clique em Next.
- Em Common Name, insira o FQDN do seu site, por exemplo www.example.com. Clique em Next.
- Preencha Country/region, State/province e City/locality, depois clique em Next.
- Escolha uma pasta e um nome de arquivo (salve como .txt), clique em Next, revise o resumo, e clique em Next novamente para gravar o CSR.
- Abra o arquivo no Bloco de Notas, copie o bloco completo da solicitação, e cole-o no seu formulário de pedido.
Depois que a CA validar seu CSR e emitir o certificado, continue com as instruções de instalação de SSL no IIS.
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

