[gnucash-de] aqhbci über proxy

Micha Lenk micha.lenk at stud.uni-karlsruhe.de
Son Jul 3 15:36:13 EDT 2005


Hallo Thomas,

Cc an die OpenHBCI-Liste, die das auch interessieren dürfte.

Thomas Kuehnel schrieb an gnucash-de at gnucash.org:
> ist es möglich aqhbci über den squidproxy auszuführen?

Das ist möglich, sofern der Proxy Verbindungen zu Port 3000 (HBCI)
erlaubt. Es ist leider noch etwas kompliziert, da AqHBCI meines Wissens
Proxies noch nicht direkt unterstützt.

Die folgende Anleitung setzt folgende Annahmen voraus:

HBCI-Server deiner Bank: hbci.bank.de
Proxy-Server: proxy.local
Port des Proxys: 8080
Kernel mit iptables-Support

Für deine Bank und für deinen Proxy musst du das natürlich entsprechen
ändern. Falls Du HBCI mit PIN und TANs verwendest, könnte es sein, dass
du überall Port 443 (HTTPS) statt Port 3000 angeben musst.

Ich habe dazu ein kleines Perl-Script erweitert, das Du hier
herunterladen kannst:
http://www.stud.uni-karlsruhe.de/~uinx/devel/proxytunnel.pl

Mit diesem Script musst Du folgende Vorbereitungen machen, bevor die
HBCI-Verbindung über den Proxy zustande kommt:

1. Starte proxytunnel.pl

$ proxytunnel.pl -l 3000 -p proxy.local:8080 -d hbci.bank.de:3000

Dadurch lauscht das Programm proxytunnel.pl auf eingehende Verbindungen
an Deinem Rechner an Port 3000.

2. Biege als root im Kernel ausgehende HBCI-Verbindungen zum Server
deiner Bank um auf proxytunnel.pl:

# iptables -t nat -A OUTPUT -p tcp --dst hbci.bank.de --dport 3000 \
			-j DNAT --to-destination 127.0.0.1:3000

Danach kannst du HBCI benutzen. Die HBCI-Verbindung wird dann wegen der
iptables-Regel zum lokal bei dir laufenden proxytunnel.pl umgeleitet.
Proxytunnel.pl stellt dann für AqHBCI eine TCP-Verbindung zum Proxy her
und öffnet dann auf diesem eine Verbindung zum HBCI-Server deiner Bank.
Sobald die Verbindung zur Bank besteht reicht proxytunnel.pl alle Daten,
die AqHBCI schickt einfach nur noch zur Bank durch und liefert die
Antworten von der Bank an AqHBCI zurück. Von diesem Vorgang merkt AqHBCI
überhaupt nichts.

Bei mir funktioniert das jedenfalls :)

Wenn jemand von den Entwicklern mal ganz, ganz viel Zeit hat, kann er ja
mal in AqBanking einbauen, dass es Proxies auch direkt benutzen kann
(d.h. den Proxy direkt anspricht und die Arbeit von proxytunnel.pl
mitmacht). :)

Gruß
  Micha