Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
centos:nitrokey:pro [21.11.2018 14:20. ] – [Verschlüsseln und entschlüsseln] djangocentos:nitrokey:pro [23.08.2020 18:36. ] (aktuell) – [Paketabhängigkeiten] django
Zeile 50: Zeile 50:
  
 ===== Paketabhängigkeiten ===== ===== Paketabhängigkeiten =====
 +
 +Für den Zugriff auf die SmartCard bzw. auf den Nitrokey Pro benötigen wir z.B. für GPG den SmartCard-Daemon **scdeamon** welcher bei CentOS 7 mit Hilfe es Pakets **gnupg2-smime** bereitgestellt wird. 
 +
 +Dieses Paket installieren wir nun noch via **yum**.
 +   #  yum install gnupg2-smime -y
 +
 +Leider ist das Paket an sich aus Sicht der Entwickler des Kryptostick in einer nicht aktuellen Version bei CentOS 7 verfügbar (CentOS 7: 2.0.22 - aktuelle Version: 2.2.11)((Stand November 2018)). Das hat leider zur Folge, dass wir die PGP-Schlüssel __nicht__ direkt [[centos:nitrokey:pro#schluessel_generieren|auf der SmartCard]] generieren können, sondern diesen wie gewohnt [[centos:nitrokey:pro#vorhandenen_schluessel_importieren|auf dem Rechner]] erzeugen und anschliessend auf den Nitrokey Pro Stick verschoben werden muss.
 ===== udev-Regeln ===== ===== udev-Regeln =====
 Für den Betrieb unter [[https://www.centos.org/|CentOS 7]] müssen wir uns noch passende udev-Definitionen **[[https://www.nitrokey.com/sites/default/files/41-nitrokey.rules|hier]]** besorgen und unserer Umgebung anpassen. Dies ist notwendig, da sonst die Gerätedatei nicht mit den entsprechenden Benutzer-Rechten angelegt wird! Für den Betrieb unter [[https://www.centos.org/|CentOS 7]] müssen wir uns noch passende udev-Definitionen **[[https://www.nitrokey.com/sites/default/files/41-nitrokey.rules|hier]]** besorgen und unserer Umgebung anpassen. Dies ist notwendig, da sonst die Gerätedatei nicht mit den entsprechenden Benutzer-Rechten angelegt wird!
Zeile 180: Zeile 187:
 Wird die Benutzer-PIN mehr als 3x falsch eingeben, wird die Karte für den Benutzer gesperrt. Mit der Admin-PIN kann der Fehleingabezähler zurückgesetzt bzw. eine neue Benutzer-PIN vergeben werden.  Wird die Benutzer-PIN mehr als 3x falsch eingeben, wird die Karte für den Benutzer gesperrt. Mit der Admin-PIN kann der Fehleingabezähler zurückgesetzt bzw. eine neue Benutzer-PIN vergeben werden. 
 <WRAP center round alert 80%> <WRAP center round alert 80%>
-Wird jedoch die Admin-PIN mehr als 3x falsch eingegeben, wird die Smart-Crad komsperrt und der Stick ist anschließend nur noch durch einen Master-Reset in den Auslieferungszustand zu versetzen.+Wird jedoch die Admin-PIN mehr als 3x falsch eingegeben, wird die Smart-Card komplett und der Stick ist anschliessend nur noch durch einen Master-Reset in den Auslieferungszustand zu versetzen.
  
 Hierzu kopiert man sich folgende Datei auf den Rechner: Hierzu kopiert man sich folgende Datei auf den Rechner:
Zeile 192: Zeile 199:
 </WRAP> </WRAP>
  
 +=== Änderung der Default-PINs ===
 Wir werden also zuerst einmal die beiden **PIN**s abändern. Hierzu klicken wir mit der rechten Maustaste auf das Nitrokey-Symbol oben auf dem Desktop und wählen Sie das Menü "Konfigurieren". Dort können wir nun sowohl die Benutzer- als auch Admin-PINs ändern. Wir werden also zuerst einmal die beiden **PIN**s abändern. Hierzu klicken wir mit der rechten Maustaste auf das Nitrokey-Symbol oben auf dem Desktop und wählen Sie das Menü "Konfigurieren". Dort können wir nun sowohl die Benutzer- als auch Admin-PINs ändern.
  
Zeile 199: Zeile 207:
  
 {{ :centos:nitrokey:nitrokey-app_06.png?nolink&325 |Bild: Nitrokey-App Bildschirmhardcopy - Dialog zum PIN Ändern}} {{ :centos:nitrokey:nitrokey-app_06.png?nolink&325 |Bild: Nitrokey-App Bildschirmhardcopy - Dialog zum PIN Ändern}}
 +
 +=== Passwort-Safe ===
 +Der Kryptostick bietet uns die Möglichkeit bis zu 16 Passwörter anzuspeichern, die wir dann später einfach bei entsperrtem Nitrokey Pro Stick abrufen, in den Zwischenspeicher kopieren um es dann bei den (Web)Anwendungen einzufügen.
 +
 +Damit wir unser ersten Passwort auf dem Stick ablegen können, ist es notwendig den Stick zu entsperren.
 +
 +{{ :centos:nitrokey:nitrokey-app_07.png?nolink&200 |Bild: Nitrokey Pro entsperren}}
 +
 +Nach der eingabe der PIN wird unser Kryptostick entsperrt und wir können anschließend  den Menüpunkt **Konfiguration** erreichen.
 +
 +{{ :centos:nitrokey:nitrokey-app_09.png?nolink&275 |Bild: Nitrokey Pro entsperren}}
 +
 +Über den Menüpunkt **Konfiguration** gelangen wir zu den Einstellungen und wiederum auf dem Reiter **Passwort-Safe** dann die einstellungen zu den Anmeldedaten im Passwort-Safe. 
 +
 +{{ :centos:nitrokey:nitrokey-app_08.png?nolink&800 |Bild: Nitrokey Pro entsperren}}
 +
 +Wollen wir uns nun später an einer (Web)-Anwendung anmelden, wählen wir aus der oberen Statusleiste die Nitrokey App aus und wählen beim Menüpunkt **Paswörter** den hinterlegte Passworteintrag aus.
 +
 +{{ :centos:nitrokey:nitrokey-app_10.png?nolink&260 |Bild: Nitrokey Pro entsperren}}
 +
 +Sobald wir diesen Eintrag anklicken wird das zugehörige Passwort in die Zwischenablage kopiert und wir können dies dann in das zugehörige Eingabemaske einfügen. 
 +
 +{{ :centos:nitrokey:nitrokey-app_11.png?nolink&290 |Bild: Nitrokey Pro entsperren}}
 +
  
 ==== Nitrokey Pro und GnuPG  ==== ==== Nitrokey Pro und GnuPG  ====
Zeile 366: Zeile 398:
    $ gpg --card-edit    $ gpg --card-edit
  
-<code><code>Application ID ...: D276000124010303000500006FDA0000+<code>Application ID ...: D276000124010303000500006FDA0000
 Version ..........: 3.3 Version ..........: 3.3
 Manufacturer .....: ZeitControl Manufacturer .....: ZeitControl
Zeile 386: Zeile 418:
  
 gpg/card></code> gpg/card></code>
-</code> 
  
    gpg/card> admin    gpg/card> admin
Zeile 1122: Zeile 1153:
  
 === Schlüssel aus dem lokalen Schlüsselspeicher entfernen ===  === Schlüssel aus dem lokalen Schlüsselspeicher entfernen === 
 +Löschen wir nun den kompletten Schlüssel aus der lokalen Schlüsseldatei, können wir folgenden Befehl verwenden.
 +   $ gpg --delete-secret-key secmail@mailserver.guru
 +<code>gpg (GnuPG) 2.0.22; Copyright (C) 2013 Free Software Foundation, Inc.
 +This is free software: you are free to change and redistribute it.
 +There is NO WARRANTY, to the extent permitted by law.
 +
 +
 +sec  4096R/D1359446 2018-11-21 Django aka BOfH <secmail@mailserver.guru>
 +
 +Delete this key from the keyring? (y/N) y
 +This is a secret key! - really delete? (y/N) y
 +</code>
 +
 +<WRAP center round alert 95%>
 +__**Doch Achtung:**__
 +Hier wird der komplette Schlüssel gelöscht, also den **privaten Primären Signing Key** und nicht nur die Proxy-Einträge! Dies kann zu Problemen bei der späteren Verwendung des Nitrokey Pro auf der Konsole führen, da das gpg-Programm versucht den Schlüssel im Schlüsselbund zu finden!
 +</WRAP>
 +
 +Der gpg-Befehl ''**%%--%%delete-secret-keys**'' hat als Bezugspunkt den primären Signierungsschlüssel und würde beim entfernen dieses Schlüssels natürlich auch die Unterschlüssel entfernen. Da wir nur den privaten primären Signierungsschlüssel aus dem Schlüsselbund löschen wollen, exportieren wir die privaten Unterschlüssel, bevor wir den privaten Primary Signing Key löschen und werden diese dann anschließend wieder importieren.
 +
 +Wir exportieren also erst einmal die Unterschlüssel und legen diese in einer lokalen Datei ab. Zunächst holen wir uns aber noch die Schlüssel-IDs da wir diese beim Exportieren eiegns angeben müssen.
 +   $ gpg2 --list-secret-keys
 +<code>/home/django/.gnupg/secring.gpg
 +------------------------------
 +sec   4096R/D1359446 2018-11-21
 +uid                  Django aka BOfH <secmail@mailserver.guru>
 +ssb>  4096R/564BA287 2018-11-21
 +ssb>  4096R/ACCE2639 2018-11-21
 +ssb>  4096R/EC65030E 2018-11-21
 +</code>
 +Nun exportieren wir die Unterschlüssel mit Hilfe folgenden Aufrufs, bei dem wir die IDs der Unterschlüssel gfolgt von einem **!** jeweils angeben:
 +   $ gpg2 -o subkeys --export-secret-subkeys 564BA287! ACCE2639! EC65030E!
 +
 +Nun löschen wir den primären Signierungsschlüssel inkl. der Unterschlüssel.
 +   $ gpg2 --delete-secret-key secmail@mailserver.guru
 +<code>gpg (GnuPG) 2.0.22; Copyright (C) 2013 Free Software Foundation, Inc.
 +This is free software: you are free to change and redistribute it.
 +There is NO WARRANTY, to the extent permitted by law.
 +
 +
 +sec  4096R/D1359446 2018-11-21 Django aka BOfH <secmail@mailserver.guru>
 +
 +Delete this key from the keyring? (y/N) y
 +This is a secret key! - really delete? (y/N) y</code>
 +
 +Ein erneuter Aufruf des privaten Schlüsselspeichers zeigt und, dass dort nun keine Einträge mehr vorhanden sind.
 +   $ gpg2 --list-secret-keys
 +
 +Nun importieren wir wieder die zuvor gesicherten privaten Unterschlüssel
 +   $ gpg2 --import subkeys
 +<code>gpg: key D1359446: secret key imported
 +gpg: key D1359446: "Django aka BOfH <secmail@mailserver.guru>" not changed
 +gpg: Total number processed: 1
 +gpg:              unchanged: 1
 +gpg:       secret keys read: 1
 +gpg:   secret keys imported: 1</code>
 +
 +Lassen wir uns nun den Inhalt des privaten Schlüsselbundes anzeigen, sehen wir die zurückgesicherten Unterschlüssel wieder.
 +   $ gpg2 --list-secret-keys
 +<code>/home/django/.gnupg/secring.gpg
 +------------------------------
 +sec#  4096R/D1359446 2018-11-21
 +uid                  Django aka BOfH <secmail@mailserver.guru>
 +ssb>  4096R/564BA287 2018-11-21
 +ssb>  4096R/ACCE2639 2018-11-21
 +ssb>  4096R/EC65030E 2018-11-21</code>
 +
 +Zu guter letzt vernichten wir die Datei mit den gesicherten privaten Unterschlüsseln.
 +   $ shred --zero --removesubkeys
 +
 +==== Nitrokey und Thunderbird ==== 
 +Unseren zuvor präparierten Kryptostick wollen wir nun verwenden um bei Thunderbird unsere elektronische Kommunikation per eMail abzusichern. Hierzu werden wir nun den schlüssel dem betreffenden Konto zuweisen. 
 +Über das Menü wählen wir den Punkt **Konten-Einstellungen** aus.
 +
 +{{ :centos:nitrokey:nitrokey-gpg_10.png?nolink&850 |Bild: Thunderbird - Menüpunkt Konten-Einstellungen }}
 +
 +Beim passenden Konto wählen wir dann die Option **OpenPGP-Sicherheit** aus.
 +
 +{{ :centos:nitrokey:nitrokey-gpg_11.png?nolink&800 |Bild: Thunderbird - Menüpunkt OpenPGP-Sicherheit }}
 +
 +Hier wählen wir nun den Schlüssel aus, den wir zuvor erstellt und auf die SmartCard des Kryptostick Pro verschoben hatten.
 +
 +{{ :centos:nitrokey:nitrokey-gpg_12.png?nolink&850 |Bild: Thunderbird - Auswahl des Schlüssels auf dem Kryptostick. }}
 +
 +Sobald wir nun eine Nachricht verschicken die signiert werden soll, wird vor dem Versand die PIN abgefragt und die Nachricht mit dem Signatur-Unterschlüssel unterschrieben.
  
 +{{ :centos:nitrokey:nitrokey-gpg_13.png?nolink&850 |Bild: Thunderbird - Signieren und Versenden einer Nachricht. }}
  
 +Sobald wir eine verschlüsselte Nachricht öffnen, werden wir nach der PIN gefragt, damit der Schlüssel zum Entschlüsseln auf der SmartCard freigeschalten werden kann.
  
 +{{ :centos:nitrokey:nitrokey-gpg_14.png?nolink&850 |Bild: Thunderbird - Abfrage der PIN zum Entschlüsseln der Nachricht }}
  
 +Habne wir die PIN richtig eigegeben, wird die entschlüsselte Nachricht angezeigt.
  
 +{{ :centos:nitrokey:nitrokey-gpg_15.png?nolink&850 |Bild: Thunderbird - Anzeige der entschlüsselten Nachricht }}
  
  
  • centos/nitrokey/pro.1542810033.txt.gz
  • Zuletzt geändert: 21.11.2018 14:20.
  • von django