![경고: 지정된 암호 중 SSL 엔진이 지원하는 암호가 없습니다.](https://rvso.com/image/658720/%EA%B2%BD%EA%B3%A0%3A%20%EC%A7%80%EC%A0%95%EB%90%9C%20%EC%95%94%ED%98%B8%20%EC%A4%91%20SSL%20%EC%97%94%EC%A7%84%EC%9D%B4%20%EC%A7%80%EC%9B%90%ED%95%98%EB%8A%94%20%EC%95%94%ED%98%B8%EA%B0%80%20%EC%97%86%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
Apache Tomcat 7
다음 커넥터 요소를 사용하여 실행되는 작동 중인 웹 서비스가 있습니다 server.xml
.
<Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol"
SSLEnabled="true"
maxThreads="150"
scheme="https"
secure="true"
clientAuth="false"
keystoreFile="C:\Java\myhost.keystore"
keystorePass="importkey"
sslProtocol="TLS"
/>
이것은 몇 년 동안 잘 작동했지만 이제 새로운 Logjam
보안 위협이 나타났습니다. 저는 다음을 사용하여 웹 서비스를 보호하려고 합니다.TLS용 Diffie-Hellman 배포 가이드지침.
그래서 요소에 다음 줄을 추가했습니다 <connector>
.
ciphers="ECDHE-RSA-AES128-GCM-SHA256, ECDHE-ECDSA-AES128-GCM-SHA256, ECDHE-RSA-AES256-GCM-SHA384, ECDHE-ECDSA-AES256-GCM-SHA384, DHE-RSA-AES128-GCM -SHA256, DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE -RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA, ECDHE-ECDSA-AES256-SHA, DHE-RSA-AES128-SHA256, DHE-RSA-AES128-SHA, DHE-DSS -AES128-SHA256, DHE-RSA-AES256-SHA256, DHE-DSS-AES256-SHA, DHE-RSA-AES256-SHA, AES128-GCM-SHA256, AES256-GCM-SHA384, AES128-SHA256, AES256-SHA256, AES128 -SHA, AES256-SHA, AES, 동백, DES-CBC3-SHA"
Tomcat은 정상적으로 다시 시작되지만 더 이상 웹 서비스에 연결할 수 없습니다.
로그를 조사한 결과 다음 줄을 발견했습니다.
경고: 지정된 암호는 SSL 엔진에서 지원되지 않습니다: ECDHE-RSA-AES128-GCM-SHA256, ECDHE-ECDSA-AES128-GCM-SHA256, ECDHE-RSA-AES256-GCM-SHA384, ECDHE-ECDSA-AES256- GCM-SHA384, DHE-RSA-AES128-GCM-SHA256, DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128- SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA, ECDHE-ECDSA-AES256-SHA, DHE-RSA-AES128-SHA256, DHE-RSA-AES128-SHA, DHE-DSS-AES128-SHA256, DHE-RSA-AES256-SHA256, DHE-DSS-AES256-SHA, DHE-RSA-AES256-SHA, AES128-GCM-SHA256, AES256-GCM- SHA384, AES128-SHA256, AES256-SHA256, AES128-SHA, AES256-SHA, AES, CAMELLIA, DES-CBC3-SHA
Tomcat이 이러한 암호만 사용하도록 하려고 할 때 내가 무엇을 놓치고 있습니까?
SSL 엔진에서 지원하도록 하려면 어떻게 해야 합니까?
답변1
설명대로여기다음과 같이 목록 을 설정해야 할 수도 있습니다 ciphers
.
sslProtocols = "TLS"
ciphers="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_RC4_128_SHA,
TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA,
TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA,SSL_RSA_WITH_RC4_128_SHA"
첫 번째 부분인 ECDHE는 어떤 키 교환 알고리즘을 사용해야 하는지 지정합니다. [...]
다음은 인증 알고리즘인 RSA입니다. [...]
대량 암호인 AES128-GCM은 주요 암호화 알고리즘이며 모든 트래픽을 암호화하는 데 사용됩니다. [...]
마지막 부분인 SHA256은 사용 중인 메시지 다이제스트를 식별하여 메시지의 신뢰성을 확인합니다.