SFTP Konfiguration

SFTP Konfiguration der Microservices

Um eine gesicherte Datenübertragung zu ermöglichen ist es nötig, das SSH-Protokol zu nutzen. Dafür müssen zusätzliche Konfigurationen für den archive-writer und archive-searcher gemacht werden. Sowohl der Client als auch der SFTP-Server benötigen einen privaten und öffentlichen SSH-Schlüssel. Diese werden ausgetauscht, damit der Server den Client erkennt und andersherum.

Folgende Dateien sind zu erstellen:

  • known_hosts
    • enthält die IP des SFTP-Servers mit seinem PublicKey
    • Publickey wird z.B. bei RebexTinySftpServer automatisch erstellt und muss nur aus dessen Verzeichnis gelesen werden
    • Format: <IP-Adresse> <Verschlüssungstyp> <PublicKey des SFTP-Servers>
  • Public Key des Clients
    • Name der Datei: ${SFTP_PRIVATE_KEY_FILE_NAME}.pub
    • Format: OpenSSH
  • Private Key des Clients
    • Name der Datei: ${SFTP_PRIVATE_KEY_FILE_NAME}
    • Format: OpenSSH

Diese Dateien müssen in den Ordner config/.ssh des jeweiligen Microservices kopiert werden.

Konfiguration des SFTP-Servers

Neben der Erstellung des Private- und PublicKeys wird es ggf. notwendig sein, eine authorized_keys-Datei hinzuzufügen. Diese enthält den PublicKey der Clients - NICHT den Key des Servers. Bei mehreren Clients wird ein ClientKey pro Zeile erfasst:

  • im OpenSSH-Format: <Verschlüssungstyp> <PublicKey des Clients> <Kommentar (optional>

Generierung eines Keys

Unter Windows wird üblicherweise ein SSH-Key mithilfe des Tools PuTTYGen erstellt. Um ein Key zu generieren muss man lediglich das Tool starten, auf Generate klicken und mit der Maus Bewegungen erzeugen.

Um den PrivateKey im richtigen Format zu speichern, klickt man auf Conversions > Export OpenSSH Key und speichert diese ohne jegliche Dateiendung ab. Für den PublicKey muss im oberen Teil des Fensters der Text herauskopiert werden und in eine neue Datei mit dem Namen des PrivateKeys und der Endung .pub kopiert werden.

Falls ein SSH-Key mit der Endung .ppk schon vorhanden ist, handelt es sich hierbei um ein Dateiformat von PuTTYGen. PuTTYGen kann diesen Key laden und, wie vorher beschrieben, in das OpenSSH-Format umwandeln.

View Me   Edit Me