SSH-Tunnel für Taxdoo einrichten (JTL an Taxdoo anbinden)
Für eine sichere Verbindung zu Eurem MSSQL-Server, zwischen Taxdoo und Eurem Server, kann es Sinn machen einen entsprechenden SSH-Tunnel einzurichten.
Für die Anmeldung an Eurem neuen SSH-Tunnel-Server solltet Ihr unbedingt eine Anmeldung mit Schlüsseln, statt mit Passwörtern bevorzugen.
Die Verwendung eines SSH-Tunnels bietet Euch zusätzliche Sicherheit, denn Ihr müsst den Microsoft SQL Server nicht öffentlich verfügbar machen.
Anbei findet Ihr meine Anleitung zur Einrichtung eines Benutzers, Hinterlegung des öffentlichen Schlüssels von Taxdoo und allem was Ihr zur Einrichtung Eures Taxdoo-SSH-Tunnels benötigt.
Wir beginnen mit der Erstellung eines neuen Benutzers auf dem Linux-Server:
sudo adduser --shell /bin/bash --disabled-password --ingroup 'users' taxdoo
sudo –i
sudo -H -u taxdoo ssh-keygen -t rsa
sudo vi /home/taxdoo/.ssh/authorized_keys
Nunmehr müssen wir in die geöffnete Datei den öffentlichen Schlüssel von Taxdoo einfügen (EINFG):
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC8jPWgjcx1Tktm8n3Jl36mB9aeApq+NzgddcfPYS16T9MZa9IQrYQnueiWp5A/M5PvJEYvLlm7tmkNmkHfu7ZjxjA9c7vVXxnH9D58n71TVUkpdRWYDVS94MmK92SHiH4UmWfnJm8cplDkPTU5GHvA9VNreyNWkB9L8fUDmliBBOcnbmJBq1Xqcp9f4BpYjtODTusuhfkM4l0G2gqeLkzRWwFQhpP9sedrdKsfoIyE6fnYQEiUULBpxdmXub1Epw7DNVuRo2n9lD8Db0LbHBqeb48rqQx+wIDCq0cCWwGUOGhXn1SldXL9U/fZahLJIgHcIaRAdbHdAq8ujbb6V/in taxdoo-jtl
wir speichern mit ESC :wq ENTER
und verhindern das versehentliche Überschreiben des Keys:
chmod 0644 /home/taxdoo/.ssh/authorized_keys
Hostname herausfinden für den späteren SSH-Keyscan:
hostname -f
Zur Sicherheit sollte auch der standardmäßige SSH-Port geändert werden:
vi /etc/ssh/sshd_config
Port auf 254 ändern und Auskommentierung („#“) entfernen (EINFG), am Ende sollte eine Zeile dann so aussehen:
Port 254
wir speichern mit ESC :wq ENTER
Nun müssen wir den SSH-Service neu starten:
sudo systemctl restart sshd.service
Jetzt müssen wir noch den Fingerabdruck unseres Servers herausfinden, diesen benötigt Taxdoo zwingend. Das können wir mit dem nachfolgenden Befehl, dem vorher vergebenem Port und dem ermitteltem Hostname:
ssh-keyscan -p 254 HOSTNAME | ssh-keygen -lf -
Zur Sicherheit noch einmal den MS-SQL-Server Port überprüfen (auf dem Windows-Server) unter
SQL-Server-Konfigurations-Manager > SQL Server-Netzwerkkonfiguration > Protokolle für „DATENBANKNAME“ > TCP/IP Doppelklick > IP-Adressen
Nicht vergessen: Die SSH-Tunnel-Server-IP in der Firewall des Servers auf dem Euer MSSQL-Server läuft freischalten.
Daten bei Taxdoo unter Schnittstellen->JTL eingeben.
Wem das alles zu kompliziert ist helfe ich natürlich sehr gerne, kontaktiert mich einfach über mein Kontaktformular.
Solltet Ihr überprüfen wollen ob Euer JTL-Datenbankserver über den SSH-Tunnel tatsächlich erreichbar ist, installiert einfach telnet mit
apt-get install telnet
und führt anschließen den folgenden Befehl aus:
telnet HOSTNAME PORT
Wenn der Port nicht offen ist, werdet Ihr es hier garantiert merken.
Sollte dies der Fall sein, müsst Ihr noch einmal die Firewall und Sicherheitseinstellungen auf Eurem Windows-Server kontrollieren.