Ero sivun ”Tekniikka/Apache/2.4” versioiden välillä
Ei muokkausyhteenvetoa |
|||
(18 välissä olevaa versiota samalta käyttäjältä ei näytetä) | |||
Rivi 1: | Rivi 1: | ||
'''Apache 2.4''' version suuntaa antava esimerkkitiedosto asiakaspään / henkilökortin varmennetunnistukselle. Varmenteen PIN-koodin vaativa ''SSLVerifyClient require'' asetus tulee asettaa sovelluskohtaisesti oikein. | |||
== Varmennekättely == | |||
'''SSLCADNRequestPath''' asetus mod_ssl moduulissa määrittää asiakaspäälle lähetettävän takaajien listan hyväksyttävistä varmenteista. | |||
https://serverfault.com/questions/238538/static-page-instead-of-the-default-ssl-error-handshake-failure-alert | * https://httpd.apache.org/docs/2.4/mod/mod_ssl.html | ||
https://stackoverflow.com/questions/6110489/apache-custom-error-handling-creating-secure-connection | * [[Varmennekättely]] | ||
== Palvelimen asetukset == | |||
<VirtualHost 88.196.164.221:443> | |||
ServerName digisaatio.fi | |||
DocumentRoot /var/www/html/ | |||
ServerAdmin digisaatio@digisaatio.fi | |||
HostnameLookups On | |||
LogFormat "%a %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined | |||
LogFormat "%a %h %l %u %t \"%r\" %>s %b" common | |||
LogFormat "%{Referer}i -> %U" referer | |||
LogFormat "%{User-agent}i" agent | |||
ErrorLog logs/digisaatio.fi-error.ssl.log | |||
CustomLog logs/digisaatio.fi-access.ssl.log combined | |||
DirectoryIndex index.html index.shtml index.php index.py index.html.var | |||
AddHandler php5-script .php | |||
AddType text/html .php | |||
<IfModule mod_ssl.c> | |||
SSLProtocol All -SSLv3 -TLSv1.3 | |||
SSLEngine on | |||
SSLCipherSuite ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-A:ES256-GCM-SHA384:!RC4:!LOW:!MD5:!aNULL:!eNULL:!3DES:!EXP:!PSK:!SRP:!DSS | |||
SSLProxyEngine off | |||
SSLOptions +OptRenegotiate +StdEnvVars +ExportCertData | |||
SSLCertificateFile /etc/pki/digisaatio.fi/fullchain.cer | |||
SSLCertificateKeyFile /etc/pki/digisaatio.fi/digisaatio.fi.key | |||
SSLCACertificateFile /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem | |||
<Location "/mediawiki/index.php" > | |||
<If "%{QUERY_STRING} =~ m#title\=Toiminnot\:Kirjaudu_sis%C3%A4%C3%A4n(.*)#"> | |||
SSLRequireSSL | |||
SSLVerifyClient require | |||
SSLVerifyDepth 2 | |||
SSLRequire %{SSL_CLIENT_I_DN_OU} eq "Valtion kansalaisvarmenteet" | |||
</If> | |||
</Location> | |||
</IfModule> | |||
</VirtualHost> | |||
Vaadittavat Digiviraston CA-varmenteet saa heidän CA-varmenteet sivulta: | |||
* https://dvv.fi/ca-varmenteet | |||
Apachen dokumentaatiota: | |||
* https://httpd.apache.org/docs/2.4/mod/mod_ssl.html | |||
* https://httpd.apache.org/docs/2.4/env.html | |||
== Käyttäjän tiedot == | |||
Taulukossa osa HTTP-yhteyden kansalaisvarmenteelta saatavista tiedoista. Loput selviävät tulostamalla kaikki Apache-prosessin ympäristömuuttujat. Tärkein eli [[SATU]] ei esiinny missään kentässä sellaisenaan vaan sen tulee parsia käyttäjän CN:stä (''Common Name''). Jos kyseessä on ns Organisaatio- tai Sote-kortti, niiden tiedoissa ei näy SATU-tunnus vaan kyseisten korttien omat tunnukset. | |||
{| class="wikitable sortable" style=";" | |||
!tieto | |||
!esimerkki | |||
|- | |||
|SSL_CLIENT_VERIFY | |||
|SUCCESS | |||
|- | |||
|SSL_CLIENT_I_DN_OU | |||
|Valtion kansalaisvarmenteet | |||
|- | |||
|SSL_CLIENT_I_DN_C | |||
|FI | |||
|- | |||
|SSL_CLIENT_I_DN_O | |||
|Vaestorekisterikeskus CA | |||
|- | |||
|SSL_CLIENT_I_DN | |||
|CN=VRK Gov. CA for Citizen Qualified Certificates - G2,OU=Valtion kansalaisvarmenteet,O=Vaestorekisterikeskus CA,C=FI | |||
|- | |||
|SSL_CLIENT_S_DN | |||
|CN=TUOMALA JUHA 10000350X,SN=TUOMALA,GN=JUHA,serialNumber=10000350X,C=FI | |||
|- | |||
|SSL_CLIENT_S_DN_CN | |||
|TUOMALA JUHA 10000350X | |||
|- | |||
|SSL_CLIENT_S_DN_S | |||
|TUOMALA | |||
|- | |||
|SSL_CLIENT_SAN_Email_0 | |||
|juha.tuomala@iki.fi | |||
|} | |||
Jos SATU:a käyttää tietokanta-avaimena, kannattaa ehkä harkita jonkin maakohtaisen prefixin lisäämistä kuten [[SAML/PersonIdentifier|SAML PersonIdentifier attribuutissa]] on tehty, tai miten [[ETSI]] määrittelee maakohtaisen PNO-prefixin. | |||
== Katso myös == | |||
* [[Apache]] | |||
== Aiheesta muualla == | |||
* https://serverfault.com/questions/238538/static-page-instead-of-the-default-ssl-error-handshake-failure-alert | |||
* https://stackoverflow.com/questions/6110489/apache-custom-error-handling-creating-secure-connection | |||
[[Luokka:Tekniikka]] |
Nykyinen versio 3. huhtikuuta 2022 kello 14.43
Apache 2.4 version suuntaa antava esimerkkitiedosto asiakaspään / henkilökortin varmennetunnistukselle. Varmenteen PIN-koodin vaativa SSLVerifyClient require asetus tulee asettaa sovelluskohtaisesti oikein.
Varmennekättely
SSLCADNRequestPath asetus mod_ssl moduulissa määrittää asiakaspäälle lähetettävän takaajien listan hyväksyttävistä varmenteista.
Palvelimen asetukset
<VirtualHost 88.196.164.221:443> ServerName digisaatio.fi DocumentRoot /var/www/html/ ServerAdmin digisaatio@digisaatio.fi HostnameLookups On LogFormat "%a %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined LogFormat "%a %h %l %u %t \"%r\" %>s %b" common LogFormat "%{Referer}i -> %U" referer LogFormat "%{User-agent}i" agent ErrorLog logs/digisaatio.fi-error.ssl.log CustomLog logs/digisaatio.fi-access.ssl.log combined DirectoryIndex index.html index.shtml index.php index.py index.html.var AddHandler php5-script .php AddType text/html .php <IfModule mod_ssl.c> SSLProtocol All -SSLv3 -TLSv1.3 SSLEngine on SSLCipherSuite ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-A:ES256-GCM-SHA384:!RC4:!LOW:!MD5:!aNULL:!eNULL:!3DES:!EXP:!PSK:!SRP:!DSS SSLProxyEngine off SSLOptions +OptRenegotiate +StdEnvVars +ExportCertData SSLCertificateFile /etc/pki/digisaatio.fi/fullchain.cer SSLCertificateKeyFile /etc/pki/digisaatio.fi/digisaatio.fi.key SSLCACertificateFile /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem <Location "/mediawiki/index.php" > <If "%{QUERY_STRING} =~ m#title\=Toiminnot\:Kirjaudu_sis%C3%A4%C3%A4n(.*)#"> SSLRequireSSL SSLVerifyClient require SSLVerifyDepth 2 SSLRequire %{SSL_CLIENT_I_DN_OU} eq "Valtion kansalaisvarmenteet" </If> </Location> </IfModule> </VirtualHost>
Vaadittavat Digiviraston CA-varmenteet saa heidän CA-varmenteet sivulta:
Apachen dokumentaatiota:
Käyttäjän tiedot
Taulukossa osa HTTP-yhteyden kansalaisvarmenteelta saatavista tiedoista. Loput selviävät tulostamalla kaikki Apache-prosessin ympäristömuuttujat. Tärkein eli SATU ei esiinny missään kentässä sellaisenaan vaan sen tulee parsia käyttäjän CN:stä (Common Name). Jos kyseessä on ns Organisaatio- tai Sote-kortti, niiden tiedoissa ei näy SATU-tunnus vaan kyseisten korttien omat tunnukset.
tieto | esimerkki |
---|---|
SSL_CLIENT_VERIFY | SUCCESS |
SSL_CLIENT_I_DN_OU | Valtion kansalaisvarmenteet |
SSL_CLIENT_I_DN_C | FI |
SSL_CLIENT_I_DN_O | Vaestorekisterikeskus CA |
SSL_CLIENT_I_DN | CN=VRK Gov. CA for Citizen Qualified Certificates - G2,OU=Valtion kansalaisvarmenteet,O=Vaestorekisterikeskus CA,C=FI |
SSL_CLIENT_S_DN | CN=TUOMALA JUHA 10000350X,SN=TUOMALA,GN=JUHA,serialNumber=10000350X,C=FI |
SSL_CLIENT_S_DN_CN | TUOMALA JUHA 10000350X |
SSL_CLIENT_S_DN_S | TUOMALA |
SSL_CLIENT_SAN_Email_0 | juha.tuomala@iki.fi |
Jos SATU:a käyttää tietokanta-avaimena, kannattaa ehkä harkita jonkin maakohtaisen prefixin lisäämistä kuten SAML PersonIdentifier attribuutissa on tehty, tai miten ETSI määrittelee maakohtaisen PNO-prefixin.