Erinevus lehekülje "X-tee v6 turvaserveri paigaldamine ja kasutamine" redaktsioonide vahel

Allikas: Kuutõrvaja
P
13. rida: 13. rida:
 
Ubuntu paigaldus on tavapärane, seda siin ei juhendis ei kaeta.
 
Ubuntu paigaldus on tavapärane, seda siin ei juhendis ei kaeta.
  
Kindlasti tee endale ligipääs ja anna endale sudo õigused ning pane külge kõik IP aadressid ja võrgud, mis sinu turvaserveril vajalikud.
+
Kindlasti tee endale SSH ligipääs ja anna endale sudo õigused ning pane külge kõik IP aadressid ja võrgud, mis sinu turvaserveril vajalikud.
  
 
== Ubuntu tulemüüri paigaldus ==
 
== Ubuntu tulemüüri paigaldus ==
35. rida: 35. rida:
 
Lisa näiteks '''/etc/apt/sources.list.d/xroad.list''' faili järgnevad read, et siduda ennast X-tee repositooriumiga.
 
Lisa näiteks '''/etc/apt/sources.list.d/xroad.list''' faili järgnevad read, et siduda ennast X-tee repositooriumiga.
  
Vali vastavalt soovile kas toote (live) repo või testrepo.
+
Vali vastavalt soovile kas '''toote''' (live) repo või '''test'''-repo.
  
'''NB! Kui paigaldad test- või dev-x-tee turvaserverit, siis võid ka toote repot kasutada. Toote repos on stabiilne kood!'''
+
'''NB! Kui paigaldad test- või arendus-x-tee turvaserverit, siis võid ka toote repositooriumi kasutada, kuna seal on stabiilne kood!'''
  
 
  # x-road ametlik live repo
 
  # x-road ametlik live repo
60. rida: 60. rida:
  
 
== Turvaserveri esialgne seadistus ==
 
== Turvaserveri esialgne seadistus ==
Nüüd on oluline koht sellel, mis magistraalil sinu turvaserver sõitma hakkab. Vastavalt sellele tuleb valida konfiguratsiooniankur.
+
Logi sisse X-tee turvaserveri admin-liidesesse aadressil https://SINUIP:4000. Kasuta loodud kasutajanime ja parooli.
 +
 
 +
Nüüd on oluline koht sellel, mis magistraalil sinu turvaserver sõitma hakkab. Vastavalt sellele tuleb valida '''konfiguratsiooniankur'''.
  
 
Ankrud on kättesaadavad RIA X-tee keskkonna lehelt: https://www.ria.ee/ee/x-tee-keskkonnad.html
 
Ankrud on kättesaadavad RIA X-tee keskkonna lehelt: https://www.ria.ee/ee/x-tee-keskkonnad.html
  
Artikli kirjutamise hetkel on võimalik valida nii bdoc kui xml failide seast. (bdoc sisaldab seda sama xml faili, allkirjastatud RIA peadirektori Taimar Peterkop nimel).
+
Artikli kirjutamise hetkel on võimalik valida nii .bdoc kui .xml failide seast. (.bdoc konteiner sisaldab seda sama .xml faili, allkirjastatud tänase RIA peadirektori Taimar Peterkop'i nimel).
 +
 
 +
= HSMi tugi =
 +
Osaliselt on käesolevas juhendis kaetud kaks lahendust: HSM USB-seadmega ja HSM LAN-seadmega. Konkreetne lahendus võib suuresti sõltuda HSM seadme tootjast ja teiepoolsest keskkonna ülesehitusest.
  
 +
Kõigepealt paigalda X-tee lisakomponent, mis võimaldab HSMide kasutamise:
  
= HSMi tugi =
+
sudo apt-get install xroad-addon-hwtokens
Kaetud on kaks lahendust. Konkreetne lahendus võib suuresti sõltuda HSM seadme tootjast ja teiepoolsest keskkonna ülesehitusest.
 
  
 
== HSM USB ==
 
== HSM USB ==
Kirjatüki HSM USB tugi on tehtud SafeNet eToken 5100 seadme näitel.
+
Kirjatüki HSM USB tugi on tehtud '''SafeNet eToken 5100''' seadme näitel.
 +
 
 +
SafeNet USB pulk on vaja kõigepealt oma arvutis initsialiseerida ja konfigureerida kasutades Safenet Authentication Client (sac) tarkvara. Tarkvara töötab nii Windows, Linux kui ka Mac OS X (JAA!) operatsioonisüsteemil.
 +
 
 +
Juhendis kasutati Mac OS X versiooni 10.12.4 ja sac versiooni 9.1.
 +
 
 +
Avanenud aknast tuleks valida "Advanced View" ja tokeni peal teha parem klikk ja sealt valida "Initialize token".
 +
 
 +
[[Pilt:Hsm-sac-advanced-view.png]]
 +
 
 +
'''NB! Initialize kustutab kogu eelneva info tokeni pealt!'''
 +
 
 +
Initsialiseerimise protsess on suhteliselt lihtne - vaja on seadistada Tokeni parool (mida on vaja sisestada, kui X-tee tarkvara soovib HSMi kasutama hakata).
 +
 
 +
Lisaks on võimalik seadistada ka admin-parool, et siis sac kliendi kaudu tokeni haldamine oleks parooliga kaitstud.
 +
 
 +
=== USB tokeni jaoks tarkvara paigaldamine ===
 +
Vajalik on lisada uus repositoorium
 +
 
 +
sudo nano /etc/apt/sources.list.d/precise.list
 +
 
 +
Sinna sisse kirjuta:
 +
 
 +
deb http://cz.archive.ubuntu.com/ubuntu precise main universe
 +
 
 +
Tee repositooriumi värskendus ja paigalda allolevad paketid
 +
apt-get update
 +
apt-get install pcscd libccid libqt4-core libqt4-gui hal-info opensc libhal1 libhal-storage1
 +
 
 +
Kopeeri SafeNet Authentication Client tarkvara zip fail ka X-tee turvaserverisse.
 +
# unzip sac9.1_linux.zip
 +
# mkdir temp
 +
# sudo mount -o loop SAC_9_1_Linux.iso ./temp
 +
# sudo dpkg -i temp/Installation/Standard/DEB/SafenetAuthenticationClient-9.1.7-0_amd64.deb
 +
# sudo apt-get install libgtk2.0-0:i386
 +
 
 +
Veendu, et saad HSM-ile ligi (näed infot)
 +
 
 +
sudo pkcs11-tool --module=/lib/libeToken.so.9 -L
 +
 
 +
Peaksid nägema midagi sellist:
 +
 +
Available slots:
 +
Slot 0 (0x0): AKS ifdh [Main Interface] 00 00
 +
  token label        : Minu Token
 +
  token manufacturer : SafeNet, Inc.
 +
  token model        : eToken
 +
  token flags        : rng, login required, PIN initialized, token initialized, other flags=0x200
 +
  hardware version  : 4.29
 +
  firmware version  : 1.0
 +
  serial num        : ########
 +
Slot 1 (0x1):
 +
  (empty)
 +
Slot 2 (0x2):
 +
  (empty)
 +
Slot 3 (0x3):
 +
  (empty)
 +
Slot 4 (0x4): ETOKEN HID READER 0
 +
  (empty)
 +
Slot 5 (0x5): ETOKEN HID READER 1
 +
  (empty)
 +
Slot 6 (0x6): ETOKEN HID READER 2
 +
  (empty)
 +
Slot 7 (0x7): ETOKEN HID READER 3
 +
  (empty)
 +
Slot 8 (0x8):
 +
  (empty)
 +
Slot 9 (0x9):
 +
  (empty)
 +
 +
Järelikult USB tokeniga on ühendus olemas ja sa oled korrektselt initsialiseerinud ja tarkvara paigaldanud.
 +
 
 +
Kuniks seda infot ei ole näha, siis ei ole mõtet edasi liikuda.
 +
 
 +
=== Mooduli ja X-tee tarkvara ühendamine ===
 +
Eelnevalt paigaldatud juhtprogramm (driver ehk .so fail) tuleb ette anda '''/etc/xroad/devices.ini''' failist.
 +
 
 +
Sinna tuleks kirjutada näiteks:
 +
 
 +
[etoken]
 +
library = /lib/libeToken.so.9
 +
 
 +
Seejärel tuleb teha X-tee signer teenusele restart:
 +
 
 +
sudo service xroad-signer restart
 +
 
 +
Kui pärast xroad-signer teenuse restarti HSMi veebiliideses ''Keys and Certificates'' sektsioonis näha ei ole, siis võid teha tühjaks kas xroad-signeri cache, või siis tervele X-tee turvaserverile taaskäivituse.
  
SafeNet USB pulk on vaja kõigepealt oma arvutis initsialiseerida ja konfigureerida. Selleks on võimalik kasutada nii Windows, Linux kui ka Mac OS X (JAA!) operatsioonisüsteemi.
+
'''xroad-signer restart ja xroad-signer cache kausta tühjendamine'''
 +
service xroad-signer stop
 +
mv /var/cache/xroad/*ocsp /tmp
 +
service xroad-signer start
 +
 
 +
Kui ka pärast seda näha ei ole, siis on järelikult seadistamisega midagi nihu.
  
 
== HSM LAN ==
 
== HSM LAN ==
 
Kirjatüki HSM LAN tugi on tehtud Utimaco SecurityServer Se Gen2 LAN seadme näitel.
 
Kirjatüki HSM LAN tugi on tehtud Utimaco SecurityServer Se Gen2 LAN seadme näitel.
  
Käesolev kirjatükk ei kata HSMi seadistamist ega konfigureerimist.
+
Kuna Utimaco HSM seadme initsialiseerimine ja seadistamine on pisut keerulisem võrreldes HSM USB seadmega, siis seda peatükki hetkel ei käsitleta.
 +
 
 +
'''NB! Utimaco SecurityServeri jaoks vajaliku faili''' saad kas:
 +
* HSMi tarnija / maaletooja käest
 +
* Utimaco portaalis, kuhu on vaja ennast eelnevalt registreerida
 +
* sõbra käest, kellel ka sama HSM on. :)
 +
 
 +
Paigalda opensc pakk
 +
 +
sudo apt-get install opensc
  
 
Utimaco jaoks on vaja paigaldada näidiskonfiguratsioonifail /etc/utimaco/ kausta.
 
Utimaco jaoks on vaja paigaldada näidiskonfiguratsioonifail /etc/utimaco/ kausta.
 
  sudo mkdir /etc/utimaco/
 
  sudo mkdir /etc/utimaco/
Kopeeri sinna näidiskonfiguratsioon ja muuda ära CryptoServer sektsioonis IP
+
Kopeeri sinna Utimaco Security Server zip failist näidiskonfiguratsioon - '''cs_pkcs11_R2.cfg'''.
 +
 
 +
Ava see endale sobiva tekstiredaktoriga (nt nano või vim vmt) ja tee vastavad muudatused:
 +
 
 +
=== Konfiguratsioonimuudatused ===
 +
 
 +
==== Slotide arv ====
 +
 
 +
Kuna X-tee kuvab kõik saadaolevad slotid korraga ette, siis tasuks seda numbrit hoida nii väike kui võimalik ja nii suur kui vajalik.
 +
 
 +
Kui mõni slot on initsialiseerimata, siis seda ka kasutusele võtta pole võimalik.
 +
 
 +
# Maximum number of slots that can be used
 +
SlotCount = 3
 +
 
 +
==== CryptoServer IP ====
 
   
 
   
 
  [CryptoServer]
 
  [CryptoServer]
95. rida: 215. rida:
 
  FallbackInterval = 0
 
  FallbackInterval = 0
  
 +
=== Ühendus HSMiga ===
 +
Veendu, et saad HSMile ligi ja näed seal peal olevat informatsiooni.
 +
 +
# pkcs11-tool --module /usr/lib/libcs_pkcs11_R2.so -L
  
 +
Näiteks võiks tulemus olla midagi sellist:
 +
 +
Available slots:
 +
Slot 0 (0x0): 192.168.0.2 - SLOT_0000
 +
  token label        : Sinu-test-slot
 +
  token manufacturer : Utimaco IS GmbH
 +
  token model        : CryptoServer
 +
  token flags        : rng, login required, PIN initialized, token initialized, other flags=0x240
 +
  hardware version  : 5.1
 +
  firmware version  : 2.1
 +
  serial num        : Se52    CS######
 +
Slot 1 (0x1): 192.168.0.2 - SLOT_0001
 +
  token label        : Sinu-prod-slot
 +
  token manufacturer : Utimaco IS GmbH
 +
  token model        : CryptoServer
 +
  token flags        : rng, login required, PIN initialized, token initialized, other flags=0x240
 +
  hardware version  : 5.1
 +
  firmware version  : 2.1
 +
  serial num        : Se52    CS######
 +
Slot 2 (0x2): 192.168.0.2 - SLOT_0002
 +
  token state:  uninitialized
 +
 
=== Mooduli ja X-tee tarkvara ühendamine ===
 
=== Mooduli ja X-tee tarkvara ühendamine ===
Vastav juhtprogramm (driver ehk .so fail) tuleb ette anda '''/etc/xroad/devices.ini''' failist
+
Vajaliku draiveri leiad jällegi SecurityServer.zip faili seest. Kopeeri '''libcs_pkcs11_R2.so''' fail /usr/lib/ kausta.
 +
 
 +
Vastav juhtprogramm (driver ehk .so fail) tuleb ette anda '''/etc/xroad/devices.ini''' failis.
  
 
Sinna tuleks kirjutada näiteks:
 
Sinna tuleks kirjutada näiteks:
107. rida: 255. rida:
  
 
  sudo service xroad-signer restart
 
  sudo service xroad-signer restart
 +
 +
Kui pärast xroad-signer teenuse restarti HSMi veebiliideses ''Keys and Certificates'' sektsioonis näha ei ole, siis võid teha tühjaks kas xroad-signeri cache, või siis tervele X-tee turvaserverile taaskäivituse.
 +
 +
'''xroad-signer restart ja xroad-signer cache kausta tühjendamine'''
 +
service xroad-signer stop
 +
mv /var/cache/xroad/*ocsp /tmp
 +
service xroad-signer start
 +
 +
Kui ka pärast seda näha ei ole, siis on järelikult seadistamisega midagi nihu.
  
 
= Lisatarkvara paigaldus =
 
= Lisatarkvara paigaldus =
Vastavalt soovidele ja vajadustele on mõistlik paigaldada ka lisatarkvara
+
Vastavalt soovidele ja vajadustele on mõistlik paigaldada ka lisatarkvara:
  
 
Serveri koormuse jälgimine
 
Serveri koormuse jälgimine
117. rida: 274. rida:
 
  sudo apt-get install xroad-monitor
 
  sudo apt-get install xroad-monitor
  
sudo apt-get install xroad-addon-hwtokens
+
= X-tee võtmed, sertifikaadipäringud ja sertifikaadid =
+
 
 +
Test- ja arendus-x-teel on lubatud kasutada ka ainult softTokenit võtmete ja sertifikaadipäringute tegemiseks ning sertifikaatide hoiustamiseks. Soovitus on siiski võimaluse korral vähemalt test-süsteemis kasutusele võtta ka see sama HSM (teine partitsioon ehk slot), et välistada HSMI (mitte-)kasutamisest tingitud anomaaliaid ja/või vigu.
 +
 
 +
{| class="wikitable"
 +
!eesti keeles
 +
!inglise keeles
 +
!faililaiend
 +
|-
 +
|võti
 +
|key
 +
|.key
 +
|-
 +
|sertifikaadipäring
 +
|certificate request
 +
|.csr
 +
|-
 +
| seritifikaat
 +
| certificate
 +
| .crt
 +
|}
 +
 
 +
== Autentimissertifikaat ==
 +
'''Autentimissertifikaat''' (auth) tõendab seda, et te olete see, kes te väidate ennast olema. '''Auth sertifikaat on vajalik genereerida softToken'iga''' ehk tarkvaralise mooduliga, mis on X-teesse seadistatud juba paigaldusel.
 +
 
 +
Kui sa juba pole teinud, siis nüüd on õige aeg '''softToken''' lukust lahti teha! Selleks sisesta softTokeni PIN kood, mille seadistasid '''turvaserveri(!)''' initsialiseerimisel. Seejärel vajuta softTokeni peale ning siis "Generate Key".
 +
 
 +
[[Pilt:Xteev6-softtoken-genkey.png]]
 +
 
 +
Sisesta endale sobiv nimi ning vajuta OK.
 +
 
 +
[[Pilt:Xteev6-softtoken-genkey2.png]]
 +
 
 +
Vali vastloodud key ning vali "Generate CSR". Avanenud aknast vali kindlasti Usage kastist "auth". Certification Service peaks tulema automaatselt vastavalt keskkonnale (hint: konfiguratsiooniankur). CSR formaat meelepäraselt PEM või DER.
 +
 
 +
[[Pilt:Xteev6-softtoken-gencsr.png]]
 +
 
 +
Seejärel salvesta saadud CSR.
 +
 
 +
'''Kui tahad ka e-templi (sign) sertifikaadi kohe teha, siis liigu edasi järgmise punkti juurde. Kui aga ei, siis mine täida SK.ee lehel avaldus sertifikaadi saamiseks.'''
 +
 
 +
== HSMiga võtmete ja sertifikaadipäringute genereerimine ==
 +
 
 +
'''See punkt eeldab, et HSM on täielikult seadistatud ja kasutusel. Punkt on ühine, vahet ei ole, kas kasutusel olev HSM on ühendatud PCI-E, USB või LAN liidesega.'''
 +
 
 +
=== Signeerimissertifikaat ehk e-tempel ===
 +
 
 +
Algus on sama softTokeniga auth võtme genereerimisele - erinev on see, et loetelust tuleb valida (ja lahti teha) õige HSMi slot (partitsioon).
 +
 
 +
Utimaco HSM annab artikli kirjutamise hetkel välja kõik kasutusel olevad slotid kõikidele, kes kasutavad ja inimene ise peab tegema õige valiku, missugune slot lahti lukustada. Praegu ei ole ka võimalust, et seda piirata (nt testis kuvada ainult test-sloti vmt).
 +
 
 +
Jällegi - vali sobiv nimi (label), vajuta "OK". Seejärel "Generate CSR" ning saadud CSR salvesta, et pärast üles laadida SK.ee portaali.
 +
 
 +
== Sertifikaatide saamine/väljastamine ==
 +
 
 +
Avaldus sertifikaatide saamiseks tuleb täita Sertifitseerimiskeskuse veebilehel - https://sk.ee.
 +
 
 +
Kui SK otsustab väljastada sertifikaadid, annavad nad sellest e-maili teel sulle automaatselt teada. Sealt on võimalik ka vastloodud sertifikaat endale alla laadida.
 +
 
 +
Seejärel on vaja saadud sertifikaat/sertifikaadid importida X-tee keskkonda. Selleks mine jälle Keys and Certificates menüüsse ja vali nupp "Import Certificates".
 +
 
 +
Vali saadud fail ning lae see üles. Edukal impordil paigaldatakse sertifikaat õigesse kohta.
 +
 
 +
=== Test X-tee sertifikaadi lisaliigutus ===
 +
Test (ja tõenäoliselt ka arendus) X-teel tuleb sertifikaadiga teha veel üks lisaliigutus.
 +
 
 +
Nimelt - sertifikaat tuleb käsitsi üles laadida demo.sk.ee keskkonda - https://demo.sk.ee/upload_cert/index.php
 +
 
 +
Kopeeri kasti enda saadud sertifikaat, vali Status: Good ja lae üles.
 +
 
 +
Jällegi, tee xroad-signerile restart. Kui see ei aita, tühjenda xroad-signer cache ja kui see ka ei aita, tee turvaserverile taaskäivitus. Ja kui see ka ei aita, siis pöördu RIA poole abi saamiseks.
 +
 
 +
Teadaolevalt toodangu X-tee sertifikaatide puhul analoogset lisaliigutust teha vaja pole.
 +
 
 +
 
 +
 
 +
 
 +
 
  
Näiteks HSMi juures kasutusel olevatele kiipkaartide (''smart-card'') toe jaoks on vaja paigaldada opensc pakk:
 
sudo apt-get install opensc
 
  
  
 
= Andmejälgija ehk AJ paigaldus =
 
= Andmejälgija ehk AJ paigaldus =
 +
 +
Kirjatüki autor võtab endale vaba voli ilukirjanduslikult selgitada Andmejälgija vajalikkust:
 +
 +
Andmejälgija kasutusele võtmine on vajalik siis, kui töödeldakse isikuandmeid ja jagatakse välja kolmandale osapoolele. Kui kodanik Aabel Aabits ise küsib nt SAISist kooli sisseastumise hetkel EISi kaudu andmeid, siis see ei kuulu andmejälgija skoopi. Jah, kui Politsei- ja Piirivalveamet või Maanteeamet teeb kodaniku Aabel Aabits kohta päringu (ilma minupoolse osaluseta) EISist, siis see on kolmandale osapoolele jagamine ja need päringud võiksid olla andmejälgija kaudu kodanikule nähtavad.
 +
 +
Lühidalt öeldes: kui X-tee turvaserver on mõeldud ühe asutuse ühe infosüsteemi jaoks, siis võib AJ paigaldada X-tee turvaserveri "sisse".
 +
 +
Kui asutus pakub X-tee teenuseid teistele asutustele ja/või ühe X-tee turvaserveri sees on mitu infosüsteemi, siis [[https://github.com/e-gov/AJ/blob/develop/doc/spetsifikatsioonid/Taiendatud_tehniline_kontseptsioon.md#62-mitu-andmekogu-kasutavad-%C3%BChist-turvaserverit | Täiendatud tehnilise kontseptsiooni punkti 6.2]] alusel saab kirjatüki autor aru, et vaja on AJ paigaldada eraldi serverisse.
 +
 +
AJ võib soovi korral paigaldada ka konkreetsesse rakendusserverisse, kui sellel on Java tugi.
 +
 +
  
 
= Lingid, allikad ja lisalugemist =
 
= Lingid, allikad ja lisalugemist =
130. rida: 373. rida:
 
* https://moodle.ria.ee/
 
* https://moodle.ria.ee/
 
* https://demo.sk.ee/upload_cert/index.php
 
* https://demo.sk.ee/upload_cert/index.php
 +
* https://github.com/e-gov/AJ/

Redaktsioon: 11. mai 2017, kell 15:16

X-tee versioon 6 turvaserveri paigaldamise ja kasutamise juhend

X-tee keskkonnad

X-teel on kolm keskkonda või siis põhimagistraali ;) - arendus, test ja tootekeskkond. Paigaldusprotsess nendel on ühine, oluline on erinevus, et arendus ja test-keskkondasid on võimalik paigaldada ja kasutusele võtta rahakuluta, tootekeskkonna sertifikaatide eest tuleb SK-le maksta raha.

X-tee turvaservereid enam (alates v6) RIHAs ei registreerita. Küll tuleb alamsüsteemid (lihtsamalt öeldes infosüsteemid, mis X-teel suhtlevad) registreerida RIHAs.

V5 pealt üleminekul v6 peale võib teha uue RIHA kande, aga kirjatüki autori hinnangul saab ka sama kirjet edasi kasutada.

Ubuntu paigaldus

X-tee v6 töötab 2017. aasta mai seisuga Ubuntu 14.04 LTS 64-bitise versiooni peal. Rangelt soovituslik on valida viimane saadaolev "trusty" versioon, milleks täna on 16.04.5.

Ubuntu paigaldus on tavapärane, seda siin ei juhendis ei kaeta.

Kindlasti tee endale SSH ligipääs ja anna endale sudo õigused ning pane külge kõik IP aadressid ja võrgud, mis sinu turvaserveril vajalikud.

Ubuntu tulemüüri paigaldus

Kirjatüki autor soovitab kasutada nt Firehol tarkvara, et turvaserveri ühendusi piirata. Fireholi paigaldamiseks kasuta käsku:

sudo apt-get install firehol

Fireholi seadistamist see kirjatükk ei käsitle.

Turvaserveri tarkvara paigaldus

Kirjatüki autori seisukoht on, et ka test-keskkonnas võiks kasutada stabiilset repositooriumi - vastasel juhul võid sattuda hoopis X-tee koodi testijaks, mitte oma rakenduse testijaks. :) Loomulikult on test-repositooriumil oma koht ja kui keegi mõtleb, et seda võiks kasutada, siis selline võimalus on olemas.

Ettevalmistused turvaserveri tarkvara paigalduseks

Veebikasutaja

Veebikasutaja on kasutaja, kellele õigustes hakkavad kõik vajalikud X-tee protsessid tööle ja kellel on õigus veebiliidesesse sisse logida. Sobiv kasutajanimi vali ise.

Näiteks:

  sudo adduser xtee

Repositooriumid

Lisa näiteks /etc/apt/sources.list.d/xroad.list faili järgnevad read, et siduda ennast X-tee repositooriumiga.

Vali vastavalt soovile kas toote (live) repo või test-repo.

NB! Kui paigaldad test- või arendus-x-tee turvaserverit, siis võid ka toote repositooriumi kasutada, kuna seal on stabiilne kood!

# x-road ametlik live repo
deb http://x-road.eu/packages trusty main
# x-road ametlik testrepo
#deb http://x-road.eu/.test/packages trusty main
deb http://ppa.launchpad.net/nginx/stable/ubuntu trusty main
deb http://ppa.launchpad.net/openjdk-r/ppa/ubuntu trusty main

Lisa signeerimisvõti

curl http://x-road.eu/packages/xroad_repo.gpg%7C sudo apt-key add -
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 00A6F0A3C300EE8C
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EB9B1D8886F44E2A

Turvaserveri tarkvara paigaldus

sudo apt-get update
sudo apt-get install xroad-securityserver

Paigalduse käigus küsitakse nii IP-sid kui CN nimesid self-signed sertifikaadi jaoks. Kuna seda sertifikaati kasutatakse vaid veebiliidese jaoks, siis on võimalik siin ka soovi korral kasutada usaldatud ahelast tulnud sertifikaadi (Digicert, Comodo, Letsencrypt vmt pakkuja), aga võib vabalt jätta ka vaikesertifikaadi.

Pärast paigaldust veendu, et saad ligi aadressile https://SINUIP:4000, et turvaserverit edasi hallata.

Turvaserveri esialgne seadistus

Logi sisse X-tee turvaserveri admin-liidesesse aadressil https://SINUIP:4000. Kasuta loodud kasutajanime ja parooli.

Nüüd on oluline koht sellel, mis magistraalil sinu turvaserver sõitma hakkab. Vastavalt sellele tuleb valida konfiguratsiooniankur.

Ankrud on kättesaadavad RIA X-tee keskkonna lehelt: https://www.ria.ee/ee/x-tee-keskkonnad.html

Artikli kirjutamise hetkel on võimalik valida nii .bdoc kui .xml failide seast. (.bdoc konteiner sisaldab seda sama .xml faili, allkirjastatud tänase RIA peadirektori Taimar Peterkop'i nimel).

HSMi tugi

Osaliselt on käesolevas juhendis kaetud kaks lahendust: HSM USB-seadmega ja HSM LAN-seadmega. Konkreetne lahendus võib suuresti sõltuda HSM seadme tootjast ja teiepoolsest keskkonna ülesehitusest.

Kõigepealt paigalda X-tee lisakomponent, mis võimaldab HSMide kasutamise:

sudo apt-get install xroad-addon-hwtokens

HSM USB

Kirjatüki HSM USB tugi on tehtud SafeNet eToken 5100 seadme näitel.

SafeNet USB pulk on vaja kõigepealt oma arvutis initsialiseerida ja konfigureerida kasutades Safenet Authentication Client (sac) tarkvara. Tarkvara töötab nii Windows, Linux kui ka Mac OS X (JAA!) operatsioonisüsteemil.

Juhendis kasutati Mac OS X versiooni 10.12.4 ja sac versiooni 9.1.

Avanenud aknast tuleks valida "Advanced View" ja tokeni peal teha parem klikk ja sealt valida "Initialize token".

Hsm-sac-advanced-view.png

NB! Initialize kustutab kogu eelneva info tokeni pealt!

Initsialiseerimise protsess on suhteliselt lihtne - vaja on seadistada Tokeni parool (mida on vaja sisestada, kui X-tee tarkvara soovib HSMi kasutama hakata).

Lisaks on võimalik seadistada ka admin-parool, et siis sac kliendi kaudu tokeni haldamine oleks parooliga kaitstud.

USB tokeni jaoks tarkvara paigaldamine

Vajalik on lisada uus repositoorium

sudo nano /etc/apt/sources.list.d/precise.list

Sinna sisse kirjuta:

deb http://cz.archive.ubuntu.com/ubuntu precise main universe

Tee repositooriumi värskendus ja paigalda allolevad paketid

apt-get update
apt-get install pcscd libccid libqt4-core libqt4-gui hal-info opensc libhal1 libhal-storage1

Kopeeri SafeNet Authentication Client tarkvara zip fail ka X-tee turvaserverisse.

  1. unzip sac9.1_linux.zip
  2. mkdir temp
  3. sudo mount -o loop SAC_9_1_Linux.iso ./temp
  4. sudo dpkg -i temp/Installation/Standard/DEB/SafenetAuthenticationClient-9.1.7-0_amd64.deb
  5. sudo apt-get install libgtk2.0-0:i386

Veendu, et saad HSM-ile ligi (näed infot)

sudo pkcs11-tool --module=/lib/libeToken.so.9 -L

Peaksid nägema midagi sellist:

Available slots:
Slot 0 (0x0): AKS ifdh [Main Interface] 00 00
  token label        : Minu Token
  token manufacturer : SafeNet, Inc.
  token model        : eToken
  token flags        : rng, login required, PIN initialized, token initialized, other flags=0x200
  hardware version   : 4.29
  firmware version   : 1.0
  serial num         : ########
Slot 1 (0x1):
  (empty)
Slot 2 (0x2):
  (empty)
Slot 3 (0x3):
  (empty)
Slot 4 (0x4): ETOKEN HID READER 0
  (empty)
Slot 5 (0x5): ETOKEN HID READER 1
  (empty)
Slot 6 (0x6): ETOKEN HID READER 2
  (empty)
Slot 7 (0x7): ETOKEN HID READER 3
  (empty)
Slot 8 (0x8):
  (empty)
Slot 9 (0x9):
  (empty)

Järelikult USB tokeniga on ühendus olemas ja sa oled korrektselt initsialiseerinud ja tarkvara paigaldanud.

Kuniks seda infot ei ole näha, siis ei ole mõtet edasi liikuda.

Mooduli ja X-tee tarkvara ühendamine

Eelnevalt paigaldatud juhtprogramm (driver ehk .so fail) tuleb ette anda /etc/xroad/devices.ini failist.

Sinna tuleks kirjutada näiteks:

[etoken]
library = /lib/libeToken.so.9

Seejärel tuleb teha X-tee signer teenusele restart:

sudo service xroad-signer restart

Kui pärast xroad-signer teenuse restarti HSMi veebiliideses Keys and Certificates sektsioonis näha ei ole, siis võid teha tühjaks kas xroad-signeri cache, või siis tervele X-tee turvaserverile taaskäivituse.

xroad-signer restart ja xroad-signer cache kausta tühjendamine

service xroad-signer stop
mv /var/cache/xroad/*ocsp /tmp
service xroad-signer start

Kui ka pärast seda näha ei ole, siis on järelikult seadistamisega midagi nihu.

HSM LAN

Kirjatüki HSM LAN tugi on tehtud Utimaco SecurityServer Se Gen2 LAN seadme näitel.

Kuna Utimaco HSM seadme initsialiseerimine ja seadistamine on pisut keerulisem võrreldes HSM USB seadmega, siis seda peatükki hetkel ei käsitleta.

NB! Utimaco SecurityServeri jaoks vajaliku faili saad kas:

  • HSMi tarnija / maaletooja käest
  • Utimaco portaalis, kuhu on vaja ennast eelnevalt registreerida
  • sõbra käest, kellel ka sama HSM on. :)

Paigalda opensc pakk

sudo apt-get install opensc

Utimaco jaoks on vaja paigaldada näidiskonfiguratsioonifail /etc/utimaco/ kausta.

sudo mkdir /etc/utimaco/

Kopeeri sinna Utimaco Security Server zip failist näidiskonfiguratsioon - cs_pkcs11_R2.cfg.

Ava see endale sobiva tekstiredaktoriga (nt nano või vim vmt) ja tee vastavad muudatused:

Konfiguratsioonimuudatused

Slotide arv

Kuna X-tee kuvab kõik saadaolevad slotid korraga ette, siis tasuks seda numbrit hoida nii väike kui võimalik ja nii suur kui vajalik.

Kui mõni slot on initsialiseerimata, siis seda ka kasutusele võtta pole võimalik.

# Maximum number of slots that can be used
SlotCount = 3

CryptoServer IP

[CryptoServer]
# Device specifier (here: CryptoServer is CSLAN with IP address 192.168.0.1)
Device = 192.168.0.2
Kui kasutad klasterdatud lahendust, siis veendu, et Device oleks kujul: 
#Device = { 192.168.0.2 192.168.0.3 }

Klasterdamise juures tuleb määrata ka FallbackInterval, mis määrab millisekundites aja, mis hetkel teise klastri HSMi liikme poole pöördutakse. Kõik liikmed on Device loetelu järjekorras, st mingit muud eelistust ei tehta.

# Configures load balancing mode ( == 0 ) or failover mode ( > 0 )
FallbackInterval = 0

Ühendus HSMiga

Veendu, et saad HSMile ligi ja näed seal peal olevat informatsiooni.

# pkcs11-tool --module /usr/lib/libcs_pkcs11_R2.so -L

Näiteks võiks tulemus olla midagi sellist:

Available slots:
Slot 0 (0x0): 192.168.0.2 - SLOT_0000
  token label        : Sinu-test-slot
  token manufacturer : Utimaco IS GmbH
  token model        : CryptoServer
  token flags        : rng, login required, PIN initialized, token initialized, other flags=0x240
  hardware version   : 5.1
  firmware version   : 2.1
  serial num         : Se52    CS######
Slot 1 (0x1): 192.168.0.2 - SLOT_0001
  token label        : Sinu-prod-slot
  token manufacturer : Utimaco IS GmbH
  token model        : CryptoServer
  token flags        : rng, login required, PIN initialized, token initialized, other flags=0x240
  hardware version   : 5.1
  firmware version   : 2.1
  serial num         : Se52    CS######
Slot 2 (0x2): 192.168.0.2 - SLOT_0002
  token state:   uninitialized

Mooduli ja X-tee tarkvara ühendamine

Vajaliku draiveri leiad jällegi SecurityServer.zip faili seest. Kopeeri libcs_pkcs11_R2.so fail /usr/lib/ kausta.

Vastav juhtprogramm (driver ehk .so fail) tuleb ette anda /etc/xroad/devices.ini failis.

Sinna tuleks kirjutada näiteks:

[utimaco]
library = /usr/lib/libcs_pkcs11_R2.so

Seejärel tuleb teha X-tee signer teenusele restart:

sudo service xroad-signer restart

Kui pärast xroad-signer teenuse restarti HSMi veebiliideses Keys and Certificates sektsioonis näha ei ole, siis võid teha tühjaks kas xroad-signeri cache, või siis tervele X-tee turvaserverile taaskäivituse.

xroad-signer restart ja xroad-signer cache kausta tühjendamine

service xroad-signer stop
mv /var/cache/xroad/*ocsp /tmp
service xroad-signer start

Kui ka pärast seda näha ei ole, siis on järelikult seadistamisega midagi nihu.

Lisatarkvara paigaldus

Vastavalt soovidele ja vajadustele on mõistlik paigaldada ka lisatarkvara:

Serveri koormuse jälgimine

sudo apt-get install htop

Xroad-monitor pakett paigaldab x-tee päringute ja koormuse jälgimiseks vajaliku tarkvara.

sudo apt-get install xroad-monitor

X-tee võtmed, sertifikaadipäringud ja sertifikaadid

Test- ja arendus-x-teel on lubatud kasutada ka ainult softTokenit võtmete ja sertifikaadipäringute tegemiseks ning sertifikaatide hoiustamiseks. Soovitus on siiski võimaluse korral vähemalt test-süsteemis kasutusele võtta ka see sama HSM (teine partitsioon ehk slot), et välistada HSMI (mitte-)kasutamisest tingitud anomaaliaid ja/või vigu.

eesti keeles inglise keeles faililaiend
võti key .key
sertifikaadipäring certificate request .csr
seritifikaat certificate .crt

Autentimissertifikaat

Autentimissertifikaat (auth) tõendab seda, et te olete see, kes te väidate ennast olema. Auth sertifikaat on vajalik genereerida softToken'iga ehk tarkvaralise mooduliga, mis on X-teesse seadistatud juba paigaldusel.

Kui sa juba pole teinud, siis nüüd on õige aeg softToken lukust lahti teha! Selleks sisesta softTokeni PIN kood, mille seadistasid turvaserveri(!) initsialiseerimisel. Seejärel vajuta softTokeni peale ning siis "Generate Key".

Xteev6-softtoken-genkey.png

Sisesta endale sobiv nimi ning vajuta OK.

Xteev6-softtoken-genkey2.png

Vali vastloodud key ning vali "Generate CSR". Avanenud aknast vali kindlasti Usage kastist "auth". Certification Service peaks tulema automaatselt vastavalt keskkonnale (hint: konfiguratsiooniankur). CSR formaat meelepäraselt PEM või DER.

Xteev6-softtoken-gencsr.png

Seejärel salvesta saadud CSR.

Kui tahad ka e-templi (sign) sertifikaadi kohe teha, siis liigu edasi järgmise punkti juurde. Kui aga ei, siis mine täida SK.ee lehel avaldus sertifikaadi saamiseks.

HSMiga võtmete ja sertifikaadipäringute genereerimine

See punkt eeldab, et HSM on täielikult seadistatud ja kasutusel. Punkt on ühine, vahet ei ole, kas kasutusel olev HSM on ühendatud PCI-E, USB või LAN liidesega.

Signeerimissertifikaat ehk e-tempel

Algus on sama softTokeniga auth võtme genereerimisele - erinev on see, et loetelust tuleb valida (ja lahti teha) õige HSMi slot (partitsioon).

Utimaco HSM annab artikli kirjutamise hetkel välja kõik kasutusel olevad slotid kõikidele, kes kasutavad ja inimene ise peab tegema õige valiku, missugune slot lahti lukustada. Praegu ei ole ka võimalust, et seda piirata (nt testis kuvada ainult test-sloti vmt).

Jällegi - vali sobiv nimi (label), vajuta "OK". Seejärel "Generate CSR" ning saadud CSR salvesta, et pärast üles laadida SK.ee portaali.

Sertifikaatide saamine/väljastamine

Avaldus sertifikaatide saamiseks tuleb täita Sertifitseerimiskeskuse veebilehel - https://sk.ee.

Kui SK otsustab väljastada sertifikaadid, annavad nad sellest e-maili teel sulle automaatselt teada. Sealt on võimalik ka vastloodud sertifikaat endale alla laadida.

Seejärel on vaja saadud sertifikaat/sertifikaadid importida X-tee keskkonda. Selleks mine jälle Keys and Certificates menüüsse ja vali nupp "Import Certificates".

Vali saadud fail ning lae see üles. Edukal impordil paigaldatakse sertifikaat õigesse kohta.

Test X-tee sertifikaadi lisaliigutus

Test (ja tõenäoliselt ka arendus) X-teel tuleb sertifikaadiga teha veel üks lisaliigutus.

Nimelt - sertifikaat tuleb käsitsi üles laadida demo.sk.ee keskkonda - https://demo.sk.ee/upload_cert/index.php

Kopeeri kasti enda saadud sertifikaat, vali Status: Good ja lae üles.

Jällegi, tee xroad-signerile restart. Kui see ei aita, tühjenda xroad-signer cache ja kui see ka ei aita, tee turvaserverile taaskäivitus. Ja kui see ka ei aita, siis pöördu RIA poole abi saamiseks.

Teadaolevalt toodangu X-tee sertifikaatide puhul analoogset lisaliigutust teha vaja pole.





Andmejälgija ehk AJ paigaldus

Kirjatüki autor võtab endale vaba voli ilukirjanduslikult selgitada Andmejälgija vajalikkust:

Andmejälgija kasutusele võtmine on vajalik siis, kui töödeldakse isikuandmeid ja jagatakse välja kolmandale osapoolele. Kui kodanik Aabel Aabits ise küsib nt SAISist kooli sisseastumise hetkel EISi kaudu andmeid, siis see ei kuulu andmejälgija skoopi. Jah, kui Politsei- ja Piirivalveamet või Maanteeamet teeb kodaniku Aabel Aabits kohta päringu (ilma minupoolse osaluseta) EISist, siis see on kolmandale osapoolele jagamine ja need päringud võiksid olla andmejälgija kaudu kodanikule nähtavad.

Lühidalt öeldes: kui X-tee turvaserver on mõeldud ühe asutuse ühe infosüsteemi jaoks, siis võib AJ paigaldada X-tee turvaserveri "sisse".

Kui asutus pakub X-tee teenuseid teistele asutustele ja/või ühe X-tee turvaserveri sees on mitu infosüsteemi, siis [| Täiendatud tehnilise kontseptsiooni punkti 6.2] alusel saab kirjatüki autor aru, et vaja on AJ paigaldada eraldi serverisse.

AJ võib soovi korral paigaldada ka konkreetsesse rakendusserverisse, kui sellel on Java tugi.


Lingid, allikad ja lisalugemist