![Аутентификация клиентского сертификата Lighttpd](https://rvso.com/image/760605/%D0%90%D1%83%D1%82%D0%B5%D0%BD%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D1%8F%20%D0%BA%D0%BB%D0%B8%D0%B5%D0%BD%D1%82%D1%81%D0%BA%D0%BE%D0%B3%D0%BE%20%D1%81%D0%B5%D1%80%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%82%D0%B0%20Lighttpd.png)
Я пытаюсь включить аутентификацию клиентского сертификата с помощью lighttpd, используя мои собственные внутренние центры сертификации Windows. Отказ от ответственности: я все еще новичок в PKI :D
У меня есть автономный корневой CA и подчиненный CA в моей домашней лаборатории. Я уже импортировал корневой CA в Firefox в доверенные CA. Для клиентского сертификата я использовал openssl для генерации CSR, который я подписал с помощью подчиненного CA, используя шаблон, в котором включена аутентификация клиента. Этот клиентский сертификат также импортируется в Firefox как файл pfx. Я также настроил lighttpd следующим образом:
ssl.pemfile = "/etc/lighttpd/certs/lighttpd.pem"
ssl.ca-file = "/etc/lighttpd/certs/ca.cer"
ssl.verifyclient.activate = "enable"
ssl.verifyclient.enforce = "enable"
ssl.verifyclient.username = "SSL_CLIENT_S_DN_CN"
Я получаю следующую ошибку:
Ошибка Firefox:
Peer does not recognize and trust the CA that issued your certificate.
Error code: SSL_ERROR_UNKNOWN_CA_ALERT
Ошибка Lighttpd:
SSL: 1 error:14089086:SSL routines:ssl3_get_client_certificate:certificate verify failed
SSL: 1 -1 error:140E0197:SSL routines:SSL_shutdown:shutdown while in ini
Другой:
Acceptable client certificate CA names
DC = org, DC = homelab, CN = homelab-V-2019-ICA-CA
Client Certificate Types: RSA sign, DSA sign, ECDSA sign
CA.сер
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
5a:00:00:00:02:47:18:65:49:6e:51:2a:56:00:00:00:00:00:02
Signature Algorithm: sha256WithRSAEncryption
Issuer: CN=V-2019-RCA-CA
Validity
Not Before: Nov 24 06:00:19 2020 GMT
Not After : Nov 24 06:10:19 2021 GMT
Subject: DC=org, DC=homelab, CN=homelab-V-2019-ICA-CA
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
Public-Key: (2048 bit)
Сертификат клиента
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
56:00:00:00:23:c0:0e:f2:75:d8:de:ef:65:00:00:00:00:00:23
Signature Algorithm: sha256WithRSAEncryption
Issuer: DC = org, DC = homelab, CN = homelab-V-2019-ICA-CA
Validity
Not Before: Dec 1 23:54:33 2020 GMT
Not After : Nov 24 06:10:19 2021 GMT
Subject: C = US, ST = Rhode Island, L = Providence, O = HOMELAB, OU = HOMELAB, CN = homelab-V-2019-ICA-CA.homelab.org
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public-Key: (2048 bit)
...
X509v3 Extended Key Usage:
TLS Web Server Authentication, TLS Web Client Authentication
1.3.6.1.4.1.311.21.10:
Не знаю, куда идти дальше. Любая помощь или статьи были бы очень признательны. :)
решение1
Я понял, в чем проблема, если кто-то с этим столкнется. Теперь, когда я об этом думаю, это становится очевидным. Я использовал сертификат подчиненного CA, который я скачал со страницы веб-регистрации ADCS. Вместо этого я использовал корневой сертификат CA, который я экспортировал из сертификата подчиненного CA, нажав Certification Path -> View Certificate (On Root CA) -> Details -> Copy to File -> Base-64 encoded X.509). Я использовал его для этой строки.
ssl.ca-файл = "/etc/lighttpd/certs/ca.cer"
Я импортировал клиентский сертификат в Firefox, и он работает нормально.