Eu estou no processo de construir um servidor Debian FreeRadius que faz autenticação 802.1x para membros do domínio. Eu gostaria de assinar o certificado SSL do meu servidor radius (usado para EAP-TLS) e aproveitar a PKI existente do domínio. O servidor radius é unido ao domínio via Samba e tem uma conta de máquina como exibida em Usuários e Computadores do Active Directory. O controlador de domínio que estou tentando assinar com a chave do meu servidor radius não tem o IIS instalado, portanto, não posso usar a página da Web Certsrv preferida para gerar o certificado. As ferramentas do MMC não funcionarão, pois não podem acessar os armazenamentos de certificados no servidor radius porque elas não existem.
Isso deixa o utilitário certreq.exe.
Estou gerando meu .CSR com o seguinte comando:
openssl req -nodes -newkey rsa:1024 -keyout server.key -out server.csr
O resultado .CSR:
******@mis-ke-lnx:~/G$ openssl req -text -noout -in mis-radius-lnx.csr
Certificate Request:
Data:
Version: 0 (0x0)
Subject: C=US, ST=Alaska, L=CITY, O=ORG, OU=DEPT, CN=ME/emailAddress=MYEMAIL
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public Key: (1024 bit)
Modulus (1024 bit):
00:a8:b3:0d:4b:3f:fa:a4:5f:78:0c:24:24:23:ac:
cf:c5:28:af:af:a2:9b:07:23:67:4c:77:b5:e8:8a:
08:2e:c5:a3:37:e1:05:53:41:f3:4b:e1:56:44:d2:
27:c6:90:df:ae:3b:79:e4:20:c2:e4:d1:3e:22:df:
03:60:08:b7:f0:6b:39:4d:b4:5e:15:f7:1d:90:e8:
46:10:28:38:6a:62:c2:39:80:5a:92:73:37:85:37:
d3:3e:57:55:b8:93:a3:43:ac:2b:de:0f:f8:ab:44:
13:8e:48:29:d7:8d:ce:e2:1d:2a:b7:2b:9d:88:ea:
79:64:3f:9a:7b:90:13:87:63
Exponent: 65537 (0x10001)
Attributes:
a0:00
Signature Algorithm: sha1WithRSAEncryption
35:57:3a:ec:82:fc:0a:8b:90:9a:11:6b:56:e7:a8:e4:91:df:
73:1a:59:d6:5f:90:07:83:46:aa:55:54:1c:f9:28:3e:a6:42:
48:0d:6b:da:58:e4:f5:7f:81:ee:e2:66:71:78:85:bd:7f:6d:
02:b6:9c:32:ad:fa:1f:53:0a:b4:38:25:65:c2:e4:37:00:16:
53:d2:da:f2:ad:cb:92:2b:58:15:f4:ea:02:1c:a3:1c:1f:59:
4b:0f:6c:53:70:ef:47:60:b6:87:c7:2c:39:85:d8:54:84:a1:
b4:67:f0:d3:32:f4:8e:b3:76:04:a8:65:48:58:ad:3a:d2:c9:
3d:63
Estou tentando enviar meu certificado usando o seguinte comando certreq.exe:
certreq -submit -attrib "CertificateTemplate:Machine" server.csr
Eu recebo o seguinte erro ao fazer isso:
RequestId: 601
Certificate not issued (Denied) Denied by Policy Module The DNS name is unavailable and cannot be added to the Subject Alternate name. 0x8009480f (-2146875377)
Certificate Request Processor: The DNS name is unavailable and cannot be added to the Subject Alternate name. 0x8009480f (-2146875377)
Denied by Policy Module
Minha autoridade de certificação possui os seguintes modelos de certificado disponíveis. Se eu tentar enviar por certreq.exe usando "CertificiateTemplate: Computer" em vez de "CertificateTemplate: Machine" recebo um erro informando que "the requested certificate template is not supported by this CA."
Meu google-foo falhou comigo ao tentar entender esse erro ... Eu sinto que isso deve ser uma tarefa relativamente simples, pois o X.509 é o X.509 e o OpenSSL gera o .CSRs no formato PKCS10 necessário . Eu não posso ser apenas um lá fora tentando assinar uma chave gerada OpenSSL em uma caixa Linux com uma autoridade de certificação do Windows, então como faço isso (perferably usando a ferramenta off-line certreq.exe)?