Я использую jetty v9.4.9
.Я хочу аутентифицировать запросы, используя client certificate
.Я настроил keystore
файл в 'jetty-base\etc'
.Я использую self-signed certificates
на сервере и клиенте.
У меня есть сертификат сервера и корневой сертификат.Я использовал OpenSSL для генерации keystore
файла.
С https://www.eclipse.org/jetty/documentation/9.4.x/configuring-ssl.html,
Генерация файла pkcs12:
$ cat example.crt intermediate.crt [intermediate2.crt] ... rootCA.crt > cert-chain.txt
$ openssl pkcs12 -export -inkey example.key -in cert-chain.txt -out example.pkcs12
Загрузка файла хранилища ключей:
$ keytool -importkeystore -srckeystore jetty.pkcs12 -srcstoretype PKCS12 -destkeystore keystore
Используя вышеописанные методы, у меня есть файл 'new_keystore'
.Я настроил недавно сгенерированный файл хранилища ключей в jetty-base\start.d\ssl.ini
как
jetty.sslContext.keyStorePath=etc\new_keystore
jetty.sslContext.trustStorePath=etc\new_keystore
Теперь я отправляю запрос, используя cURL
в Windows
Запрос:
curl -v --cacert root.crt --key client.key --cert client.crt https://localhost:8443
Это приводит к unknown certificate
ошибке
CApath: none
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* TLSv1.3 (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (IN), TLS handshake, Server key exchange (12):
* TLSv1.2 (IN), TLS handshake, Request CERT (13):
* TLSv1.2 (IN), TLS handshake, Server finished (14):
* TLSv1.2 (OUT), TLS handshake, Certificate (11):
* TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
* TLSv1.2 (OUT), TLS handshake, CERT verify (15):
* TLSv1.2 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.2 (OUT), TLS handshake, Finished (20):
* TLSv1.2 (IN), TLS alert, certificate unknown (558):
* error:14094416:SSL routines:ssl3_read_bytes:sslv3 alert certificate unknown
* Closing connection 0
curl: (35) error:14094416:SSL routines:ssl3_read_bytes:sslv3 alert certificate unknown
В jetty
, как определить причину ошибки unknown certificate
?Можно ли настроить его на отображение в файле log
?Как отладить и исправить это?