
Kuidas lisada Apache'ile ID-kaardi tugi
Pikem seletus
- Veiko Sinivee Näiteskript
CRL-ide automaatseks uuendamiseks - Reigo Küngas
Esimese versiooni allikas: http://www.colleduc.ee/id.html, Taniel Kirikal
Kontrollitud apache 1.3.22 + mod_ssl 2.8.5 peal (alltoodud failide
asukohad peaks kehtima redhat 7.x kohta)
- tõmba endale PEM-vormingus ära SK sertifikaadid JUUR-SK, ESTEID-SK
ja ESTEID-SK 2007
- lase kokku üheks failiks:
cat JUUR-SK.pem.crt ESTEID-SK.PEM.crt ESTEID-SK 2007.pem.cer > id.crt
- kopeeri id.crt kataloogi /etc/httpd/conf/ssl.crt
- kirjuta /etc/httpd/conf/httpd.conf faili SSL virtuaalsaidi
osasse juurde rida SSLCACertificateFile /etc/httpd/conf/ssl.crt/id.crt
- nüüd mine kataloogi /etc/httpd/conf/ssl.crl ja tõmba ära sertifikaatide
tühistusnimekirjad:
wget http://www.sk.ee/crls/esteid/esteid.crl wget
http://www.sk.ee/crls/esteid/esteid2007.crl
wget http://www.sk.ee/crls/juur/crl.crl
- konverteeri need PEM-vormingusse:
openssl crl -in esteid.crl -out esteid.crl -inform
DER openssl crl -in esteid2007.crl -out esteid2007.crl -inform DER openssl crl -in crl.crl -out crl.crl
-inform DER
- genereeri hash-lingid tekkinud failidele käsuga make
- kirjuta
/etc/httpd/conf/httpd.conf faili SSL virtuaalsaidi osasse juurde
rida SSLCARevocationPath /etc/httpd/conf/ssl.crl
Nüüd peaks siis sertifikaadid
ja nende tühistusnimekirjad serverile olema selgeks tehtud.
Tühistusnimekirjade uuendamine tasuks läbi teha regulaarselt, näiteks
paigutades /etc/cron.daily kataloogi vastava skripti. NB!
Kindlasti peab uue CRL-i allalaadimisel tegema
Apache'ile taaskäivituse (kill -HUP ei piisa), muidu
ei võeta uut tühistusnimekirja kasutusele.
- sellesse kataloogi SSL-virtuaalsaidis, milles soovid kasutada ID-kaardi
tuvastust lisad .htaccess faili sellised read:
(eeldusel, et selle
kataloogi kohta on olemas httpd.conf failis vastav AllowOverride AuthConfig Options) SSLVerifyClient require SSLVerifyDepth 3
- tee apache'ile uuestikäivitus: /etc/init.d/httpd restart
- istu nüüd mõne Windows-arvuti taha, kus on kiipkaardilugeja ja mõni brauser,
millele on ID-kaardi asi selgeks tehtud ning katseta ligipääsu
- server peaks nüüd sellele kataloogile ligi lubama AINULT eesti
ID-kaardiga. ühtlasi saab server kätte ka kõik ID-kaardi sertifikaadis olevad
andmed, nagu näiteks nime, isikukoodi jne.
- kui tahta, et server sertifikaatide andmed
muutujatesse kannaks (et need oleks skriptides kasutatavad), võiks lisada
.htaccess faili midagi sellist:
<Files ~ "\.(cgi|shtml|php)$"> SSLOptions +StdEnvVars +ExportCertData </Files>
Sertifikaatide kehtivuse kontroll
Ülalkirjeldatud meetodi puhul kontrollitakse
sertifikaatide kehtivust tühistusnimekirja regulaarse allalaadimise abil. See on
kõige lihtsam meetod, millest piisab neis saitides, kus pole tegu väga oluliste
tehingute tegemisega. Kuna tühistusnimekirjade uuendamise maksimaalne vahemik võib olla kuni 12 tundi, võib tekkida
olukord, kus isiku sertifikaadid on juba peatatud, kuid pole veel
tühistusnimekirja jõudnud.
Tühistusnimekirjadest turvalisem on teostada kehtivuse
kontrolli iga päringu puhul OCSP-teenuse abil, kus on reaalajas saadaval
värskeimad kehtivusandmed. Selle realiseerimine on aga hetkel veidi keeruline,
kuna OpenSSL-i vastav funktsionaalsus pole veel lõppversiooni jõudnud ja on
hetkel beetas. Samuti pole see veel integreeritud mod_ssl-i. Loomulikult aga
võib OCSP abil kehtivuskontrolli teostada veebirakenduses endas. Juhiseid loe siit
.

|