Als Grid Computing bezeichnet man die Verwendung von Ressourcen wie Rechenleistung, Speicherplatz und Services über Institutions- und Organisationsgrenzen hinweg. Dazu sind meist Zertifikate und spezielle Softwarekomponenten (sogenannte Middleware, z.B. Globus Toolkit und UNICORE) notwendig.
Grid-Ressourcen am RRZE und eingesetzte Middleware
Aufgrund mangelnder Nachfrage werden am RRZE seit Jahren keine Grid-Gateways mehr lokal betrieben.
Das Globus Toolkit und UNICORE sind zwei unterschiedliche Ansätze für im HPC-Bereich häufig eingesetzte Middleware-Komponenten.
Kurzhinweise zu ausgewählten Grid-Softwarekomponenten:
Globus Toolkit
Soll das Grid-Zertifikat nur für die SSH-Authentifizierung verwendet werden, so kann auf der Clientseite GSI-SSHTerm verwendet werden, wozu kein Hostzertifikat benötigt wird. Nähere Informationen zur GSI-SSHTerm finden sich auf der GSI-SSHTerm-Sourceforce-Projektseite. GSI-SSHTerm ist eine platformübergreifende Java-Webstart Applikation und benutzt ihr Zertifikat aus dem $HOME/.globus
-Verzeichnis.
UNICORE
Weitere Anwendungen
Zusammenfassung der prinzipiellen Schritte zur Nutzung von Grid-Ressourcen
- Grid-Zertifikat besorgen (s.o.)
- Account auf den entsprechenden Systemen besorgen (sofern noch nicht vorhanden)
- Accounts für die HPC-Systeme am RRZE und LRZ können über die Benutzerberatung des RRZE beantragt werden.
- Informationen für andere Rechenzentren kann Ihnen evtl. die HPC-Beratung des RRZE geben.
- Verknüpfung zwischen Account und Zertifikat herstellen lassen. Hierzu sind folgende Angaben nötig:
- Accountnummer,
- Angaben zum Benutzer (Name, Telefon, …)
- exakter DN, so wie er im Zertifikat enthalten ist, z. B. Ausgabe von
openssl x509 -noout -subject -in cert.pem
.
Grid-Zertifikate
Die Authentifikation und Autorisierung der im Grid-Bereich tätigen Personen und Ressourcen erfolgt fast immer über Zertifikate und eine sog. Public Key Infrastructure (PKI).
Bitte verwechseln Sie Grid-Zertifikate nicht mit den anderen Zertifikatstypen, die Sie über das RRZE erhalten können, wie z. B. Nutzerzertifikaten für E-Mail oder solche für Webserver. Falls Sie ein derartiges Zertifikat benötigen, sind Sie hier leider nicht auf der richtigen Seite.
Hintergrundinformationen zu Grid-Zertifikaten
Für Deutschland sind die DFN-CERT Services GmbH und das Grid Computing Centre Karlsruhe (GridKa) Mitglied der EUGridPMA. Diese betreiben eine sog. Certification Authority (CA), die berechtigt ist, eine Zertifizierung auf Grundlage der EUGridPMA-Vorgaben vorzunehmen. Um ein elektronisches Zertifikat verlässlich mit einer Person oder einer Ressource zu identifizieren, ist es notwendig, dass der Zertifikatsinhaber bzw. ein Ressourcenverantwortlicher persönlich bei einer dieser CAs erscheint und sich mittels eines Ausweispapiers authentifiziert. (Vgl. Abschnitt 3.2.3 der Grid Policy CP/CPS Dokumente der DFN PKI.) Um diesen Vorgang für die Nutzenden zu vereinfachen und ihnen den Weg nach Hamburg bzw. Stuttgart oder Berlin zu ersparen, wurden sog. Registration Authorities (RA) eingerichtet, die diesen Vorgang im Auftrag der CAs übernehmen können. Das RRZE ist akkreditiert, eine Grid-RA für den DFN-CERT zu betreiben und Zertifikatsanträge von Angehörigen der Universität Erlangen-Nürnberg entgegenzunehmen.
Schritte zu einem Grid-Zertifikat
Für Angehörige der Universität Erlangen-Nürnberg gilt folgendes Verfahren, um ein Grid-Zertifikat zu bekommen:
- Privaten Schlüssel und Zertifikatsantrag generieren.
- Termin bei der Grid-RA des RRZE vereinbaren.
- Persönliche Vorstellung bei der Grid-RA (Akkreditierungsschreiben, Zertifikatsantrag und Personalausweise/Reisepass mitbringen) zur Identitätsüberprüfung.
- Das signierte Zertifikat erhalten Sie dann einige Tage später per E-Mail von der DFN-CA.
Die einzelnen Schritte sind im Folgenden Punkt für Punkt ausführlich beschrieben:
Erzeugung eines Zertifikatsantrags
Falls Sie eine bestimmte Grid-Middleware, wie z.B. das Globus Toolkit oder UNICORE, einsetzen, können Sie damit prinzipiell auch den passenden Request erzeugen. Achten Sie jedoch darauf, dass die Namensstruktur und der daraus abgeleitete Distinguished Name (DN) exakt stimmt, da die Anträge sonst nicht bearbeitet werden können.
Der private Schlüssel kann unter gewissen Umständen auch direkt in modernen Webbrowsern generiert werden. Die DFN-Webseiten unterstützen diese Vorgehensweise; das RRZE kann davon jedoch nur strikt abraten, da das Extrahieren des privaten Schlüssels aus dem Webbrowser immer mit erheblichen Komplikationen verbunden ist. Im Fall von Problemen kann die HPC-Gruppe des RRZE nur für die unten beschriebene Vorgehensweise via OpenSSL Unterstützung bieten.
Erzeugung eines RSA-Schlüsselpaares
Dieser Schritt kann entfallen, wenn Sie bereits einen geeigneten privaten Schlüssel besitzen.
Persönliches Zertifikat | Maschinen-Zertifikat |
---|---|
openssl genrsa -des3 -out PrivateUserKey.pem 2048 |
openssl genrsa -out PrivateHostKey.pem 2048 |
Sie werden nach einem Passphrase für Ihren neuen privaten Schlüssel gefragt. Dieses Passwort sollte den Anforderungen an ein sicheres Passwort genügen (mind. 8 Zeichen, Mischung aus Buchstaben, Zahlen und Sonderzeichen, etc.). Die Eingabe wird ein zweites Mal benötigt, um die korrekte Eingabe zu verifizieren. | Der private Schlüssel von Maschinenzertifikaten kann/darf nicht durch ein Passwort geschützt werden, da Dienste später automatisch starten sollen. Falls Sie das Passwort von einem privaten Schlüssel entfernen wollen, so kann dies mit dem folgenden Befehl erfolgen: openssl rsa -in private-key-with-passwd.pem > private-key-without-passwd.pem |
Der private Schüssel ermöglicht Ihre Identifikation im Grid. Das bedeutet, dass eine Person, die in den Besitz Ihres privaten Schlüssels gelangt, sich für Sie ausgeben kann. Stellen Sie deshalb unbedingt sicher, dass der private Schlüssel ausschließlich Ihnen allein zugänglich ist. Auf Linux-Systemen etwa sind alle Zugriffsrechte für group oder other zu löschen. Geben Sie das Passwort für Ihren privaten Schlüssel an keine anderen Personen weiter und sorgen Sie dafür, dass es auch nicht aus Versehen in falsche Hände geraten kann.
Erstellung des Certificate Signing Request im PKCS#10 Format
In diesem Schritt wird ein eindeutiger Identifikator, der sog. Distinguished Name (DN), abgefragt. Die meisten Teile der Namensstruktur sind dabei fest vorgegeben. Laden Sie daher die angepasste OpenSSL-Konfigurationsdatei herunter, so dass bereits die korrekten Vorgaben gesetzt sind. Sollten Sie bei der Eingabe einzelner Namenbestandteile unsicher sein, wenden Sie sich bitte an die HPC-Beratung.
Persönliches Zertifikat | Maschinen-Zertifikat |
---|---|
Angepasste Konfigurationsdatei rrze-grid-ra-openssl-user.cnf | Angepasste Konfigurationsdatei rrze-grid-ra-openssl-host.cnf |
openssl req -config rrze-grid-ra-openssl-user.cnf -new -key PrivateUserKey.pem -out usercert_request.pem |
openssl req -config rrze-grid-ra-openssl-host.cnf -new -key PrivateHostKey.pem -out hostcert_request.pem |
Beantworten Sie die Fragen zum DN wie folgt:
|
Beantworten Sie die Fragen zum DN wie folgt:
|
Registrierte Lehrstuhlnamen (ohne Umlaute)
- Erlangen Centre for Astroparticle Physics
- Lehrstuhl für Informatik 2
- Lehrstuhl für Informatik 3
- Lehrstuhl für Strömungsmechanik
- Lehrstuhl für Systemsimulation
- Physikalisches Institut 2
- Regionales Rechenzentrum Erlangen
- für weitere Namen bitte bei support-hpc@fau.de nachfragen!
Hinweis: Zertifikatsanträge, die als primäre E-Mail-Adresse keine universitäre E-Mail-Adresse enthalten, werden nicht bearbeitet! Auf Wunsch können im Rahmen des Genehmigungsprozesses jedoch noch weitere E-Mail-Adressen im Zertifikat eingetragen werden, wenn diese auf dem Akkreditierungsschreiben vermerkt sind.
Hinweis: Das Feld „Organizational Unit Name“ ist verpflichtend; verwenden Sie hierfür ausschließlich mit der HPC-Gruppe abgestimmte Einrichtungsnamen und Schreibweisen.
Überprüfung des Certificate Signing Request
Die Angaben im CSR können Sie mit folgendem Befehl überprüfen:
Persönliches Zertifikat | Maschinen-Zertifikat |
---|---|
openssl req -noout -text -in usercert_request.pem |
openssl req -noout -text -in hostcert_request.pem |
openssl req -noout -subject -in usercert_request.pem |
openssl req -noout -subject -in hostcert_request.pem |
Entscheidend ist hierbei die Subject-Zeile mit dem DN. Die ersten Bestandteile müssen C=DE, O=GridGermany, OU=Universitaet Erlangen-Nuernberg
sein.
Übertragung des Certificate Signing Request
Persönliches Zertifikat | Maschinen-Zertifikat |
---|---|
Rufen Sie in einem Web-Browser das DFN-Webformular der Grid CA der Uni-Erlangen auf und gehen Sie dort den Karteireiter Serverzertifikat – ungeachtet dessen, dass Sie ein Benutzerzertifikat beantragen wollen. Bitte verwenden Sie nicht den Kartenreiter Nutzerzertifikat, da in diesem Fall der private Schlüssel im Webbrowser generiert wird und nur sehr umständlich nach erfolgreichem Import des Zertifikats extrahiert werden kann! |
Rufen Sie in einem Web-Browser das DFN-Webformular der Grid ServerCA der Uni-Erlangen auf und wählen Sie den Karteireiter Serverzertifikat aus. |
Laden Sie nun den eben erstellen Zertifikatsantrag zum DFN hoch, indem Sie auf Browse/Durchsuchen klicken und dort die Dateiusercert_request.pem auswählen. |
Laden Sie nun den eben erstellen Zertifikatsantrag zum DFN hoch, indem Sie auf Browse/Durchsuchen klicken und dort die Dateihostcert_request.pem auswählen. |
Wählen Sie als Zertifikatsprofil User aus. |
Wählen Sie als Zertifikatsprofil Grid Server aus. |
Die PIN, die auf diesem Formular abgefragt wird, kann frei gewählt werden und hat nichts mit dem Passphrase Ihres privaten Schlüssels zu tun. | Die PIN, die auf diesem Formular abgefragt wird, kann frei gewählt werden und hat nichts mit dem Passphrase Ihres privaten Schlüssels zu tun. Auch für Maschinenzertifikate müssen Sie hier eine PIN vergeben. |
Vervollständigen Sie noch fehlende Angaben und folgen Sie den Hinweisen auf dem Web-Formular. Drucken Sie am Ende den Antrag auf Papier aus.
Überprüfung des Fingerprints
Persönliches Zertifikat | Maschinen-Zertifikat |
---|---|
openssl |
openssl rsa -in PrivateHostKey.pem |
alternativ
Persönliches Zertifikat | Maschinen-Zertifikat |
---|---|
openssl |
openssl req -in |
Durch diese Prüfsumme kann sichergestellt werden, dass bei der Übermittlung an die RA/CA keine Übertragungsfehler aufgetreten sind.
Persönliche Vorstellung
Die persönliche Überprüfung wird der DFN-CA gemeldet. Erst dann kann Ihr Request signiert werden. Dieser Vorgang kann unter Umständen mehrere Tage in Anspruch nehmen.
Erhalt des Zertifikats
cert.pem
und löschen Sie alle Zeilen bis auf den Bereich unter „Ihr Zertifikat:“ von-----BEGIN CERTIFICATE-----
bis
-----END CERTIFICATE-----
Kontrollieren Sie mit Hilfe des Befehls openssl x509 -in cert.pem -text
, ob der DN in der Subject-Zeile korrekt ist. Der Fingerprint, der von openssl x509 -in cert.pem -pubkey | openssl rsa -pubin -text -noout | openssl sha1 -c
ausgegeben wird, muss auch wieder mit dem Fingerprint übereinstimmen, den Sie im Zusammenhang mit dem CSR bestimmt haben.
Das signierte Zertifikat (cert.pem
) können Sie nun im Grid für Ihre Authentifizierung nutzen. Die Gültigkeitsdauer für DFN-Zertifikate beträgt standardmäßig ein Jahr und muss danach auf die beschriebene Weise erneuert werden.
Konvertierung des Zertifikats in einen pkcs12-Keystore
openssl pkcs12 -export -in cert.pem -inkey PrivateUserKey.pem -name "Ihr Name" -out keystore.p12
Wenn im Keystore die komplette Zertifikatskette aufgenommen werden soll, so müssen Sie zunächst die entsprechenden Zertifikate der DFN-CA im PEM-Format herunterladen. Den entsprechenden Link finden Sie weiter unten. Wenn Sie root-Rechte auf Ihren Maschinen haben, so können Sie das Wurzelzertifikat in /etc/ssl/certs
allgemein installieren, anderenfalls können Sie auch ein beliebiges anderes Verzeichnis verwenden.
Zunächst muss dann aber noch das Zertifikat über den Hash-Wert zugänglich gemacht werden: (1 bzw. 2 Befehlszeilen)
cd /etc/ssl/certs # OPTIONAL
ln -s dfn-pca-grid.pem `openssl x509 -hash -noout -in dfn-pca-grid.pem`.0
Nun können Sie den Keystore mit der gesamten Zertifikatskette erzeugen:
openssl
pkcs12 -export -in cert.pem -inkey PrivateUserKey.pem -name "Ihr Name"
-out keystore-chain.p12 -chain [-CApath dir-with-hash-files]
Die Angabe von -CApath dir
kann entfallen, wenn das Zertifikat der DFN-Zertifizierungsstelle in /etc/ssl/certs
abgelegt wurden.
Ablage der Zertifikate für die Benutzung
- für Globus: im Verzeichnis
$HOME/.globus
- GSI-SSHTerm: kann entweder auf das
$HOME/.globus
-Verzeichnis oder auch auf einen pkcs12-Keystore zugreifen; es wird Java/Java-Webstart benötigt. - im UNICORE-Client: bei „User Settings“ / „Keystore Editor“
- im Web-Browser: bei „Einstellungen“ / „Verschlüsselung“ oder „Zertifikate“
- für mutt kann der Keystore via
smime_keys
zugänglich gemacht werden (vgl. Anleitung im persönlichen BLOG von Dr. Zeiser)
Quellen für die Wurzelzertifikate des DFN
openssl x509 -fingerprint -noout [-md5|-sha1] -in xyz.pem
überprüfen.