SSL certificaat omzetten naar Domino kyr bestand

Het wil nog wel eens voorkomen dat je een bestaand SSL certificaat hebt en deze wil gaan gebruiken op je Domino HTTP Server. Een eenvoudige oplossing is natuurlijk om voor de Domino server een Apache of IIS webserver te installeren en SSL verzoeken via een proxy regel door te sturen naar Domino zonder SSL, dan is de hele oefening om een certificaat in Domino te krijgen helemaal niet nodig. Alleen kan deze oplossing niet overal gebruikt worden, of wil men deze niet gebruiken.

Dan zit er niets anders op dan of via de Domino Certificate Admin applicatie een nieuw certificaat aan te vragen bij een provider (vaak gratis binnen een bepaalde periode), of om een bestaand certificaat om te zetten.

Het aanvragen van een certificaat via de Notes applicatie is een standaard procedure die goed beschreven staat in de Administrator Help, en vaak ook bij de leveranciers van SSL certificaten, het omzetten van een Apache of IIS certificaat of importen van een wilcard certificaat is echter niet beschreven en is net iets lastiger.

Er zijn verschillende methodes waarvan ik er hier een beschrijf.

(Deze methode is met de komst van IBM Notes 9.0.1FP2 en de nieuwe kyrtool wat verouderd, lees hier over de nieuwe methode.)

Stap 1.

Open de Server Certificate Administration applicatie (certsrv.nsf), of maak deze aan met gebruik van het certsrv.ntf sjabloon.

Klik vervolgens op Create Key Ring.

certsrv_01

Vul in het “Create Key Ring” scherm alle velden in zodat deze overeen komen met het certificaat dat je wil gaan gebruiken.
Klik vervolgens op de knop “Create Key Ring” onderaan de pagina.
certsrv_02

Als alles goed gegaan is komt er een dialoog met het resultaat.
certsrv_03

Klik OK en kijk vervolgens of het sleutel paar in de opgegeven map staat.
certsrv_04

Tot zo ver is het nog allemaal standaard.
Nu gaan we echter geen “Certificate Request” indienen, want dat hebben we al….
We verlaten Notes nu even.

Stap 2.

Om in stap 3 de certificaten (het persoonlijk certificaat, het root- en eventuele intermediate certificaten goed te kunnen importeren moeten we precies weten wat de namen van de certificaten zijn. Als er geen duidelijke beschrijving mee geleverd is kunnen we de certificaten het beste openen in een internet browser zoals Internet Explorer. In het voorbeeld een oudere versie in XP (VM).

Er zijn verschillende manier van certificaat uitgifte, de ene leverancier stuurt losse bestanden, de andere slechts een bestand waar de overige certificaten in zitten (de hele reeks of chain).
In dit voorbeeld heeft een klant 1 bestand met de extensie pfx.
Start Internet Explorer, klik op Extra > Internet opties > Inhoud.

certsrv_ie01

Klik op de knop Certificaten.

certsrv_ie02

In het venster Certificaten klik je op Importeren.

certsrv_ie03

Klik op volgende en selecteer Bladeren.

certsrv_ie04

Blader naar de map waar de SSL certificaten staan. Verander eventueel bij Bestandstypen de juiste extensie.
In ons geval hebben we de klantnaam even aangepast naar wildcard.demo.pfx, dit zal normaal iets zijn als *.uwbedrijfsnaam.pfx.

certsrv_ie05

Open het bestand.

certsrv_ie06

Klik op volgende.

certsrv_ie07

Geeft het wachtwoord op dat bij de sleutel hoort en zet eventueel een vinkje bij “Deze sleutel als exporteerbaar aanmerken.” en klik op volgende.

certsrv_ie08

Klik op volgende of pas eerst de archief locatie aan indien deze niet goed staat.

certsrv_ie09

Controleer de inhoud en klik op Voltooien.
Als het goed is komt er een melding dat het importeren voltooid is. Klik daar op OK.

certsrv_ie10

Als het goed is zal in het venster Persoonlijk uw certificaat staan. In ons geval is de klantnaam doorgestreept.

certsrv_ie11

Mocht je nu niet een bestand hebben maar losse bestanden dan kan elk bestand geïmporteerd worden. Vaak hebben de root en intermediate certificaten geen wachtwoord, maar de routine is bijna gelijk aan de hier beschreven procedure.

Nu de certificaten in de browser zichtbaar zijn kunnen we kijken hoe de keten er uit ziet en de namen van de labels noteren.

Klik op Weergeven.

certsrv_ie12

In het Certificaat venster klik je op Certificeringspad. Daar kun je zien dat er naast het root certificaat nog een intermediate certificaat aanwezig is. Ook is zichtbaar dat wij het root certificaat nog moeten importeren, maar dat is voor nu niet belangrijk.

Klik op het bovenste certificaat pad en klik op de knop “Certificaat weergeven”.

certsrv_ie13

Noteer de naam achter het label “Verleend aan:”, in dit geval “AddTrust External CA Root” en klik op OK.

Doe dit voor de overige certificeringspaden ook tot aan de laatste regel. In ons geval komt er dus nog een naam bij, “PositiveSSL CA 2”

Deze gegevens hebben wij nodig om bij stap 3 in te vullen.

Mocht het nodig zijn dan kan er vanuit het certificaten venster ook een export gemaakt worden van de certificaten. In ons geval is dit niet nodig dus slaan we deze stap over en gaan naar stap 3.

Stap 3.

Om het bestaande certificaat toe te voegen aan het kyr bestand gebruiken we het programma ikeyman van IBM, o.a. te vinden op ftp://ftp.software.ibm.com/software/lotus/tools/Domino/gsk5-ikeyman.zip.
Dit programma werkt het meest eenvoudig op een 32bits Windows XP omgeving, hoewel er op internet ook meldingen zijn van mensen die het aan de praat hebben gekregen met nieuwere versies van Windows met een oude Java omgeving. Voor deze beschrijving heb ik echter een Windows XP machine gemaakt in VMWare Player.
Pak het bestand gsk5-ikeyman.zip uit.
Open vervolgens een commando prompt (dos venster).
Navigeer op de prompt naar de map waar je de ikeyman bestanden hebt uitgepakt.
In de map staan twee batch bestanden. De eerste is om de paden aan de omgevings-variabelen van Windows toe te voegen.
Type hiervoor de opdracht “gskregmod.bat Add” (zonder aanhalingstekens in) en enter.

certsrv_05

Type vervolgens “runikeyman.bat” om IBM Sleutelbeheer te starten.

certsrv_06

Als het goed is start IBM sleutelbeheer op:

certsrv_07

Kies in het menu voor sleuteldatabase openen en navigeer naar het *.key bestand dat je hebt aangemaakt in stap 1.

certsrv_08

Type het wachtwoord dat in stap 1 is ingevoerd voor het Sleutelring bestand.

Klik in het hoofdvenster onder het kopje Inhoud sleuteldatabase op het keuzeveld en kies “Certificaten van certificaatgever”.

certsrv_09

Je ziet in het venster de certificaten die in het kyr bestand staan dat we hebben aangemaakt in stap 1.
Waarschijnlijk staan de certificaten die we in stap 2 genoteerd hebben hier niet bij, en zullen we deze nu moeten toevoegen. Klik daarvoor op de “Toevoegen” knop.

certsrv_10

Kies in het toevoegen venster op het juiste gegevenstype, in ons geval hebben wij *.CER bestanden van de leverancier gekregen en kiezen we voor “Binaire DER-gegevens”. Blader naar de locatie van de certificaten en klik op OK. In ons voorbeeld importeren we het root certificaat van AddTrust.

In het volgende venster hebben we dan de naam nodig die wij in stap 2 genoteerd hebben. Het is belangrijk om dit exact over te nemen.

certsrv_11

Klik op OK.
Doe het zelfde voor de eventuele intermediate certificaten.
Het resultaat is zichtbaar in het venster van IBM Sleutelbeheer:

certsrv_12

Als laatste moeten wij nog het persoonlijke certificaat toevoegen. Klik daarvoor in IBM Sleutelbeheer op het meerkeuzevak onder Inhoud sleuteldatabase op “Persoonlijke certificaten” en klik op de knop “Importeren”.
Navigeer in het “Sleutel importeren” dialoog venster naar het persoonlijke certificaat. In ons geval was het certificaat niet zichtbaar in het bladervenster omdat bij bestandsnaam *.p12 stond. Dit is echter weg te halen zodat wel alle bestanden zichtbaar worden en wij het “wildcard.demo.nl.pfx” sleutelbestand kunnen kiezen.

certsrv_13

Klik op OK. Ook hier wordt weer gevraagd om het wachtwoord van de sleutel. Vul dit in en klik op OK.
Wanneer alles goed is gegaan ze je in het venster het certificaat dat net is ingevoerd.

certsrv_ie15

Sla het sleutelbestand op als Sleutelringbestand (*.kyr), overschrijf daarbij het eerder aangemaakt sleutelbestand. Er wordt gevraagd een wachtwoord in te voeren, en eventueel kan de geldigheidstermijn daarvan ingesteld worden.
certsrv_ie16

Klik OK, deze stap is daarmee afgerond.

Stap 4.

Wij hebben in de voorgaande stappen een sleutelpaar aangemaakt, en de certificaten toegevoegd. Om zeker te zijn dat Domino de sleutels kan lezen kunnen we deze nogmaals openen in IBM Notes met de “Server Certificate Admin”.

Klik daarvoor in link in het menu op “View & Edit Key Rings”
Kies boven in het menu voor de knop “Select Key Ring to Display”

Type het volledige pad in naar het sleutelringbestand dat we in de eerdere stappen hebben gemaakt en aangepast.
Geef het wachtwoord in en klik OK.
Als alles goed is gegaan zien we nu bij Site Certificates een KeyPair en ons persoonlijke certificaat.
Bij Certificate Authorities moeten het root- en intermediate certificaten staan die we eerder hebben geïmporteerd.

certsrv_ie17
Als dit klopt kunnen we het *.kyr en bijbehorend *.sth bestand kopiëren naar de data map van de Domino Server.

In de configuratie van de Domino server dient de naam van het sleutelbestand natuurlijk overeen te komen met de bestandsnaam, maar als je al zo ver bent gekomen zal dat geen probleem mogen opleveren.

Herstart de HTTP taak en als het goed is heb je een werkend SSL certificaat. Controleer dit eventueel door op de Domino console het commando “Tell HTTP show security” in te geven.

Mocht je er ondanks deze instructies niet uitkomen kun je altijd contact met ons opnemen. Of plaats je reactie onder dit bericht.

Overige bronnen:
https://www.sslcertificaten.nl/
http://www.ibm.com/

Geplaatst in Beheer, Domino en getagd met , , , , , , , , , , .