Odpovídač OCSP

[OCSP = Online Certificate Status Protocol = Online protokol stavu certifikátu]

CAcert nasadil a provozuje OpenCA odpovídač OCSP. Všechny certifikáty, které byly vydány po 16.05.2005, by měly mít URL služby OCSP automaticky vložen [položka "Přístup k informacím autority" v podrobnostech certifikátu], a Váš klient OCSP by měl periodicky kontrolovat stav certifikátu. Odpovídač OCSP vydává podepsané odpovědi přes HTTP (na adrese OCSP není obyčejný web a Vám stačí připojit se k ní klientem OCSP, například OpenSSL). Jakmile je Váš klient instalován, můžete mu přikázat spojit se s http://ocsp.cacert.org nebo http://ocsp.cacert.org:2560. Pro aktivaci OCSP ve Firefoxu použijte nastavení:

Zapnutí OCSP ve Firefoxu:

  1. Menu Edit -> Preferences.

  2. V okně Preferences vyberte Advanced.
  3. Sjeďte dolů na sekci Validation, poslední možnost je OCSP.
  4. Standardně je vybráno "Do not use OCSP for certificate Validation" (Nepoužívat OCSP pro ověřování certifikátů). Zvolte druhou možnost "Use OCSP to validate only certificates" (Použít OCSP jen k ověřování certifikátů, které udávají URL služby OCSP).
  5. Stisknutím OK zavřete okno předvoleb.

Ve Firefoxu verze 2.0.0.14 jděte pro nastavení OCSP do Firefox > Tools > Options > Advanced > Encryption > Verification > a zvolte "Use OCSP to validate only certificates that specify an OCSP service URL" (Použít OCSP jen k ověřování certifikátů, které udávají URL služby OCSP) > Ok > Ok.

Ve Thunderbirdu verze 2.0.0.14 nastavte použití OCSP: > Tools > Options > Advanced > Certificates > Verification > select "Use OCSP to validate only certificates that specify an OCSP service URL" (Použít OCSP jen k ověřování certifikátů, které udávají URL služby OCSP) > Ok > Ok.

[Nastavení pro Firefox a Thunderbird je zřejmě společné.]

Standardně provozujeme Odpovídač OCSP na portu 2560 (OpenCA), ale v následující konfiguraci Apache je také možno zpřístupnit ho jako vhost Apache na portu 80, což je důležité pro počítače skryté za firewallem a neschopné připojit se k jiným portům, než 80 a 443.

<VirtualHost x.x.x.x:80>
ServerName ocsp.cacert.org
DocumentRoot /dev/null
RewriteEngine on
RewriteCond %{CONTENT_TYPE} !^application/ocsp-request$
RewriteRule ^/(.*) http://localhost:2560/ [P]
CustomLog /var/log/apache/ocsp.cacert.org-access.log combined
ErrorLog /var/log/apache/ocsp.cacert.org-error.log
</VirtualHost>

Vydáváme certifikáty s URI adresou odpovídače OCSP http://ocsp.cacert.org. Plánujeme distribuované servery po celém světě se strategií vyvážené zátěže (round-robin) DNS. Jestliže/až v budoucnu nastane problém se zátěží nebo šířkou pásma (propustností), budeme moci prostě přidat další odpovídače OCSP podobně, jako když přidáváme sekundární DNS servery, a zdá se, že s naší současnou konfigurací to budeme moci zcela snadno široce distribuovat.

Vlivem "vláknového" modelu použitého při návrhu RFC pro OCSP bude klíčová vysoká dostupnost služeb OCSP při provozu / údržbě, protože klienty se zapnutým OCSP selžou při připojení ke každému certifikátu, pro nějž nedokážou získat platnou odpověď OCSP. Pokud je mi známo, produkty Mozilly nemají v současnosti žádnou formu mezipaměti (caching) pro OCSP, takže čtení podepsaného/zašifrovaného e-mailu v plánu pro ThunderBird může být momentálně obtížné. Microsoft zřejmě vyvíjí klienta OCSP pro svou příští verzi Windows/MS Internet Exploreru, která asi nějakou mezipaměť používá, a bude zajímavé vidět, jak dobře bude pracovat.

Shoda s RFC

Veřejně dostupné verze "démona" OCSPD od OpenCA nemají plnou shodu s RFC pro hostování několika kořenových certifikátů, takže v současnosti používáme předběžnou verzi OCSPD, která je v plném souladu s RFC.

Jak to otestovat?

http://svn.cacert.org/CAcert/Software/OcspTest-1.2.tar.bz2

Jak ověřit certifikát manuálně?

Jestliže Váš prohlížeč / e-mailový klient odmítá přijatelně pracovat s OCSP, můžete použít nástroj openssl (viz http://www.openssl.org) k ověření certifikátu se zadaným sériovým číslem:

openssl ocsp -issuer CAcert_class1.pem -serial 0x<serial no in hex> -host ocsp.cacert.org:80 -CAfile cacert_both.pem

Soubor zadaný v -issuer musí obsahovat certifikát certifikační autority (CA), která vydala testovaný certifikát (CAcert třídy 1 nebo 3) a soubor v -CAfile by měl obsahovat kořenové certifikáty CAcert (a snad i dalších důvěryhodných CA).

Viz také http://www.openssl.org/docs/apps/ocsp.html

Jiné informace


OcspResponder/CZ (last edited 2015-03-14 17:17:00 by AlesKastner)