Wie kann man feststellen, ob das Zwischenspeichern von SSL-Sitzungen mit Apache 2.2 tatsächlich ordnungsgemäß funktioniert?

8

Wir haben Apache 2.2.22 unter Ubuntu 12.04.

SSL wird mit den folgenden Anweisungen konfiguriert und aktiviert /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 scheint zu funktionieren. Wir können über HTTPS auf die Site zugreifen, auch in IE8 unter Windows XP. Wir sind uns jedoch nicht sicher, ob der SSL-Sitzungscache tatsächlich ordnungsgemäß funktioniert.

Wir sehen viele dieser Nachrichten auf INFO-Ebene im Protokoll unseres virtuellen Hosts:

[info] [client <censored>] (70007)The timeout specified has expired: SSL input filter read failed.

oder

[info] [client <censored>] (70014)End of file found: SSL input filter read failed.

oder

[info] [client <censored>] (70014)End of file found: SSL handshake interrupted by system [Hint: Stop button pressed in browser?!]

PRNG-Seeding scheint auch ziemlich häufig vorzukommen. Leider scheint es unmöglich zu sein, zuverlässig zu sagen, für welchen gegabelten Apache-Child-Prozess das PRNG ausgesät wird:

[info] Seeding PRNG with 656 bytes of entropy

Zeigen diese Nachrichten also an, dass der SSL-Sitzungscache nicht funktioniert (über gegabelte untergeordnete Apache-Prozesse hinweg)?

BEARBEITEN

Ich habe verschiedene Websites gefunden, die die Verwendung von openssl s_client -reconnectoder gnutls-cli -Vrzum Testen des Zwischenspeicherns von SSL-Sitzungen erwähnen . Ich glaube, dass sie nur einen Teil der Frage beantworten: Da beide Programme die Verbindung trennen und dann wieder verbinden, bestätigen sie nur, dass die SSL-Sitzung zwischengespeichert ist und nacheinander wiederverwendet werden kann , prüfen jedoch nicht, ob die zwischengespeicherte SSL-Sitzung von mehreren gleichzeitig verwendet werden kann gegabelte Server an denselben Client. Dies ist eigentlich ein typisches Verwendungsszenario mit modernen Browsern, wenn Ressourcen von einer HTTPS-Website abgerufen werden.

Um zu überprüfen, ob die zwischengespeicherte SSL-Sitzung gleichzeitig verwendet werden kann, darf die erste Testverbindung nicht geschlossen werden, bevor die nächste mit derselben SSL-Sitzungs-ID / demselben SSL-Sitzungsschlüssel geöffnet wird. Leider scheint kein Dienstprogramm eine solche Option zu haben.

Kal
quelle

Antworten:

4

Sie können dies anhand einer der SSL-Analyseseiten überprüfen (z. B. Qualys 'SSL-Servertest ). Suchen Sie nach dem Ergebnis des Tests zur Wiederaufnahme der Sitzung: Wenn "Ja" angezeigt wird, funktioniert das Zwischenspeichern Ihrer Sitzung.

Flup
quelle