Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
centos:nitrokey:fidou2f [16.11.2018 14:08. ] – angelegt django | centos:nitrokey:fidou2f [22.07.2019 14:53. ] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Nitrokey FIDO U2F in der Praxis unter CentOS 7 ====== | + | ====== Nitrokey FIDO U2F in der Praxis unter CentOS 7.x ====== |
+ | {{: | ||
+ | \\ In diesem Kapitel befassen wir uns mit der zusätzlichen Absicherung beim Login z.B. bei unserer [[centos: | ||
+ | |||
+ | Der **Nitrokey FIDO U2F** Cryptostick vereint in einem kleinen Plastikgehäuse ein vollständig FIDO Universal 2nd Factor (U2F) kompatibles zu 100% Open Source und Open Hardware Device mit einer Sensortaste/ | ||
+ | Weitere Informationen zum [[https:// | ||
+ | |||
+ | ===== Hardwareinformationen ===== | ||
+ | Informationen über den Stick können wir mit Hilfe des Befehls '' | ||
+ | |||
+ | # usb-devices | ||
+ | < | ||
+ | D: Ver= 2.00 Cls=00(> | ||
+ | P: Vendor=20a0 ProdID=4287 Rev=01.00 | ||
+ | S: Manufacturer=Nitrokey | ||
+ | S: Product=Nitrokey FIDO U2F | ||
+ | S: SerialNumber=0000000000000000 | ||
+ | C: #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA | ||
+ | I: If#= 0 Alt= 0 #EPs= 2 Cls=03(HID | ||
+ | |||
+ | Mit Hilfe des Befehls '' | ||
+ | # lsusb | ||
+ | Bus 002 Device 020: ID 20a0:4287 Clay Logic | ||
+ | |||
+ | Im Syslog wird uns beim Anstecken des Sticks dies entsprechend protokolliert: | ||
+ | < | ||
+ | Nov 16 15:39:55 T410 kernel: usb 2-1.2: New USB device found, idVendor=20a0, | ||
+ | Nov 16 15:39:55 T410 kernel: usb 2-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3 | ||
+ | Nov 16 15:39:55 T410 kernel: usb 2-1.2: Product: Nitrokey FIDO U2F | ||
+ | Nov 16 15:39:55 T410 kernel: usb 2-1.2: Manufacturer: | ||
+ | Nov 16 15:39:55 T410 kernel: usb 2-1.2: SerialNumber: | ||
+ | Nov 16 15:39:55 T410 kernel: hid-generic 0003: | ||
+ | Nov 16 15:39:55 T410 mtp-probe: checking bus 2, device 21: "/ | ||
+ | Nov 16 15:39:55 T410 mtp-probe: bus: 2, device: 21 was not an MTP device</ | ||
+ | |||
+ | ===== udev-Regeln ===== | ||
+ | Für den Betrieb unter [[https:// | ||
+ | Wir wechseln also erst einmal in das entsprechende Konfigurationsverzeichnis ''/ | ||
+ | # cd / | ||
+ | |||
+ | Dann holen wir uns die entsprechende Musterdatei auf unseren Rechner. | ||
+ | # wget https:// | ||
+ | |||
+ | Wie schon erwähnt ist es unter CentOS 7 notwendig für unseren Benutzer eine Änderung an der Berechtigung der Gerätedatei vorzunehmen. Grundsätzlich gibt es hierzu zwei Varianten: | ||
+ | - **Dateirechte** : Wir sorgen dafür dass auf die Gerätedatei ''/ | ||
+ | - **Nutzerrechte** : wir sorgen dafür dass die Gerätedatei ''/ | ||
+ | |||
+ | Wir entscheiden uns hier für die Option 2., wir sorgen also dafür dass die Gerätedatei unserem Nutzer - in diesem Konfigurationsbeispiel dem Benutzer **django** gehört, sobald dieser den Kryptostick in einen USB-Port steckt. | ||
+ | |||
+ | Zunächst legen wir als erstes mal die Gruppe **plugdev** an. | ||
+ | # groupadd plugdev | ||
+ | |||
+ | Dann setzen wir unseren Benutzer **django** in diese Gruppe **plugdev**. | ||
+ | # usermod -aG plugdev django | ||
+ | |||
+ | Nun passen wir noch die eingangs heruntergeladene udev-Regeldatei // | ||
+ | # vim / | ||
+ | <file bash / | ||
+ | KERNEL==" | ||
+ | # Nitrokey FIDO U2F | ||
+ | KERNEL==" | ||
+ | |||
+ | SUBSYSTEM!=" | ||
+ | ACTION!=" | ||
+ | |||
+ | # USB SmartCard Readers | ||
+ | ## Crypto Stick 1.2 | ||
+ | ATTR{idVendor}==" | ||
+ | ## Nitrokey Pro | ||
+ | ATTR{idVendor}==" | ||
+ | ## Nitrokey Storage | ||
+ | ATTR{idVendor}==" | ||
+ | ## Nitrokey Start | ||
+ | ATTR{idVendor}==" | ||
+ | ## Nitrokey HSM | ||
+ | ATTR{idVendor}==" | ||
+ | |||
+ | LABEL=" | ||
+ | |||
+ | Zum Aktivieren unserer geänderten udev-Regeldatei lassen wir diese nun erneut einlesen; hierzu verwenden wir folgenden Befehl: | ||
+ | # udevadm control --reload-rules | ||
+ | |||
+ | Sobald wir nun unseren Nitrokey FIDO U2F-Stick in einen USB-Port stecken wird die zugehörige Gerätedate mit den richtigen Berechtigungen angelegt. | ||
+ | # ll / | ||
+ | |||
+ | crw-rw-r--. 1 django plugdev 246, 2 16. Nov 15:39 / | ||
+ | |||
+ | ===== Browser ===== | ||
+ | Verwenden wir den Browser **[[https:// | ||
+ | |||
+ | Nutzen wir den Browser **Firefox** müssen wir die Option | ||
+ | |||
+ | Hierzu geben wir in der Adresszeile '' | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Mit einem Doppelklick aktivieren wir nun diese Option und setzen diese auf **// | ||
+ | |||
+ | ===== Webserver/ | ||
+ | Melden wir uns nun an einer Webseite an, werden wir wie gewohnt aufgefordert uns mit unserem Benutzer und dem zugehörigen Passwort anzumelden. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Nach dem Bestätigen der Daten werden wir nun gebeten unseren **Nitrokey FIDO U2F**-Stick anzustecken bzw. die Touch-Taste darauf zu drücken bzw. genauer gesagt zu berühren. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Nach einer Sekunde werden wir automatisch angemeldet und wir können den Stick wieder vom USB-Port abziehen. | ||