Zweifaktor-Authentifizierung

SMS-Gateway von zu Hause – 2FA für Online-Bezahlvorgänge: So einfach geht’s!

Altes Fon, überstrapaziert - vor der Nutzung des SMS-Gateway

Aber der Reihe nach: Vor Covid-19 – und als unser gesamtes Team noch vor Ort im Büro arbeitete, benutzten wir ein Samsung S5 Smartphone.

2FA mit SMS-TAN im Slack-Channel: Bild eines als SMS Gateway konfigurierten Raspberry Pi mit einem Schalter auf der linken Seite, einem USB-Stick unten und einem roten und einem blauen Kabel auf der rechten Seite.

Die Anfänge der SMS-TAN für die 2FA mit IFTTT

An dieses Gerät sendete die ausstellende Bank jeweils eine SMS-TAN. Alle involvierten und verantwortlichen Entwickler und Entwicklerinnen für den Bezahlprozess konnten bequem die TANs vom Smartphone ablesen und dementsprechend den Bezahlprozess im Produktionsbetrieb testen.

Smartphone stößt an seine Grenzen

Das Samsung S5 befand sich am Stromnetz und lud, deshalb war das Ablesen der SMS-TAN etwas lästig. Daraufhin installierten wir die App IFTTT auf das S5 und leiteten die SMS-Nachrichten an einen Channel der Kommunikationssoftware Slack um, auf den die Entwickler und Entwicklerinnen Zugriff hatten.

Nach Ausbruch der Pandemie hat es dem Team im Homeoffice sehr geholfen, die SMS-Nachrichten über den Slack-Channel zu erhalten – weil alle Betreffenden einen Zugang dazu hatten.

Dann erreichten uns auf einmal keine SMS-Nachrichten mehr im Slack-Channel. Erst ein Neustart der App brachte Abhilfe: Wir führten das auf die Android-Version zurück, für die es keine Updates mehr gab.

Unsere Idee – ein SMS-Gateway

„Wir mussten eine andere Lösung finden, um die Zustellung der SMS-Nachrichten mit den TANs an das Team sicherzustellen. Schließlich wollten wir von IFTTT und einem ständig zu prüfendem Smartphone unabhängig werden.“

André Laugks Technical Director, denkwerk

Zunächst evaluierten wir mehrere Anbieter von SMS-Gateways, die interessante Funktionen anbieten, wie etwas das Anlegen einer virtuellen Mobilnummer für die Bank, das Weiterleiten an 1-n weitere Smartphones oder die Bereitstellung einer API. Anbieter von SMS-Gateways richten sich jedoch mehr an Unternehmen, die via SMS mit ihren Kunden kommunizieren und Informationen versenden.

Einerseits wollten wir aber bei der Bank nicht erneut die Mobilnummer ändern und waren andererseits nicht von den monatlichen Kosten überzeugt.

Wir kamen zu dem Schluss: Lasst uns einen eigenen SMS-Gateway umsetzen! Die Funktionalitäten, die wir benötigen, waren überschaubar – SMS annehmen und intern weiterleiten.

Die SMS sendeten wir anfangs wieder in den Slack-Channel, stellten dazu aber auf eine Mini-Applikation mit den Frameworks Symfony und Bootstrap um. Diese Applikation stellt einen RESTful-Endpoint (API) bereit, mit Hilfe dessen der Raspberry Pi-Computer die SMS an die Applikation leitet. Fertig war unser SMS-Gateway!

Technische Umsetzung des SMS-Gateway – die Anforderungen:

    • Raspberry Pi 4Huawei

    • E173 UMTS Stick

    • Simcard

    • Raspbian GNU/Linux 10 (Buster)

    • Gammu (v1.40.0) and Gammu-smsd (v1.40.0)

    • picocom v3.1

    • modeswitch v2.5.2

Es muss sichergestellt werden, dass der Raspberry Pi mit einer frischen Installation von Raspbian OS 10 (Buster) auf einer SD-Karte geupdatet ist.