Digitales Zertifikat mit OpenSSL erstellen

Mit OpenSSL können Sie digitale Zertifikate erstellen, die dann in Tests verwendet werden.

Vorbereitende Schritte

OpenSSL kann über das OpenSSL-Projekt unter http://www.openssl.org/ heruntergeladen werden.

Informationen zu diesem Vorgang

So erstellen Sie ein digitales Zertifikat mit OpenSSL

Vorgehensweise

  1. Erstellen Sie eine Zertifizierungsstelle. Zu Testzwecken übernimmt diese Zertifizierungsstelle die Funktion einer anerkannten Zertifizierungsstelle im Internet, z. B. VeriSign. Mit dieser Zertifizierungsstelle werden alle Zertifikate signiert, die Sie beim Testen verwenden möchten.
    1. Erstellen Sie eine Zertifikatanforderungsdatei. Im "Subjekt" (-subj) wird der Benutzer des Zertifikats beschrieben. Geben Sie Dummywerte (wie gezeigt) ein. Durch die folgende Befehlszeile wird abcdefg als Kennwort für das Zertifikat festgelegt.

      openssl req -passout pass:abcdefg -subj "/C=US/ST=IL/L=Chicago/O=IBM Corporation/OU=IBM Software Group/CN=Rational Performance Tester CA/emailAddress=rpt@abc.ibm.com" -new > waipio.ca.cert.csr

    2. Erstellen Sie eine Schlüsseldatei (waipio.ca.key), um den privaten Schlüssel zu speichern. Hierdurch wird der Kennwortschutz von der Zertifikatanforderungsdatei entfernt, sodass Sie das Kennwort nicht bei jedem Signieren eines Zertifikats erneut eingeben müssen. Da der Kennwortschutz entfernt wurde, sollten Sie die Zertifikatanforderungsdatei nur zu Testzwecken verwenden.

      openssl rsa -passin pass:abcdefg -in privkey.pem -out waipio.ca.key

    3. Erstellen Sie anhand der Zertifikatsanforderung ein digitales Zertifikat im X.509-Format. Durch die folgende Befehlszeile wird ein Zertifikat erstellt, das mit dem privaten Schlüssel der Zertifizierungsstelle signiert ist. Das Zertifikat ist 365 Tage gültig.

      openssl x509 -in waipio.ca.cert.csr -out waipio.ca.cert -req -signkey waipio.ca.key -days 365

    4. Erstellen Sie eine PKCS#12-codierte Datei, die das Zertifikat und den privaten Schlüssel enthält. Durch die folgende Befehlszeile wird default als Kennwort für die P12-Datei festgelegt. In Rational Performance Tester wird das Kennwort default standardmäßig für alle PKCS#12-Dateien verwendet.

      openssl pkcs12 -passout pass:default -export -nokeys -cacerts -in waipio.ca.cert -out waipio.ca.cert.p12 -inkey waipio.ca.key

    Sie verfügen nun über ein Zertifizierungsstellenzertifikat (waipio.ca.cert), das auf einem zu testenden Web-Server installiert werden kann, und über eine Datei für private Schlüssel (waipio.ca.key), die Sie zum Signieren von Benutzerzertifikaten verwenden können.
  2. Erstellen Sie ein digitales Zertifikat für einen Benutzer.
    1. Erstellen Sie eine Zertifikatanforderungsdatei für den Benutzer. Legen Sie abc als Startkennwort fest. Sie können darüber hinaus ein geeignetes Subjekt angeben.

      openssl req -passout pass:abc -subj "/C=US/ST=IL/L=Chicago/O=IBM Corporation/OU=IBM Software Group/CN=John Smith/emailAddress=smith@abc.ibm.com" -new > johnsmith.cert.csr

    2. Erstellen Sie eine Datei für private Schlüssel ohne ein Kennwort.

      openssl rsa -passin pass:abc -in privkey.pem -out johnsmith.key

    3. Erstellen Sie ein neues X.509-Zertifikat für den neuen Benutzer, signieren Sie es digital mit dem privaten Schlüssel des Benutzers, und zertifizieren Sie es mit dem privaten Schlüssel der Zertifizierungsstelle. Durch die folgende Befehlszeile wird ein Zertifikat erstellt, das 365 Tage gültig ist.

      openssl x509 -req -in johnsmith.cert.csr -out johnsmith.cert -signkey johnsmith.key -CA waipio.ca.cert -CAkey waipio.ca.key -CAcreateserial -days 365

    4. Optional: Erstellen Sie eine DER-codierte Version des öffentlichen Schlüssels. Diese Datei enthält nur den öffentlichen, jedoch nicht den privaten Schlüssel. Da sie den privaten Schlüssel nicht enthält, kann die Datei gemeinsam genutzt werden und muss nicht mit einem Kennwort geschützt sein.

      openssl x509 -in johnsmith.cert -out johnsmith.cert.der -outform DER

    5. Erstellen Sie eine PKCS#12-codierte Datei. Durch die folgende Befehlszeile wird default als Kennwort für die P12-Datei festgelegt.

      openssl pkcs12 -passout pass:default -export -in johnsmith.cert -out johnsmith.cert.p12 -inkey johnsmith.key

    Wiederholen Sie diesen Schritt, um so viele digitale Zertifikate zu erstellen, wie zum Testen benötigt werden. Bewahren Sie die Schlüsseldateien sicher auf, und löschen Sie sie, wenn sie nicht mehr benötigt werden. Löschen Sie nicht die Zertifizierungsstellendatei für private Schlüssel. Sie benötigen diese Schlüsseldatei zum Signieren von Zertifikaten.

Ergebnisse

Sie können nun das Zertifizierungsstellenzertifikat (waipio.ca.cert) in WebSphere installieren. Darüber hinaus haben Sie die Möglichkeit, ein Benutzerzertifikat speziell für den Web-Server zu erstellen und es in WebSphere zu installieren.

Sie können Benutzerzertifikate einzeln zum Aufzeichnen von Tests verwenden. Zur Verwendung der Benutzerzertifikate (johnsmith.cert.p12) während der Testbearbeitung und -wiedergabe müssen Sie sie im ZIP-Format zu einer Datei mit der Erweiterung .rcs komprimieren. Hierdurch wird ein Speicher für digitale Zertifikate erstellt. Weitere Informationen zu Speichern für digitale Zertifikate finden Sie unter Speicher für digitale Zertifikate erstellen. Sie können Benutzerzertifikate auch in Ihren Web-Browser importieren, um sie interaktiv in Ihrer Umgebung zu testen.


Feedback