[[Vorlage(Getestet, bionic, focal, jammy)]] {{{#!vorlage Wissen [:Pakete installieren: Installation von Programmen] [:Programme_starten: Starten von Programmen] [:Terminal: Ein Terminal öffnen] [:mit Root-Rechten arbeiten:] }}} {{{#!vorlage Hinweis Unten beschriebener Workflow bezieht sich nicht zwingend auf die AusweisApp2. }}} [[Inhaltsverzeichnis()]] [[Bild(./Eperso-Logo.png, 48, align=left)]] Der [wikipedia:Personalausweis_(Deutschland)#Der_elektronische_Personalausweis_(nPA):elektronische Personalausweis] (umgangspr. auch ''ePerso'') stellt mit seinen Digital-Funktionen die Möglichkeit bereit, sich mit der [wikipedia:Personalausweis_(Deutschland)#eID-Funktion:eID Funktion] des Personalausweises im Internet amtlich zu identifizieren und zu authentifizieren. Diese Funktion ist nicht auf Behörden beschränkt (Ämter, Polizei etc.) sondern soll explizit auch bei Geschäften, Banken und Versicherungen eingesetzt werden. Somit kann der Personalausweis auch im Internet zur Feststellung der Identität z.B. für Onlineshopping, Kontoeröffnungen und Versicherungsangelegenheiten etc. genutzt werden, analog zum normalen Leben, in dem für viele Vorgänge ein Antragssteller jedoch persönlich anwesend sein muss, um seinen Personalausweis vorzuzeigen. Diese Funktion zur Personen-Identifizierung per eID müssen jedoch die Firmen und Ämter auch unterstützen und sich bei der Bundesdruckerei, die die Personalausweise ausgibt, registrieren lassen. Alle Dienste, über die eine Identifikation per eID möglich ist, führen daher das oben gezeigte Logo auf der Webseite. Eine Liste dieser Firmen und Dienste ist auch zu finden unter [https://www.ausweisapp.bund.de/online-ausweisen/anbieter/ eID-Dienste] {de}. = Technischer Hintergrund = Im Prinzip ist der Prozess der Authentifizierung bei der eID-Funktion ähnlich der eines Authentizitäts-Token-Providers, in der sich der Anwender (Ausweisinhaber) bei einem ID-Provider (eID-Server) anmeldet, um sich bei einem Service (Bürgerdienst, Versicherung o.ä.) zu authentifizieren. Die eID-Funktion des Personalausweises geht jedoch weit über die eines normalen Zertifikats hinaus. Im Gegensatz zur Zertifikatskarte kann ein elektronischer Personalausweis nicht einfach "im Vorbeigehen" ausgelesen werden, weil sich auch der eID-Server gegenüber der Behörde und diese gegenüber dem Anwender zertifizieren muss ([https://www.personalausweisportal.de/DE/Verwaltung/Technik/Online-Ausweisen/Online-Ausweisen_node.html Details] {de}). Außerdem wird vor dem eigentlichen Datenaustausch eine explizite Authentifizierung des Ausweisinhabers (Eingabe der PIN) verlangt - somit ist dies eine sog. 2-Faktor-Authentifizierung mit Personalausweis (1. Faktor) und PIN Eingabe (2. Faktor) - siehe auch [https://www.personalausweisportal.de/DE/Buergerinnen-und-Buerger/Sicherheit/sicherheit_node.html Sicherheit] {de}. = AusweisApp2 = Als offizielle Software, mit der die eID-Funktion des elektronischen Personalausweises genutzt werden kann, wird auf die [https://www.ausweisapp.bund.de/ AusweisApp2] {de} verwiesen. Die zweite Version der Ausweisapp benötigt keinen externen Kartenleser, und kann mit einem Smartphone mit NFC Funktion zum Auslesen der Personalausweises gekoppelt werden. Für die Installation in Ubuntu 22.04: {{{#!vorlage Paketinstallation ausweisapp2, universe }}} Seit Ubuntu 20.04 gibt es ein Paket in den offiziellen Paketquellen (Version 1.20.0-1), das jedoch mit zusätzlichen Paketen installiert werden muss. (siehe auch [https://bugs.launchpad.net/ubuntu/+source/ausweisapp2/+bug/1902897 Bug auf Launchpad] {en}): {{{#!vorlage Paketinstallation ausweisapp2, universe qml-module-qtgraphicaleffects, universe qml-module-qtqml-models2 qml-module-qtquick-controls2, universe qml-module-qtquick-layouts, universe }}} Für Ubuntu-Versionen 20.04 und früher stehen zur Verfügung: * inoffizielle Pakete für Linux: [https://www.glasen-hardt.de/2019/05/15/ausweisapp2-als-snap-3/ AusweisApp2 als Snap] {de}, * inoffizielle Pakete für Linux: [https://flathub.org/apps/details/de.bund.ausweisapp.ausweisapp2 AusweisApp2 als Flatpak] * das folgende PPA mit der darin enthaltenen Version 1.22.6-1: [[Vorlage(PPA, misery/ppa)]] * Der Source-Code der AusweisApp2 ist ebenfalls [https://www.ausweisapp.bund.de/download/quelltext-open-source/ verfügbar] {de}, == Firewall-Einstellungen == Wenn ein Smartphone als Kartenleser genutzt werden soll, muss unter Umständen in der lokalen Firewall der dafür notwendige Port noch freigegeben werden (s. [https://github.com/Governikus/AusweisApp2/blob/community/docs/installation/README.de.rst#tls-verbindungen hier].) Dafür in einem Terminal den folgenden Befehl eingeben: {{{#!vorlage Befehl sudo firewall-cmd --add-port=24727/udp --permanent }}} = Open eCard = Hier wird gezeigt, wie der elektronische Personalausweis mit einem Kartenleser und der Software [https://www.openecard.org/startseite/ Open eCard] {de} [[Bild(./openecard-1.png, 200, align=right)]] unter Ubuntu genutzt werden kann. [:Java:] ist erforderlich, die Installation wird im Artikel [:Java/Installation:] beschrieben. Die Verwendung wurde mit [:Java#OpenJDK:OpenJDK] 11 erfolgreich getestet. Hinweise zur Installation sind dem Artikel [:Java/Installation/OpenJDK:] zu entnehmen. Folgende Pakete müssen installiert werden. {{{#!vorlage Paketinstallation libusb-dev, universe libifd-cyberjack6, universe libccid, universe libpcsclite-dev, universe pcsc-tools, universe }}} {{{#!vorlage Hinweis Nach der Installation aller Pakete ist ein Neustart erforderlich, damit alle Treiber geladen werden! }}} == Zusatzprogramme installieren == [[Bild(./eperso1.png, 150, align=right)]] [[Vorlage(Fremdpaket, "[https://www.openecard.org/ Open eCard] {de}", https://www.openecard.org/download/pc/)]] == Kartenleser testen == Nach erfolgter Installation können Kartenleser getestet werden, dazu folgenden Befehl im Terminal ausführen. {{{#!vorlage Befehl pcsc_scan }}} Wird ein Kartenleser gefunden, ist im Terminal folgendes zu sehen: {{{ marko@marko-LIFEBOOK-AH531:~$ pcsc_scan Using reader plug'n play mechanism Scanning present readers... 0: REINER SCT cyberJack RFID komfort (9394279424) 00 00 Tue Dec 18 11:20:21 2018 Reader 0: REINER SCT cyberJack RFID komfort (9394279424) 00 00 Card state: Card removed, / }}} === Getestete Kartenleser === Da der Kartenleser sich gegenüber dem eID-Server authentifizieren muss, kann nicht jeder Kartenleser zum Auslesen des ePersos verwendet werden. Zertifizierte ePerso-Kartenleser tragen auch das Logo des elektronischen Personalausweises (s.o.). Die folgenden Geräte wurden erfolgreich getestet. * Reiner SCT * SCM Microsystems, Inc. SCL011 RFID reader ==== __Reiner SCT__ ==== Für die Nutzung der Reiner-SCT Leser, auf der [https://www.reiner-sct.com/support/support-anfrage/ Treiberseite] {de} schauen ob aktuellere Treiber vorhanden sind. Aktuell ist es der '''libifd-cyberjack6_3.99.5final.sp15_amd64_u1804.deb''' für Ubuntu 18.04 / 18.10 / 19.04 / 19.10 / 20.04. Hinweis: 1804 ggf. durch die Versionsnummer des eigenen System austauschen. Sofern bei dem eigenen Produkt nur veraltete Treiber zu finden sind (z.B. cyberJack RFID basis), sind ggf. unter aktuellen, ähnlichen Produkten (z.B. cyberJack RFID komfort) entsprechende Treiber zu finden und evtl. erfolgreich getestet. {{{#!vorlage Experten Der Treiber aus den Quellen '''libifd-cyberjack6_3.99.5final.sp09_amd64_u1804.deb''' bietet keine Funktion! }}} {{{#!vorlage Hinweis Nach der Installation des Treibers ist ein Neustart erforderlich, damit der Treiber geladen wird! }}} * ReinerSCT cyberJack RFID basis [https://shop.reiner-sct.com/chipkartenleser-fuer-die-sicherheitsklasse-3/cyberjack-rfid-basis Hersteller] {de} (siehe hierzu [wikipedia:Personalausweis_(Deutschland)#Sicherheitslücken:Sicherheitsbedenken]) * ReinerSCT cyberJack RFID komfort / mit Pin-Pad und Anzeige [https://shop.reiner-sct.com/chipkartenleser-fuer-die-sicherheitsklasse-3/cyberjack-rfid-komfort-usb-2718700000 Hersteller] {de} * ReinerSCT cyberJack RFID standard / mit Pin-Pad und Anzeige [https://shop.reiner-sct.com/chipkartenleser-fuer-die-sicherheitsklasse-3/cyberjack-rfid-standard-usb-2718600000 Hersteller] {de} ==== __SCM Microsystems, Inc. SCL011 RFID reader__ ==== [[Bild("./SCL011 RFID reader.jpg", 410, align=left)]] Für den SCM Microsystems, Inc. SCL011 RFID reader ist ein Treiber auf [https://support.identiv.com/scl010-scl011/] {en} verfügbar. Nach der Installation dieses Treibers muss die Datei '''/usr/lib/pcsc/drivers/SCLGENERIC.bundle/Contents/Info.plist''' angepasst werden. Dazu den Kartenleser am Rechner anschließen und im Terminal folgenden Befehl ausführen: {{{#!vorlage Befehl lsusb }}} Es werden die angeschlossenen USB-Geräte angezeigt, darunter der Eintrag des SCM Microsystems, Inc. SCL011 RFID reader: {{{ Bus 001 Device 004: ID 04e6:5292 SCM Microsystems, Inc. SCL011 RFID reader }}} Der Teil hinter ID ist die VendorId:ProductId, gefolgt vom Namen. Diese in die Datei '''/usr/lib/pcsc/drivers/SCLGENERIC.bundle/Contents/Info.plist''' mit Rootrechten eintragen. Der jeweils letzte String wurde ergänzt:{{{ ifdVendorID 0x04E6 0x04E6 0x04E6 0x04E6 0x04e6 ifdProductID 0x5591 0x5291 0x5290 0x5293 0x5292 ifdFriendlyName SCL3711 Reader and NFC Device SCL010 Contactless Reader SCR331CL-NTTCom SCL011G Contactless Reader SCM Microsystems, Inc. SCL011 RFID reader }}} Das Vorgehen ist auch im Forum beschrieben: [https://forum.ubuntuusers.de/topic/problem-mit-treiber-kartenleser-scl/] Danach den PCSC-Daemon neustarten:{{{sudo systemctl restart pcscd.service }}} Sollte ein fehlender Treiber von der AusweisApp2 bemängelt werden, funktioniert es nach einem Klick auf ''"Weiter"'' trotzdem. ==== ==== ==== __Smartphones, nfc-fähig__ ==== Außerdem können für die Authentifizierungs-Funktion auf mobilen Geräten auch [wikipedia:Near_Field_Communication:NFC-fähige] Smartphones eingesetzt werden: * unabhängig vom Computer oder * als Kartenleser für eine Sitzung, die im (Linux-)Computer läuft. == Programm starten == Nach der Installation ist die Anwendung unter ''"Anwendungen anzeigen"'' zu finden. In der Zeile ''"Suchbegriff eingeben"'' wird ''"Open eCard"'' (oder ''"AusweisApp2"'') eingegeben. Im Menü ist Open eCard normalerweise unter ''"System"'' eingetragen. Hinweis: Wenn kein Kartenleser gefunden wird, ist ggf. der Smartcard Daemon zu starten. Der nachfolgende Befehl startet dem Daemon. Die Ausgabe wird hier direkt im Terminal angezeigt mit CTRL-C wird das Programm wieder beendet. {{{#!vorlage Befehl sudo pcscd -f }}} == Transport-PIN ändern == {{{#!vorlage Hinweis Ist der elektronische Personalausweis eingetroffen, muss vor der ersten Benutzung die Transport-PIN geändert werden. }}} [[Bild(./eperso2.png, 150, align=right)]] Vor dem ersten Einsatz des elektronischen Personalausweises muss die Transport-PIN durch eine selbstgewählte PIN ersetzt werden. Wer dies noch nicht getan hat, kann dies in der freien Anwendung Open eCard nach dem Öffnen unter „Konfiguration“ -> ''"PIN-Verwaltung"'' -> ''"PIN-Verwaltung-öffnen"'' tun. === PIN verloren === Wer die PIN für den Ausweis vergessen und bereits drei Mal vergeblich eingegeben hat, kann sich noch mit der PUK (PIN Brief) behelfen. Ist dieser Brief auch nicht mehr zur Hand, muss der Anwender persönlich zum Einwohnermeldeamt / Bürgeramt und eine neue PIN beantragen (und dort selbst eingeben) gegen eine Gebühr von üblicherweise 6 €. Für diese neue PIN gibt es dann auch keine PUK zum zurücksetzen, falls diese wieder verloren geht. {{{#!vorlage Warnung Achtung: Diese neue PIN-Nummer für den e-perso unbedingt gut und sicher aufbewahren! }}} = Bedienung / Beispiel = # neutrale Anwendung zum Auslesen der Ausweisdaten: https://www.buergerserviceportal.de/bund/ausweisapp/bspx_selbstauskunft geht derzeit nicht. Hier wird die Bedienung am Beispiel ''"Beantragen eines Führungszeugnis"'' aufgezeigt. * Der Anwender steckt den Kartenleser am USB-Port an. * Dann wird die Anwendung Open eCard gestartet. * Danach wird der Personalausweis aufgelegt bzw. eingesteckt. Die Open eCard Anwendung bestätigt diesen Ausweis durch ein Symbolbild. * Der Anwender ruft dann auf der Webseite (bspw. [https://www.fuehrungszeugnis.bund.de/ffw Führungszeugnis beantragen] {de}) den Service auf, um sich zu authentifizieren. In unserem Beispiel links im Menü ''"Führungszeugnis beantragen"'' wählen und das Logo des ePersos anklicken, dann erscheint ein Fenster mit den Daten des Dienste-Anbieters zur Kontrolle. * Nach einem Klick auf "Weiter" werden die Daten des ePersos dargestellt, die vom Dienst abgefragt werden sollen. [[Bild(./openecard-2.png, 150, align=right)]] * Ein Klick auf "Weiter" öffnet die Aufforderung zur PIN Eingabe, nachdem das Einlesen am Kartenleser 2 mal mit "Ok" bestätigt wurde. Erst wenn der Anwender von den Daten und der Datenanfrage des Diensteanbieters überzeugt ist, sollte er den nächsten Schritt durch die Eingabe seiner ePerso-PIN bestätigen. * Auf der Webseite des Dienste-Anbieters erscheinen nun die persönlichen Daten des Anwenders, die Authentifizierung und Datenübergabe durch den elektronischen Personalausweis war erfolgreich. Die dargestellten Daten können in den folgenden Schritten vom Dienste-Anbieter verarbeitet werden. Wenn dies nur ein Test war, sollte er hier abgebrochen werden. == Problembehebung == Aufgelegter Personlausweis wird vom Lesegerät nicht erkannt. Hier zunächst mit `pcsc_scan` testen, ob andere Giro-, Visa-Karten o.Ä. per NFC erkannt werden. * Falls andere Karten erkannt werden, könnte es evtl. daran liegen, dass diese Funktion beim Personalausweis nicht aktiviert ist. Die zuständige Behörde anfragen. * Falls andere Karten auch nicht erkannt werden, kann es u.U. helfen, das Kartenlesegerät an einem Windows-PC anzuschließen und die zugehörigen Treiber zu installieren: Dort kann man z.B. mit dem Programm von Reiner SCT ggf. die Firmware des Lesegeräts aktualisieren. = Links = * [https://www.personalausweisportal.de/ Personalausweis-Portal] {de} * offizielle Software und weitere Hintergrund-Informationen: [https://www.ausweisapp.bund.de/ AusweisApp] {de} * [https://launchpad.net/ubuntu/+source/ausweisapp2 AusweisApp2 in Ubuntu] {de} (nativ) * [https://launchpad.net/~misery/+archive/ubuntu/ppa AusweisApp2 als Backport-PPA] {de} (nativ) * [https://www.glasen-hardt.de/2019/03/17/ausweisapp2-als-snap-2/ AusweisApp2 als Snap] {de} (nativ) * [https://flathub.org/de/apps/de.bund.ausweisapp.ausweisapp2 AusweisApp2 als Flatpak] {de} (nativ) * Sourcen bei Github: [https://github.com/Governikus/AusweisApp2] * [https://www.openecard.org/ Open eCard] {de} #tag: Hardware, Büro, Anwendungen, Sicherheit, Internet