#!/coding/blatt
Sammelsurium mit Schwerpunkten Linux & IT-Sicherheit

Arch Linux: AusweisApp2 inkl. Android-Smartphone als Kartenlesegerät einrichten

Vor Kurzem habe ich das erste mal die Online-Ausweisfunktion meines Personalsausweises verwendet. Dazu habe ich mir die offizielle quelloffene AusweisApp2 unter Arch Linux installiert. Als Kartenlesegerät kommt dabei mein NFC-fähiges Android-Smartphone mit der AusweisApp2-Android-App zum Einsatz. Bei der Einrichtung gibt es unter Arch Linux zwei Hürden zu bewerkstelligen. Zum einen findet sich die AusweisApp2 nicht in den offiziellen Paketquellen, sondern muss aus dem Arch User Repository (AUR) heruntergeladen und selbst kompiliert werden. Zum anderen muss die Firewall von Arch Linux angepasst werden, so dass ein NFC-fähiges Endgerät im WLAN als Kartenlesegerät genutzt werden kann. Details hierzu findet ihr in diesem Beitrag.

Folgende Geräte bzw. Software wurde verwendet:
  • Notebook mit Arch Linux
  • AusweisApp2 v1.26.3
  • Google Pixel 6a mit GrapheneOS
  • AusweisApp2-App v 1.22.6 (F-Droid-Version)

Voraussetzungen

Um dem Beitrag folgen zu können, setze ich voraus, dass ihr euer Arch Linux so eingerichtet habt, dass ihr Pakete kompilieren könnt. Hierzu siehe auch folgende Seiten:

Des Weiteren solltet ihr über ein NFC-fähiges Android-Smartphone/-Endgerät verfügen, welches die AusweisApp2-App installiert hat.

Arch Linux: AusweisApp2 aus AUR installieren

Im ersten Schritt erzeugt ein temporäres Verzeichnis, wie z.B. /tmp/build, wechselt in das Verzeichnis und ladet die enstprechende PKGBUILD der AusweisApp2 wie folgt herunter:

git clone https://aur.archlinux.org/ausweisapp2.git
Terminal / Konsole

Anschließend wechselt in das heruntergeladene Verzeichnis ausweisapp2 und öffnet die PKGBUILD. Hier findet ihr die folgende Zeile:

[...]
validpgpkeys=('699BF3055B0A49224EFDE7C72D7479A531451088')
[...]
Datei: /tmp/build/ausweisapp2/PKGBUILD

Dabei handelt es sich um den öffentlichen GPG-Schlüssel mit dem die Signatur der heruntergeladenen Paketdaten überprüft wird. Sollte dieser noch nicht in eurem GPG-Schlüsselbund vorhanden sein, müsst ihr diesen vorab herunterladen:

gpg --keyid-format long --keyserver hkp://keyserver.ubuntu.com --recv-keys 0x699BF3055B0A49224EFDE7C72D7479A531451088
gpg: Schlüssel 2D7479A531451088: Öffentlicher Schlüssel "Governikus (AusweisApp2) <ausweisapp2@governikus.de>" importiert
gpg: Anzahl insgesamt bearbeiteter Schlüssel: 1
gpg:                              importiert: 1
Terminal / Konsole

Nun kompiliert das Paket wie folgt:

makepkg -s
Terminal / Konsole

Nachdem das Paket erfolgreich kompiliert ist, könnt ihr es wie folgt installieren:

sudo pacman -U ausweisapp2-1.26.3-1-x86_64.pkg.tar.zst
Terminal / Konsole

Wenn alles geklappt hat, dann solltet ihr die AusweisApp2 nun starten können:

Arch Linux: AusweisApp2 installieren und starten

Android-Smartphone als Kartenlesegerät einrichten

Die Verbindung zwischen der AusweisApp2 auf eurem Arch Linux System sowie der AusweisApp2-App auf eurem Android-Smartphone kann über euer Heim-WLAN erfolgen. Beide Geräte müssen sich also im gleichen WLAN befinden.

Optional: Firewall anpassen

Solltet ihr wie ich auf eurem Rechner eine Firewall laufen haben, müsst ihr den UDP-Port 24727 freigeben bzw. öffnen. Ich setze bspw. die Firewall ufw ein. Aus diesem Grund habe ich bei mir den Port für eingehende Verbindungen aus meinem lokalen Netzwerk mit folgendem Befehl geöffnet:

sudo ufw allow from 192.168.1.0/24 to any port 24727 proto udp
Terminal / Konsole

Der Status der ufw-Firewall sieht dann bei mir wie folgt aus:

sudo ufw status verbose
Status: active
Logging: off
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip

To                         Action      From
--                         ------      ----
24727/udp                  ALLOW IN    192.168.1.0/24
Terminal / Konsole

Fernzugriff auf Smartphone starten

Öffnet auf eurem Smartphone die AusweisApp2-App und klickt auf den Reiter Fernzugriff. Klickt hier auf Fernzugriff starten sowie Kopplung starten:

Android - AusweisApp2 - Fernzugriff aktivieren

AusweisApp2: Smartphone als Kartenlesegerät hinzufügen

Startet nun unter Arch Linux die AusweisApp2. Wählt Einstellungen und Smartphone als Kartenleser. Hier solltet ihr nun eurer Smartphone angezeigt bekommen:

AusweisApp2 - Smartphone als Kartenlesegerät hinzufügen

Klickt auf den Namen eures Smartphones um den Kopplungsvorgang vorzunehmen. Gebt hier den Kopplungscode, der auf eurem Smartphone angezeigt wird, an:

AusweisApp2 - Smartphone als Kartenlesegerät kopplen

Anschließend wird euer Smartphone als gekoppeltes Gerät aufgeführt:

AusweisApp2 - Übersicht gekoppelte Geräte

Von nun an könnt ihr auf eurem Arch Linux System mit der AusweisApp2 euer Smartphone als Kartenlesegerät verwenden.

Fazit

Die AusweisApp2 unter Arch Linux zu installieren, ist zwar etwas Aufwand, aber funktioniert letztendlich ohne Probleme. Auch das eigene Android-Smartphone als Kartenleser zu verwenden, ist schnell & einfach eingerichtet.