Я нахожусь в процессе создания сервера Debian FreeRadius, который выполняет аутентификацию 802.1x для членов домена. Я хотел бы подписать сертификат SSL моего радиуса сервера (используемый для EAP-TLS) и использовать существующую PKI домена. Сервер RADIUS присоединяется к домену через Samba и имеет учетную запись компьютера, как показано в Active Directory Users and Computers. На контроллере домена, на котором я пытаюсь подписать ключ своего сервера radius, не установлен IIS, поэтому я не могу использовать предпочтительную веб-страницу Certsrv для создания сертификата. Инструменты MMC не будут работать, поскольку он не может получить доступ к хранилищам сертификатов на сервере RADIUS, поскольку они не существуют. Это оставляет служебную программу certreq.exe.
Я создаю свой .CSR с помощью следующей команды:
openssl req -nodes -newkey rsa:1024 -keyout server.key -out server.csr
Полученный .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
Я пытаюсь отправить свой сертификат с помощью следующей команды certreq.exe:
certreq -submit -attrib "CertificateTemplate:Machine" server.csr
При этом я получаю следующую ошибку:
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
В моем центре сертификации доступны следующие шаблоны сертификатов. Если я попытаюсь отправить с помощью certreq.exe, используя «CertificiateTemplate: Computer» вместо «CertificateTemplate: Machine», я получаю сообщение об ошибке, "the requested certificate template is not supported by this CA."
Мой google-foo пока не помог мне понять эту ошибку ... Я чувствую, что это должна быть относительно простая задача, поскольку X.509 - это X.509, а OpenSSL генерирует .CSR в требуемом формате PKCS10. Я не могу быть единственным, кто пытается подписать сгенерированный ключ OpenSSL в системе Linux с помощью центра сертификации Windows, так как мне это сделать (желательно с помощью автономного инструмента certreq.exe)?
kce, то, на что намекает предыдущий постер, - это проверить свойства шаблона Machine. Его можно найти в оснастке «Шаблоны сертификатов». Найдите в свойствах этого шаблона и на вкладке «Имя субъекта» настройки того, как имя субъекта должно быть предоставлено ЦС (например, «Поставляется в запросе» или «Создано из информации в Active Directory».