Achtung: Diese Anleitung bezieht sich auf inzwischen veraltete Versionen von AqBanking/AqHBCI. Fuer aktuelle Versionen sollte das AqBanking-Handbuch konsultiert werden.
AqHBCI-Tool dient der Einrichtung eines HBCI-Benutzers für AqBanking auf der Konsole.
Inhalt
Inhaltsverzeichnis
1. Befehlsübersicht
Der Befehlt aqhbci-tool --help zeigt alle implementierten Kommandos an. Um die verfügbaren Optionen für ein bestimmtes Kommando zu sehen, geben Sie aqhbci-tool KOMMANDO --help ein (für KOMMANDO setzen Sie bitte den entsprechen Befehl ein).
Zwei Optionen müssen sorgfältig voneinander unterschieden werden: -c KUNDEN_NUMMER und -u BENUTZERKENNUNG. Die Benutzerkennung meint die beim HBCI-Standard vorgesehene Benutzerkennung oder Benutzer-ID (englisch user id, daher -u). Diese wird fest einem Sicherheitsmedium (Diskette, Schlüsseldatei) zugeordnet und wird intern immer benötigt. Die Kundennummer hingegen wird von vielen Banken nicht angegeben und somit auch nicht verwendet (englisch customer id, daher -c; im HBCI-Standard auch als Kunden-ID bezeichnet). Sie sollten diese beim Kommando adduser nur angeben, wenn sie Ihnen von der Bank explizit mitgeteilt wurde.
1.1. mkpinlist
Dieses Kommando erzeugt ein leere PIN-Datei, die vom Tool AqBanking-Tool verwendet werden kann um Pin-Eingaben zu automatisieren. Die erzeugte Datei muss noch ausgefüllt werden.
1.2. addmedium
Fügt AqHBCI ein neues Sicherheitsmedium hinzu.
1.3. listmedia
Zeigt eine Liste der bereits verfügbaren Sicherheitsmedien an.
1.4. adduser
Erzeugt einen neuen HBCI-Benutzer.
1.5. getkeys
Ruft die öffentlichen Schlüssel des Servers im RDH-Modus ab.
1.6. createkeys
Erzeugt neue Schlüssel für den angegeben Benutzer.
1.7. resetkeys
Löscht auf dem Sicherheitsmedium vorhandene Schlüssel. Dies wird beispielsweise für RSA-Karten benötigt, wenn bereits Schlüssel darauf vorhanden sind, die man nicht benötigt.
1.8. sendkeys
Sendet die öffentlichen Schlüssel des Benutzers im RDH-Modus an die Bank. Dieses Kommando darf pro Benutzer nur einmal aufgerufen werden!
1.9. getaccounts
Ruft die Liste der von der Bank verwalteten Konten ab. Nicht alle Banken unterstützen dieses Kommando.
1.10. getsysid
Ruft die sogenannte Systemkennung für den Benutzer und AqBanking ab. Dies wird im RDH- und im PIN/TAN-Modus benötigt.
1.11. activate
Aktiviert das AqHBCI-Modul.
1.12. deactivate
Deaktiviert das AqHBCI-Modul.
2. Einrichtungs-Szenarios
Hinweis: die hier geschilderten Einrichtungsszenarien sind nicht mehr ganz aktuell. Mit Einführung von aqhbci-tool3 hat sich das Aufrufschema etwas geändert. Die ganzen Szenarien sind allerdings im AqBanking-Handbuch Schritt für Schritt beschrieben. Die jeweils aktuellste Version findet sich hier.
2.1. Neue RSA-Karte
1. Initialisieren der Karte
gct-tool create -t starcoscard
Dieses Kommando wird nur benötigt, falls die Karte noch keine PIN hat!! Das ist der Fall, wenn die Karte fabrikneu ist. In diesem Fall muss die PIN von ihrem Initialwert auf einen richtigen Wert gesetzt werden, um sie nutzen zu können. gct-tool befindet sich evtl. in einem eigenen Paket (libgwenhywfar38-dev unter Debian Sid)
2. Karte bei AqHBCI anmelden
aqhbci-tool addmedium -t card
3. Medien-Nummer herausfinden
aqhbci-tool listmedia
Mit diesem Kommando werden die verfügbaren Medien angezeigt. Die Nummer am Anfang der Ausgabe benötigen wir im nächsten Schritt.
4. HBCI-Benutzer anlegen
aqhbci-tool adduser -m X [ -s SERVER-ADRESSE ] [ -b BANKLEITZAHL] [ -u BENUTZERKENNUNG] [-c KUNDENNUMMER]
Das X ist hier nun die Nummer aus dem vorigen Schritt. Die Server-Adresse wird nur benötigt, wenn Sie nicht auf der Karte gespeichert ist. Gleiches gilt auch für die Benutzerkennung. Die Kundennummer müssen Sie nur angeben, wenn Ihre Bank Ihnen diese ausdrücklich mitgeteilt hat. Andernfalls verwendet AqHBCI dafür intern nämlich die Benutzerkennung.
5. Abrufen der öffentlichen Schlüssel des Servers
aqhbci-tool getkeys [ -c KUNDENNUMMER]
Bitte beachten Sie hier, dass Sie für die KUNDENNUMMER hier entweder tatsächlich die Kundennummer angeben (falls die Bank sie Ihnen mitgeteilt hat), oder aber - falls Sie keine solche Kennung bekommen haben - die Benutzerkennung.
6. Serverschlüssel überprüfen
aqhbci-tool iniletter -B [ -c KUNDENNUMMER]
Sie bekommen hier den INI-Brief der Bank angezeigt. Bitte vergleichen Sie insbesondere den Hash-Wert: Stimmt er nicht mit dem auf dem Brief von der Bank überein, waren Sie vermutlich nicht mit der richtigen Bank verbunden!
7. Eigene Schlüssel erzeugen
aqhbci-tool createkeys [ -c KUNDENNUMMER]
Das funktioniert nur, wenn sich auf der Karte noch keine Schlüssel befinden (was bei einer fabrikneuen Karte der Fall ist). Sie werden von diesem Befehl nach 2 Pins gefragt:
- normale PIN
Gateway/Admin-PIN: Diese Pin bleibt normalerweise auf ihrem Initialwert, so dass Sie bei der Frage nach der Pin einfach aud die ENTER-Taste drücken können. Sie werden dann gefragt, ob Sie den Default-Wert verwende wollen, und dies sollten Sie bejahen.
8. Eigene Schlüssel senden
aqhbci-tool sendkeys [ -c KUNDENNUMMER]
Bitte bedenken Sie, dass Sie diesen Schritt nicht wiederholen dürfen, wenn die Bank Ihnen den Empfang der Schlüssel meldet! Ausserdem sollten Sie nachdem Sie diesen Schritt vollzogen haben keine neuen Schlüssel erzeugen!
9. Eigenen INI-Brief erzeugen
aqhbci-tool iniletter [ -c KUNDENNUMMER]
Dieser Befehlt erzeugt einen INI-Brief, den Sie ausdrucken, unterschreiben und an die Bank senden müssen. Anschliessend müssen Sie warten, bis die Bank Ihnen - vermutlich ebenfalls per Post - die Freischaltung Ihres Zuganges bestätigt. Erst dann können Sie mit dem folgenden Schritt weitermachen.
10. Systemkennung abrufen
aqhbci-tool getsysid [ -c KUNDENNUMMER]
Die Systemkennung dient der Identifikation des von Ihnen verwendeten Programmes und der Benutzerkennung. Ohne diese Kennung funktioniert kein weiterer Schritt.
11. Kontenliste abrufen
aqhbci-tool getaccounts [ -c KUNDENNUMMER]
Nicht alle Banken unterstützen dieses Kommando.
12. Kontenliste anzeigen
aqhbci-tool listaccounts
Werden hier keine Konten angezeigt, unterstützt Ihre Bank vermutlich noch nicht den Abruf der Kontenliste. In diesem Fall bleibt Ihnen derzeit nur die Konten manuell anzulegen (mit dem QT3-Assistenten von AqBanking, z.B. aus QBankManager heraus).
2.2. Neue RSA-Schlüsseldatei
1. Erzeugen der Schlüsseldatei
gct-tool create -t ohbci -n ABSOLUTER_PFAD_UND_NAME_DER_DATEI
Hiermit erzeugen Sie eine Schlüsseldatei, die dann von AqHBCI verwendet werden kann.
2. Datei bei AqHBCI anmelden
aqhbci-tool addmedium -t file -m ABSOLUTER_PFAD_UND_NAME_DER_DATEI
3. Medien-Nummer herausfinden
aqhbci-tool listmedia
Mit diesem Kommando werden die verfügbaren Medien angezeigt. Die Nummer am Anfang der Ausgabe benötigen wir im nächsten Schritt.
4. HBCI-Benutzer anlegen
aqhbci-tool adduser -m X -s SERVER-ADRESSE [ -b BANKLEITZAHL] -u BENUTZERKENNUNG [-c KUNDENNUMMER]
Das X ist hier nun die Nummer aus dem vorigen Schritt. Die Kundennummer müssen Sie nur angeben, wenn Ihre Bank Ihnen diese ausdrücklich mitgeteilt hat. Andernfalls verwendet AqHBCI dafür intern die Benutzerkennung.
5. Abrufen der öffentlichen Schlüssel des Servers
aqhbci-tool getkeys [ -c KUNDENNUMMER]
Bitte beachten Sie hier, dass Sie für die KUNDENNUMMER hier entweder tatsächlich die Kundennummer angeben (falls die Bank sie Ihnen mitgeteilt hat), oder aber - falls Sie keine solche Kennung bekommen haben - die Benutzerkennung.
6. Serverschlüssel überprüfen
aqhbci-tool iniletter -B [ -c KUNDENNUMMER]
Sie bekommen hier den INI-Brief der Bank angezeigt. Bitte vergleichen Sie insbesondere den Hash-Wert: Stimmt er nicht mit dem auf dem Brief von der Bank überein, waren Sie vermutlich nicht mit der richtigen Bank verbunden!
7. Eigene Schlüssel erzeugen
aqhbci-tool createkeys [ -c KUNDENNUMMER]
8. Eigene Schlüssel senden
aqhbci-tool sendkeys [ -c KUNDENNUMMER]
Bitte bedenken Sie, dass Sie diesen Schritt nicht wiederholen dürfen, wenn die Bank Ihnen den Empfang der Schlüssel meldet! Ausserdem sollten Sie nachdem Sie diesen Schritt vollzogen haben keine neuen Schlüssel erzeugen!
9. Eigenen INI-Brief erzeugen
aqhbci-tool iniletter [ -c KUNDENNUMMER]
Dieser Befehlt erzeugt einen INI-Brief, den Sie ausdrucken, unterschreiben und an die Bank senden müssen. Anschliessend müssen Sie warten, bis die Bank Ihnen - vermutlich ebenfalls per Post - die Freischaltung Ihres Zuganges bestätigt. Erst dann können Sie mit dem folgenden Schritt weitermachen.
10. Systemkennung abrufen
aqhbci-tool getsysid [ -c KUNDENNUMMER]
Die Systemkennung dient der Identifikation des von Ihnen verwendeten Programmes und der Benutzerkennung. Ohne diese Kennung funktioniert kein weiterer Schritt.
11. Kontenliste abrufen
aqhbci-tool getaccounts [ -c KUNDENNUMMER]
Nicht alle Banken unterstützen dieses Kommando.
12. Kontenliste anzeigen
aqhbci-tool listaccounts
Werden hier keine Konten angezeigt, unterstützt Ihre Bank vermutlich noch nicht den Abruf der Kontenliste. In diesem Fall bleibt Ihnen derzeit nur die Konten manuell anzulegen (mit dem QT3-Assistenten von AqBanking, z.B. aus QBankManager heraus).
2.3. DDV-Karte
1. Karte bei AqHBCI anmelden
aqhbci-tool addmedium -t card
2. Medien-Nummer herausfinden
aqhbci-tool listmedia
Mit diesem Kommando werden die verfügbaren Medien angezeigt. Die Nummer am Anfang der Ausgabe benötigen wir im nächsten Schritt.
3. HBCI-Benutzer anlegen
aqhbci-tool adduser -m X [ -s SERVER-ADRESSE] [ -b BANKLEITZAHL] [ -u BENUTZERKENNUNG] [-c KUNDENNUMMER]
Das X ist hier nun die Nummer aus dem vorigen Schritt. Die Server-Adresse wird nur benötigt, wenn Sie nicht auf der Karte gespeichert ist. Gleiches gilt auch für die Benutzerkennung und die Bankleitzahl. Die Kundennummer müssen Sie nur angeben, wenn Ihre Bank Ihnen diese ausdrücklich mitgeteilt hat. Andernfalls verwendet AqHBCI dafür intern die Benutzerkennung.
4. Kontenliste abrufen
aqhbci-tool getaccounts [ -c KUNDENNUMMER]
Nicht alle Banken unterstützen dieses Kommando.
5. Kontenliste anzeigen
aqhbci-tool listaccounts
Werden hier keine Konten angezeigt, unterstützt Ihre Bank vermutlich noch nicht den Abruf der Kontenliste. In diesem Fall bleibt Ihnen derzeit nur die Konten manuell anzulegen (mit dem QT3-Assistenten von AqBanking, z.B. aus QBankManager heraus).
2.4. PIN/TAN einrichten
1. Medium in AqHBCI erzeugen
aqhbci-tool addmedium -t pintan
2. Medien-Nummer herausfinden
aqhbci-tool listmedia Medium 0: "PINTAN-20060823-162456" (pintan)
Mit diesem Kommando werden die verfügbaren Medien angezeigt. Die Nummer am Anfang der Ausgabe (hier "0") benötigen wir im nächsten Schritt.
3. HBCI-Benutzer anlegen
aqhbci-tool adduser -m X -s SERVER-URL -b BANKLEITZAHL -u BENUTZERKENNUNG [-c KUNDENNUMMER]
Das X ist hier nun die Nummer aus dem vorigen Schritt. Die SERVER-URL ist die vollständige Adresse (URL) des anzusprechenden Servers und lautet z.B. https://hbci00.fiducia.de/cgi-bin/hbciservlet.
Die Kundennummer müssen Sie nur angeben, wenn Ihre Bank Ihnen diese ausdrücklich mitgeteilt hat. Andernfalls verwendet AqHBCI dafür intern die Benutzerkennung.
Frage: Muß bei Einrichtung eines Kontos bei einer zweiten Bank auch ein zweites pin/tan Medium erzeugt und benutzt werden? Antwort: Ja, besser ist das.
4. Systemkennung abrufen Beim folgenden Vorgang muß, falls mehrere Konten einrichtet sind, z.B. mittels der Option -b die Bank
aqhbci-tool getsysid [ -c KUNDENNUMMER] 3:2006/08/23 16-32-12:gwen(32522):directory_all.c: 299: Trying "/usr/etc/gwen-public-ca.crt" 3:2006/08/23 16-32-12:gwen(32522):directory_all.c: 306: File "gwen-public-ca.crt" found in folder "/usr/etc" ===== Certificate Received ===== The following certificate has been received: Name : hbci11.fiducia.de Organisation: Fiducia IT AG Department : Produktion Country : DE City : Ascheim State : Bayern Valid after : 2006/02/16 01:00:00 Valid until : 2007/03/09 00:59:59 Hash : XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX Status : Certificate is valid Do you wish to accept this certificate? (1) Yes (2) No Please enter your choice: 1 ===== Certificate ===== Do you want to accept this certificate permanently? (1) Permanently (2) This session only (3) Abort Please enter your choice: 1 5:2006/08/23 16-32-27:aqbanking(32522):banking.c: 5572: User accepted certificate permanently 3:2006/08/23 16-32-27:aqhbci(32522):job.c: 193: Job "JobTan" not supported by your bank ===== Enter Password ===== Please enter the password for PINTAN-20060823-162456 Input: ***** 3:2006/08/23 16-32-37:gwen(32522):nl_ssl.c: 404: Socket is inactive: disconnected (4) 3:2006/08/23 16-32-37:aqhbci(32522):dialog.c: 628: Could not disconnect from bank (-6)
Die Systemkennung dient der Identifikation des von Ihnen verwendeten Programmes und der Benutzerkennung. Ohne diese Kennung funktioniert kein weiterer Schritt.
5. Kontenliste abrufen
aqhbci-tool getaccounts [ -c KUNDENNUMMER] 3:2006/08/23 16-35-08:gwen(32676):directory_all.c: 299: Trying "/usr/etc/gwen-public-ca.crt" 3:2006/08/23 16-35-08:gwen(32676):directory_all.c: 306: File "gwen-public-ca.crt" found in folder "/usr/etc" 5:2006/08/23 16-35-08:aqbanking(32676):banking.c: 5444: Automatically accepting certificate "XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX" 3:2006/08/23 16-35-08:aqhbci(32676):job.c: 193: Job "JobTan" not supported by your bank ===== Enter Password ===== Please enter the password for PINTAN-20060823-162456 Input: ***** 3:2006/08/23 16-35-16:gwen(32676):netlayer.c: 1608: Not connected 5:2006/08/23 16-35-16:aqbanking(32676):banking.c: 5444: Automatically accepting certificate "XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX" 3:2006/08/23 16-35-16:gwen(32676):nl_ssl.c: 404: Socket is inactive: disconnected (4) 3:2006/08/23 16-35-16:aqhbci(32676):dialog.c: 628: Could not disconnect from bank (-6)
Nicht alle Banken unterstützen dieses Kommando. (Hinweis: Dieses Ausgabebeispiel stammt von einem User bei der Ersteinrichtung, ob die Warnmeldungen etwas bedeuten ist nicht bekannt)
6. Kontenliste anzeigen
aqhbci-tool listaccounts Account 0: Bank: 50070024 Account Number: 123456789
Werden hier keine Konten angezeigt, unterstützt Ihre Bank vermutlich noch nicht den Abruf der Kontenliste. In diesem Fall bleibt Ihnen derzeit nur die Konten manuell anzulegen (mit dem QT3-Assistenten von AqBanking, z.B. aus QBankManager heraus).
3. logfile von aqhbci-tool ansehen/anonymisieren
3.1. Logfiles sind abgelegt unter:
/home/<user>/.banking/backends/aqhbci/data/banks/de/<blz>/logs
3.2. Zum anonymisieren:
cd /usr/lib/aqbanking/plugins/16/debugger/aqhbci aqhbci-qt3-debug
4. HBCI-codes
Siehe auch: http://www.hbci-zka.de/english/documents/specification_english/HBCI22ea.pdf (in Englisch) oder http://www.hbci-zka.de/dokumente/spezifikation_deutsch/Gesamtdok_HBCI22.pdf (in Deutsch).
Code |
Text |
Erklärung |
0010 |
Nachricht/Auftrag angenommen |
auch "Nachricht entgegengenommen" |
0020 |
Ausgeführt |
auch "Information fehlerfrei entgegengenommen" |
0100 |
Dialog korrekt beendet |
|
|
Nachricht/ Auftrag angenommen |
|
3010 |
|
Ansonsten bedeutet der HBCI-Code 3010 keinen Fehler, sondern lediglich eine Benachrichtigung über die Aktualisierung mancher interner Daten |
3050 |
Die BPD wird aktualisiert |
|
3060 |
Teilweise liegen Warnungen oder Hinweise vor |
|
3900 |
Kein Umsatz gem. Suchbegriff vorh. |
|
3920 |
Nur Zwei-Schritt-TAN-Verfahren zulaessig |
|
9010 |
Geschäftvorfall nicht bearbeitet |
|
9050 |
Teilweise fehlerhaft |
|
9230 |
Auftrag nicht ausgeführt, da Limit überschritten. |
|
9380 |
Signaturberechtigung für diesen Kunden unzulässig |
auch "Benutzer hat keine Auftragsberechtigung" |
9800 |
Abgebrochen |
|
9955 |
Ein-Schritt-TAN-Verfahren nicht zugelassen |
|