November 3rd, 2006
Etoken unter Linux initialisieren
Die folgenden Schritte sind notwendig um einen Alladin-Etoken unter Linux zu initialisieren. Ein gültiger Private-Key und ein gültiges Zertifikat müssen in Form von .pem-Dateien vorliegen. Es ist zu beachten, daß der Etoken mit dieser Initialisierung nur unter Linux funktioniert, die durch diesen Prozess erstellte Struktur kann nicht von den Tools unter Windows verwendet werden.
Es ist ratsam, den Private Key nach dem Aufspielen des Etokens zu löschen oder zumindest sehr sicher aufzubewahren.
# löschen und initialisieren der Karte
pkcs15-init -EC –no-so-pin -T -l “mfrankl”
Hier ist nur die User-Pin einzugeben
# Passwoerter setzen
pkcs15-init -P -T -l “mfrankls pin” –auth-id 01
# Private Key importieren
pkcs15-init -S mfrankl-key.pem –auth-id 01
# Zertifikat importieren
pkcs15-init -X mfrankl-cert.pem –auth-id 01

November 8th, 2006 at 7:44 pm
Nur ein paar Anmwerkungen dazu:
- Bei “Private Key importieren” fehlt noch die Option “–split-key”
- Wenn die Angaben kopiert werden, muss jeweils der langen Strich durch zwei “-” ersetzt werden. Wird warscheinlich von Wordpress so “übersetzt”.
-Der pcscd Deamon muss gestoppt werden, damit es läuft
-in der /etc/opensc/opensc.conf muss die Zeile
reader_drivers = openct, pcsc, ctapi;
ggf. durch
reader_drivers = openct, ctapi;
ersetzt werden
-Vor den obigen Befehlen muss folgendes getan werden:
sudo openct-control init
sudo openct-control status (Hier sollte der Token aufgelistet werden)
eval `ssh-agent`
ssh-add -s0 (0 ggf durch den entsprechenden Slot ersetzen)
November 9th, 2006 at 11:20 am
Was noch fehlt: für openct gibt es eine eigene Benutzergruppe. Wenn man als Benutzer “openct-control status” nicht ausführen darf, muss man sich noch in der entsprechenden Gruppe eintragen. Der Gruppenname ist am Verz. /var/run/openct/ zu sehen.
Der “Fehler” mit dem pcscd-Treiber für Openct ist hier beschrieben:
http://www.opensc-project.org/faq.html
Eine weitere Beschreibung für die eToken-Einrichtung gibt es hier:
http://www.acodedb.com/73/how-to-use-an-aladdin-etoken-pro-with-opensc-openct-and-openssh-portable/
November 9th, 2006 at 11:27 am
Ach ja: auf der “Gegenseite” muss im Userverzeichniss unter ~/.ssh/authorized_keys der Schlüssel abgelegt werden, der mit
ssh-keygen -D0
ausgelesen werden kann.
Die Schlüsselkonvertierung geht folgendermassen:
openssl pkcs12 -export -in infile.pem -out outfile.p12
Zertifikat konvertieren pem -> p12 (cert+private key):
openssl pkcs12 -export -in imapd.pem -out testcert.p12
Private Key aus pkcs12 Zertifikat extrahieren:
openssl pkcs12 -in smedia.p12 -nocerts -out smedia-key.pem
User Zertifikat und CA extrahieren:
openssl pkcs12 -in smedia.p12 -nokeys -out smedia-user-cert.pem
Zertifikat (DER oder CRT Format) anschauen:
openssl x509 -noout -text -in fb06.crt -inform der
Zertifikat (DER oder CRT) nach PEM umwandeln:
openssl x509 -out fb06.pem -outform pem -in fb06.crt -inform der
Das “starten” der Tokenunterstützung geht so:
[sudo] openct-control init
openct-control status (sollte den Token anzeigen)
eval `ssh-agent`
ssh-add -s0