Ubuntu 12.04에서 Apache 2.2.22가 실행되고 있습니다.
SSL은 다음 지시문을 사용하여 구성 및 활성화됩니다 /etc/apache2/mods-enabled/ssl.conf
.
SSLSessionCache shm:/var/www/apache-ssl-cache/ssl_scache(512000)
SSLSessionCacheTimeout 300
SSLMutex file:/var/www/apache-ssl-cache/ssl_mutex
SSL이 작동하는 것 같습니다. Windows XP의 IE8에서도 HTTPS를 통해 사이트에 액세스할 수 있습니다. 그러나 SSL 세션 캐시가 실제로 올바르게 작동하는지 확실하지 않습니다.
가상 호스트의 로그에는 다음과 같은 INFO 수준 메시지가 많이 표시됩니다.
[info] [client <censored>] (70007)The timeout specified has expired: SSL input filter read failed.
또는
[info] [client <censored>] (70014)End of file found: SSL input filter read failed.
또는
[info] [client <censored>] (70014)End of file found: SSL handshake interrupted by system [Hint: Stop button pressed in browser?!]
PRNG 시딩도 꽤 자주 발생하는 것 같습니다. 불행하게도 PRNG가 어떤 분기된 Apache 하위 프로세스에 시드되고 있는지 확실하게 구분하는 것은 불가능해 보입니다.
[info] Seeding PRNG with 656 bytes of entropy
그렇다면 이러한 메시지는 SSL 세션 캐시가 작동하지 않음을 나타내는 것입니까(포크된 Apache 하위 프로세스 전체에서)?
편집하다
SSL 세션 캐싱 의 사용을 언급 openssl s_client -reconnect
하거나 gnutls-cli -Vr
테스트하는 다양한 사이트를 찾았습니다. 나는 그들이 질문의 일부에만 대답한다고 믿습니다. 두 프로그램 모두연결을 끊다그런 다음 다시 연결하면 SSL 세션이 캐시되어 재사용될 수 있다는 것만 확인합니다.순차적으로, 그러나 캐시된 SSL 세션을 사용할 수 있는지 확인하지 않습니다.동시에여러 분기 서버를 통해 동일한 클라이언트로. 이는 실제로 HTTPS 웹사이트에서 리소스를 가져올 때 최신 브라우저를 사용하는 일반적인 사용 시나리오입니다.
캐시된 SSL 세션을 동시에 사용할 수 있는지 확인하려면 동일한 SSL 세션 ID/키를 사용하여 다음 연결을 열기 전에 첫 번째 테스트 연결을 닫지 않아야 합니다. 불행하게도 어느 유틸리티에도 그러한 옵션이 없는 것 같습니다.
답변1
SSL 분석 사이트(예:Qualys의 SSL 서버 테스트). '세션 재개 테스트' 결과를 찾아보세요. '예'라고 표시되면 세션 캐싱이 작동하는 것입니다.