Dieser Anleitung fehlen noch einige Informationen. Wenn Du etwas verbessern kannst, dann editiere den Beitrag, um die Qualität des Wikis noch weiter zu verbessern.
Anmerkung: Überprüfung der Angaben erforderlich, da noch grossteils auf Hardy & Karmic bezogen
Homebanking Computer Interface (HBCI) ist ein offener Standard für den Bereich Electronic Banking und Kundenselbstbedienung und gehört derzeit zu den sichersten Verfahren für Online-Banking. Dazu benötigt man einen speziellen Kartenleser für die von den Banken ausgegebenen HBCI-Karten, diese haben die Größe einer EC-Karte. Wie man diese Kartenleser unter Ubuntu einrichtet, wird hier erklärt, da diese nicht automatisch erkannt und eingerichtet werden, obwohl es so von libchipcard gedacht ist. libchipcard stellt die Kommunikation zwischen Kartenleser und Homebanking-Anwendung her.
Hibiscus, Moneyplex und Starmoney (mit Wine) benutzen die CT-API-Schnittstelle um die Kartenleser anzusprechen und benötigen daher libchipcard nicht.
ReinerSCT Cyberjack Pinpad Sicherheitsklasse 2 (USB)
ReinerSCT Cyberjack Secoder (mit Treibern von ReinerSCT)
ReinerSCT RFID Standard (mit Treibern von ReinerSCT) & (CT-API-Wrapper)
Towitoko Micro (seriell)
Omnikey Cardman 3121 (mit PC/SC-Treiber und CT-API-Wrapper)
Folgende Pakete werden benötigt [1]:
aqbanking-tools (universe )
libaqbanking20 (universe )
libaqbanking-data (universe )
libaqofxconnect4 (universe )
libaqhbci13 (universe )
libchipcardc2 (universe )
libchipcard-data (universe)
libchipcard-tools (universe)
libchipcardd0 (universe )
libchipcard-libgwenhywfar47-plugins (universe)
libqbanking5 (universe, für KDE/QT Programme )
Paketliste zum Kopieren:
sudo apt-get install aqbanking-tools libaqbanking20 libaqbanking-data libaqofxconnect4 libaqhbci13 libchipcardc2 libchipcard-data libchipcard-tools libchipcardd0 libchipcard-libgwenhywfar47-plugins libqbanking5
sudo aptitude install aqbanking-tools libaqbanking20 libaqbanking-data libaqofxconnect4 libaqhbci13 libchipcardc2 libchipcard-data libchipcard-tools libchipcardd0 libchipcard-libgwenhywfar47-plugins libqbanking5
Für KDE:
Paketliste zum Kopieren:
sudo apt-get install libchipcard-tools libchipcard-libgwenhywfar47-plugins libchipcard-data libchipcardd0 libchipcard-ctapi0 libchipcardc2 qbankmanager libaqbanking20-plugins libaqbanking20-plugins-qt libaqbanking20 aqbanking-tools libqbanking5 libaqbanking-plugins-libgwenhywfar47 libaqbanking-data
sudo aptitude install libchipcard-tools libchipcard-libgwenhywfar47-plugins libchipcard-data libchipcardd0 libchipcard-ctapi0 libchipcardc2 qbankmanager libaqbanking20-plugins libaqbanking20-plugins-qt libaqbanking20 aqbanking-tools libqbanking5 libaqbanking-plugins-libgwenhywfar47 libaqbanking-data
aqbanking-tools (universe)
libaqbanking29 (universe)
libaqofxconnect5 (universe )
libaqhbci17 (universe )
libchipcardc2 (universe)
libchipcard-libgwenhywfar47-plugins (universe)
libaqbanking29-plugins-qt (universe, für KDE/QT Programme)
Paketliste zum Kopieren:
sudo apt-get install aqbanking-tools libaqbanking29 libaqofxconnect5 libaqhbci17 libchipcardc2 libchipcard-libgwenhywfar47-plugins libaqbanking29-plugins-qt
sudo aptitude install aqbanking-tools libaqbanking29 libaqofxconnect5 libaqhbci17 libchipcardc2 libchipcard-libgwenhywfar47-plugins libaqbanking29-plugins-qt
Die übrigen Abhängigkeiten werden automatisch aufgelöst.
Für GNOME:
Zur Zeit gibt es kein Frontend in den Quellen.
Für KDE:
Paketliste zum Kopieren:
sudo apt-get install libchipcard-tools libchipcard-libgwenhywfar47-plugins libchipcard-data libchipcard-ctapi0 libchipcardc2 qbankmanager libaqbanking29-plugins libaqbanking29-plugins-qt libaqbanking29 aqbanking-tools libqbanking5 libaqbanking-plugins-libgwenhywfar47 libaqbanking-data
sudo aptitude install libchipcard-tools libchipcard-libgwenhywfar47-plugins libchipcard-data libchipcard-ctapi0 libchipcardc2 qbankmanager libaqbanking29-plugins libaqbanking29-plugins-qt libaqbanking29 aqbanking-tools libqbanking5 libaqbanking-plugins-libgwenhywfar47 libaqbanking-data
Der chipcard-daemon wird in der Regel als Benutzer chipcard der Gruppe chipcard gestartet. Alle Benutzer, die einen HBCI-Leser benutzen wollen, müssen also der Gruppe chipcard angehören. Beides muss angelegt werden. Dazu benutzt man entweder die grafischen Tools der jeweiligen Oberfläche [8] (Systemverwaltung) oder auf der Kommandozeile:
sudo adduser $USER chipcard
Folgende Programme sind in den Ubuntu-Quellen vorhanden und arbeiten mit libchipcard2 zusammen. Je nachdem, welches Programm man bevorzugt einsetzen möchte, sollte dieses installiert werden:
GnuCash - Finanzverwaltung für GNOME
KMyMoney - Finanzverwaltung für KDE
QBankManager - Ein Homebanking-Programm für KDE
Die Treiber-Version 2.0.7 befindet sich in den Ubuntu Quellen und arbeitet einwandfrei mit libchipcard2/3/4 zusammen, folgendes Paket muss installiert [1] werden:
libtowitoko2 (universe )
Jetzt muss noch der Libchipcard-Server/-Client eingerichtet werden, damit der Leser erkannt wird. Dazu öffnet man mit einem Editor mit Root-Rechten [4] eine leere Datei und fügt folgende Zeilen ein:
enabled="1"
server {
typ="local"
# Hardy, falls Hardy eingesetzt wird die nächste Zeile auskommentieren, das heißt # entfernen
# addr="/var/run/chipcardd.sock"
}
#
# Settings used for the PC/SC ressource manager
#
driver {
char driverType="ctapi"
char driverName="tow_ctapi"
char driverDataDir="/usr/lib/chipcard/server/drivers/ctapi"
char libraryFile="/usr/lib/libtowitoko.so.2.0.0"
vars {
char WriteBoundary="32" # for Towitoko 2.0.7
# char WriteBoundary="249" # for Towitoko 2.0.8 (not yet released)
}
reader {
char readerType="tow_cdm"
char readerName="tow1"
int slots="1"
char busType="serial"
int port="0" # 0=COM1, 1=COM2 etc
}
} # driverFolgende Argumente überprüfen auf Richtigkeit und gegebenfalls korrigieren:
addr=, je nach Ubuntu-Version die entsprechende Zeile mit # aus/-kommentieren
char libraryFile auf den korrekten Pfad zur Treiber-DLL überprüfen
int port, COM Port des angeschlossenen Kartenlesers angeben, 0=COM1, 1=COM2 usw.
Die restlichen Argumente können ohne Änderungen übernommen werden. Die Angaben für Server und Client sind identisch.
HBCI-Kartenleser mit USB-Anschluss sind wesentlich einfacher zu installieren, da sie automatisch von libchipcard erkannt werden, daher dürfte die folgenden Installationsanleitung für den ReinerSCT Cyberjack Pinpad auf andere Kartenleser übertragbar sein.
Der Hersteller ReinerSCT bietet fertige Treiberpakete für die verschiedenen Distributionen an, unter anderem auch für die verschiedenen Ubuntu-Versionen. Von der Herstellerseite das passende, neueste Deb-Paket zur eingesetzten Ubuntu-Version herunterladen
und installieren [6].
Fremdpakete können das System gefährden.
Es muss jeweils die passende "CT API"-Version heruntergeladen und installiert [6] werden, z.B.:
libctapi-cyberjack2_*-1ubuntu8.04_i386.deb - für Lucid Lynx 8.04 32bit
libctapi-cyberjack2_*-1ubuntu8.04_amd64.deb - für Lucid Lynx 8.04 32bit
Bei älteren Kartenlesern mit der ID-Nummer 100 (alte Ecom/Pinpad, herauszufinden mit dem Befehl lsusb), kann evtl. die automatische Erkennung nicht funktionieren. Hier einmalig den Befehl
sudo cyberjack addflags 0x100000
eingeben. Dadurch schickt der Treiber bei jedem Initialisieren des Lesers ein Reset-Kommando.
Bei manchen gehen die Leser nur mit folgendem (kleineren) Flag (den anderen zurücksetzten):
sudo cyberjack addflags 0x10000
Evtl. muss noch der Libchipcard-Server/-Client eingerichtet werden, damit der Leser erkannt wird, dazu einen Editor [4] mit Root-Rechten öffnen und folgende Zeilen kopieren und in eine leere Datei einfügen:
enabled="1"
server {
typ="local"
addr="/var/run/chipcard.sock"
}Die Angaben für Server und Client sind identisch. Als /etc/chipcard/client/chipcardc.conf und /etc/chipcard/server/chipcardd.conf speichern und wie folgt die entsprechenden Rechte setzen:
sudo chmod 644 /etc/chipcard/client/chipcardc.conf sudo chmod 644 /etc/chipcard/server/chipcardd.conf
Der Cyberjack Pinpad hat einen USB-Anschluss und benötigt daher keine Treiberangaben, er wird automatisch von libchipcard2 gefunden und erkannt.
Zu beachten gilt noch beim Cyberjack Pinpad, dass beim Kontoabgleich das abgefragte Passwort blind am Pinpad eingetippt und mit OK bestätigt werden muss, am Bildschirm erscheint nur die Aufforderung, das Passwort am Pinpad einzutippen. Es erscheint kein visuelle Rückmeldung wie sonst üblich mit Sternchen (*****) in einem Eingabefeld.
Optional gibt es ein Diagnosewerkzeug (cyberjack-diag)
für den Cyberjack Pinpad. Dieses Paket liegt nur im Quellcode vor und muss kompiliert [5] werden, es steht aber im Konflikt mit dem Cyberjack-Treiber, weil in beiden die Datei cyberjack enthalten ist. Es kann nur mit dpkg --force-all -i cyberjack-diag_*_i386.deb installiert werden, dies ist aber nicht zu empfehlen. Alternativ kann man das DEB-Paket entpacken [7] und die Datei fxcyberjack starten.
Es bietet eine GUI zur Analyse und Überprüfung für die Einrichtung des Kartenlesers mit Lösungsvorschlägen bei Problemen.
Möchte man mit anderen Programmen als den obengenannten Homebanking-Anwendungen auf den Cyberjack-Kartenleser zugreifen, z.B. mit Kommandozeilenwerkzeugen, dann muss man den eigenen Benutzernamen und den Benutzer chipcard zur Gruppe cyberjack hinzufügen [8]. Ein Terminal [3] öffnen und folgenden Befehl ausführen:
sudo adduser $USER cyberjack # user durch den eigenen Usernamen ersetzen sudo adduser chipcard cyberjack
Um zu überprüfen, ob die Einrichtung korrekt war, ein Terminal [3] öffnen und den Chipcard-Server mit folgendem Befehl temporär starten:
sudo chipcardd4 --pidfile /var/run/chipcard.pid
Die gewählte Homebanking Anwendung starten und den Aqbanking-Einrichtungsassistent starten, siehe dazu in den Wikis zu den einzelnen Anwendungen.
libchipcard2 richtet automatisch einen Dienst ein, dieser Dienst erkennt aber den Kartenleser alleine nicht, daher muss noch ein Befehlszeile in die /etc/rc.local eingefügt werden, dieser Dienst ermöglicht dann den korrekten Zugriff auf den Leser. Dazu einen Editor [4] mit Root-Rechten starten, die Datei /etc/rc.local öffnen und den oben genannten Befehl zum Starten des Chipcards Server kopieren und einfügen vor dem Befehl exit 0 und abspeichern:
#!/bin/sh -e sudo chipcardd4 --pidfile /var/run/chipcard.pid exit 0
Nach dem nächsten Neustart steht der Chipcard-Server zur Verfügung.
Diese Pakete sind voneinander abhängig, z.B. Qbankmanager 0.9.41 arbeitet nicht mit libchipcard2 zusammen. Für KMyMoney reicht die Version aus den Quellen, aber es muss diese (KMyMoney Banking Plugin) Erweiterung
zusätzlich kompiliert [5] und installiert [6] werden. Gnucash wurde noch nicht zusammen mit libchipcard/3/4 getestet. Diese Versionen liegen nur im Quellcode vor und müssen selber kompiliert [5] werden, worauf hier nicht näher eingegangen wird. Der sichtliche Vorteil dieser Versionen ist der optisch verbesserte Dialog beim Konto-Abgleich, welcher nicht, wie bei libchipcard2, in Fortschrittsbalken-Anzeige und Dialogfenster zweigeteilt ist.
Der Towitoko-Treiber arbeitet auch sehr gut mit libchipcard3/4 zusammen, der Cyberjack Treiber arbeitet zur Zeit nur mit libchipcard2 zusammen.
Es gilt gegenüber libchipcard2 Folgendes zu beachten :
Der Server-/Clientpfad liegt nicht in /etc/chipcard-* sondern in /usr/etc/chipcard3/client und /usr/etc/chipcard3/server
Die Einrichtungsdatei heißen dementsprechend chipcardd3.conf / chipcardc3.conf
Der Aufruf zum Starten des Servers lautet:
sudo chipcardd3 --pidfile /var/run/chipcardd3.pid
Server-/Clientpfad in /usr/etc/chipcard/client und /usr/etc/chipcard/server
Die Einrichtungsdatei heißen dementsprechend chipcardd.conf / chipcardc.conf
Der Aufruf zum Starten des Servers lautet:
sudo chipcardd --pidfile /var/run/chipcardd.pid
Für viele USB-Kartenleser (Übersicht
) lassen sich aus den Quellen Treiber nachinstallieren, um den Kartenleser über die PC/SC-Schnittstelle anzusprechen.
Folgende Pakete werden benötigt [1]:
pcscd (universe)
pcsc-tools (universe)
libpcsclite (universe)
Ein Test offenbart, ob der Kartenleser erkannt wurde:
pcsc_scan
Um mit dem Kartenleser arbeiten zu können, kann als normaler Benutzer eingegeben werden:
pcscd
Soll der Daemon automatisch gestartet werden, so muss in /etc/init.d/pcscd der Eintrag 'exit 0' entfernt oder in einen Kommentar umgewandelt werden (Getestet in Maverick).
Homebanking-Clients wie Hibiscus oder das proprietäre Moneyplex sprechen den Kartenleser allerdings über die CT-API-Schnittstelle an. Um den Kartenleser für diese Programme verfügbar zu machen, ist ein sogenannter "Wrapper" (engl. Hülle) nötig, der die Befehle übersetzt.
Fremdpakete können das System gefährden.
Auf der Projektseite gibt es die Version 0.2 als Paket für ??. Da das Paket keine Abhängigkeiten hat, funktioniert es auch mit neueren Ubuntu Versionen. Die für die Einrichtung benötigte Datei findet sich dann unter /usr/lib/libpcsc-ctapi-wrapper.so.0.2.
Die neueste Version 0.3 des Wrappers liegt nicht als fertiges Paket vor und muss daher selber kompiliert werden [5]. Die für die Einrichtung benötigte Datei findet sich dann unter /usr/local/lib/libpcsc-ctapi-wrapper.so.0.3.
Diese Revision wurde am 13. Juli 2011 12:48 von Heinrich Schwietering erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen:
Büro, Hardware
2004 – 2012 ubuntuusers.de • Einige Rechte vorbehalten