Я создал запрос сертификата для tomcat (как описано здесь )
openssl req -new -newkey rsa:2048 -sha256 -nodes -out req.csr -keyout keypair.key -config req.cfg
запрос подписан полномочным органом и загружен из него (MS Windows Сервер CA ) как base64
закодировано, переименовано из cer
в crt
. Затем я настроил server.xml
https-коннектор как:
<Connector protocol="org.apache.coyote.http11.Http11AprProtocol"
port="443"
SSLEnabled="true"
secure="true"
scheme="https"
SSLProtocol="TLSv1.0+TLSv1.1+TLSv1.2"
SSLCipherSuite="ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:!DSS"
SSLHonorCipherOrder="true"
SSLDisableCompression="true"
SSLCertificateFile="${catalina.home}/cert.crt"
SSLCertificateKeyFile="${catalina.home}/keypair.key"
SSLCertificateChainFile="${catalina.home}/ca.crt"
SSLPassword="password"
disableUploadTimeout="true"
maxThreads="200"
acceptCount="100"
maxHttpHeaderSize="49152"/>
Когда я захожу на сайт с помощью https, firfox жалуется:
Secure Connection Failed
An error occurred during a connection to dochazka.dt.local. Peer’s certificate has an invalid signature.
Error code: SEC_ERROR_BAD_SIGNATURE
The page you are trying to view cannot be shown because the authenticity of the received data could not be verified.
Please contact the website owners to inform them of this problem.
Я нашел здесь , что это происходит из-за:
Эта ошибка произойдет, если DSA использовался в качестве алгоритма подписи при генерации закрытого ключа и CSR.
И так как я понятия не имею, что DSA
должно быть, что сделать, чтобы все заработало как надо? (обратите внимание, предпочитают не использовать keytool
для генерации запроса)