Erinevus lehekülje "Apache ssl" redaktsioonide vahel

Allikas: Kuutõrvaja
(Ametlikud sertifikaadid)
(Sissejuhatus)
17. rida: 17. rida:
 
Teine võimalus on tekitada sertifikaadi taotlus ja lasta see allkirjastada mõnel tunnustatud teenusepakkujal. Sedalaadi sertifikaate nimetatakse ka popup-free sertifikaatideks, seda kuna browserid ei kuva nende sertifikaatide juures hoiatavaid tekste enne veebile sisenemist, nii nagu
 
Teine võimalus on tekitada sertifikaadi taotlus ja lasta see allkirjastada mõnel tunnustatud teenusepakkujal. Sedalaadi sertifikaate nimetatakse ka popup-free sertifikaatideks, seda kuna browserid ei kuva nende sertifikaatide juures hoiatavaid tekste enne veebile sisenemist, nii nagu
 
nad teevad seda self-signed sertidega.
 
nad teevad seda self-signed sertidega.
 +
 +
Ühe sellise 'instansi'ina tegutseb näiteks organisatsioon Verysign.
 +
 +
Lisaks on ametlike sertifikaatide puhul kaks plussi
 +
 +
*klient saab olla kindel, et server mida ta külastab on ikka see mis ta paistab olevat (nt. www.eyp.ee)
 +
*server saab olla kindel, et klient on see kes ta ütleb end olevat
  
 
NB! Installitud peaks eelnevalt olema uusim openssl vesioon
 
NB! Installitud peaks eelnevalt olema uusim openssl vesioon

Redaktsioon: 21. märts 2013, kell 15:38

Sissejuhatus

Alustame siiski eesmärgist: miks seda üldse hea teha on?

Nagu öeldud on see seotud krüpteerimisega. Täpsemine, liiklus veebiserveri ja teine browseri vahel saab olema krüpteeritud. Antud juhul on selle tegemiseks vaja vähemalt veebiserveril omada public ja private keyd. Antud kontekstis nimetatakse serveri public key'd ka serveri sertifikaadiks. Niisiis, kui firefox külstab seda serverit, siis

  • antakse talle serveri avalik võti (mille sisu pole põhimõtteliselt kellegile saladus)
  • seejärel loob browser ilmselt midagi session key sarnast ning saadab servery public key'ga krüpreetirult session key serverile
  • seda saadetist ei saa keegi peale vastava private key lahti võtta - st .ainult server

Tulemusena on mõlemad pooled kokku leppinud sümmeetrilise võtme millega edaspidi andmevahetust krüpteeritakse.

Sertifikaatide juures on kaks võimalust. Üks on luua isesigneeritud ehk self-signed sertifikaat. Sellisel juhul tekitab kasutaja ise nii sertifikaadi taotluse kui ka signeerib selle ise.

Teine võimalus on tekitada sertifikaadi taotlus ja lasta see allkirjastada mõnel tunnustatud teenusepakkujal. Sedalaadi sertifikaate nimetatakse ka popup-free sertifikaatideks, seda kuna browserid ei kuva nende sertifikaatide juures hoiatavaid tekste enne veebile sisenemist, nii nagu nad teevad seda self-signed sertidega.

Ühe sellise 'instansi'ina tegutseb näiteks organisatsioon Verysign.

Lisaks on ametlike sertifikaatide puhul kaks plussi

  • klient saab olla kindel, et server mida ta külastab on ikka see mis ta paistab olevat (nt. www.eyp.ee)
  • server saab olla kindel, et klient on see kes ta ütleb end olevat

NB! Installitud peaks eelnevalt olema uusim openssl vesioon

Sertifikaatide tüübid ja väljastamise tingimused

Alates 1. veebruarist 2013 on kasutusel järgmised sertifikaatide tüübid ja nende väljastamise tingimused.

OV - Organization Validated Server Sertificate Enne sertifikaadi väljastamist kontrollitakse asutuse õigust (äri)nime kasutada - asutuse nimi peab olema kontrollitav avalikest ja piisavalt autoriteetsetest allikatest. Taotleva asutuse nimi sertifikaaditaotluses peab olema asutuse ametlik nimi, selle ingliskeelne tõlge või nime transkriptsioon 7-bit ASCII kodeeringus.

Kontrollitakse ka õigust domeeninime kasutada (vt. altpoolt).

DV - Domain Validated Server Sertificate NB! DV sertifikaat ei sisalda asutuse nime.

Kontrollitakse taotluses oleva(te) domeeninime(de) kasutamisõigust. Domeeni valideerimine (DCV - Domain Control Verification) toimub ühel järgnevatest meetoditest:

  • E-kiri Comodo serfitiseerimiskeskuse poolt aktsepteeritud aadressidele
  • HTTP CSR räsi meetod (CSR kirje lisamine veebi räsisse)
  • DNS CNAME räsi meetod (CNAME kirje lisamine nimeserverisse)

OV sertifikaadid on vajalikud kui asutuse nimi sertifikaadis on oluline (rahalised toimingud, teenuse kõrgem turvalisustase, vmt). Muudel juhtudel soovitaks kasutada DV sertifikaate.

Sertifikaadi taotlemine

Enne kuslil sertifikaaditeenuse pakkuja juures vormi täitmist tuleb oma arvutis genereerida avaliku/salajase võtme paar ja taotlus. OpenSSL-i abil näiteks:

openssl genrsa -out XYZ.key 2048
openssl req -new -key XYZ.key -out XYZ.csr

NB! Võtme pikkus peab olema vähemalt 2048 bitti.

Self-signed serfitikaadi loomine

Loome apache ssl ajutise self-signed sertifikaadi mis ei nõuaks parooli.

Teeme kõigepealt taotluse

openssl genrsa -des3 -out server.key 1024
openssl req -new -key server.key -out server.csr

Ja allkirjastame selle ka kohe ise ära

openssl x509 -req -days 300 -in server.csr -signkey server.key -out server.crt
openssl rsa -in server.key -out server.key

Seadistame sertifikaadi õigused paika

chmod 0400 server.key
chmod 0400 server.crt

Apache seadistus

Apache peab olema eelnevalt kompileeritud SSL toega. Näites on kasutatud versiooni apache 2.x versioonil 1.3 võib olla erinevusi.

FreeBSD

Paigaldame apache

# cd /usr/ports/www/apache22 && make install clean

Lisame FreeBSD's faili /etc/rc.conf rea

apache22_enable="YES"

Käivitame apache

# /usr/local/etc/rc.d/apache22.sh start

Kontrollime käsuga sockstat, kas kuulab?

# sockstat | grep 443
www      httpd      20720 4  tcp46  *:443                 *:*
www      httpd      20709 4  tcp46  *:443                 *:*
www      httpd      20020 4  tcp46  *:443                 *:*
www      httpd      20019 4  tcp46  *:443                 *:*

kuulab :]

Gentoo

Failis /etc/conf.d/apache2

Lisame APACHE2_OPTS= reale lisaks -D SSL

näiteks nii

APACHE2_OPTS="-D PHP5 -D SSL

Käivitamiseks piisab

# /etc/init.d/apache2 start

selleks et peale rebooti automaatselt stardiks

# rc-update add apache2 default

httpd.conf

Kasutage kõige uuemat tarkvara, s.h. OpenSSL ja Apache viimaseid turvalisi versioone. Ebaturvalist SSLv2 protokolli tuleks vältida, samuti lühikeste võtmepikkustega (vähem kui 128 bitti) šifreid.

Apache httpd.conf võib luua sarnaselt. Näidiskonfiguratsioon Apache veebiserverile: Siin toodud seadistus on täiesti universaalne ja operatsioonisüsteemist sõltumatu

Listen 443
NameVirtualHost ip-aadress:443

<VirtualHost ip-aadress:443>
  ServerName www.nimi.ee
  DocumentRoot /home/nimi

SSLSessionCache shmcb:/var/run/ssl_scache(512000)
SSLSessionCacheTimeout 300
SSLProtocol All -SSLv2
SSLCipherSuite RC4-SHA:HIGH:MEDIUM:!ADH
SSLCertificateFile /kataloog/arvuti.nimi.crt
SSLCertificateKeyFile /kataloog/arvuti.nimi.key
# Apache ver 2.2.0+:
SSLHonorCipherOrder On
# Apache ver 2.2.24+:
SSLCompression Off

</VirtualHost>

Erinevate namebased virtualhostide juures saab sertifikaate kasutada vaid siis kui sertifikaat Subject Alternative Name abil on defineeritud kõik domeenid sertifikaati!

http://www.onlamp.com/pub/a/apache/2005/02/17/apacheckbk.html


Lisaks: pkcs formaadis sert tuleb enne kasutama hakkamist ümber konvertida

$ openssl pkcs7 -print_certs -in servver.crt -outform DER -out serveruus.crt