PDA

View Full Version : SFTP auf der Iseries



Seiten : [1] 2 3

cicero22
10-05-21, 12:07
Hallo zusammen,

seit einigen Tagen kämpfe ich bereits damit per SFTP Daten von einer AS/400 mit einem SFTP Server auszutauschen. Wichtig: Es sollen nur Benutzer und Passwort verwendet werden, keine Keys.

Prinzipiell habe ich mich an folgende Anleitung dabei gehalten:
https://www.ibm.com/support/pages/batch-sftp-download-example-using-password-authentication

Ich habe im CL auch eine Logfile aktiviert, welches aber leer bleibt:


ADDENVVAR ENVVAR(QIBM_QSH_CMD_OUTPUT) +
VALUE('FILE=/home/SFTPUSER/log.txt') +
REPLACE(*YES)

QSH CMD('/QOpenSys/etc/openssh_password_script.sh')

QSH CMD('exec /QOpenSys/usr/bin/ksh -c +
"/home/SFTPUSER/batch_sftp_script.sh"')

Nach dem Aufruf des CLs kann ich u.a. auch folgende Jobs finden:

QZSHSH SFTPUSER BATCHI AKTIV PGM-ksh
QZSHSH SFTPUSER BATCHI AKTIV PGM-sftp
QZSHSH SFTPUSER BATCHI AKTIV PGM-ssh
QZSHSH SFTPUSER BATCHI AKTIV PGM-sh
QZSHSH SFTPUSER BATCHI AKTIV PGM-printf

Im Script selbst wird folgendes aufgerufen:

***************Datenanfang*****************
#!/bin/sh
export DISPLAY= SSH_ASKPASS=/QOpenSys/etc/openssh_password_script.sh
printf "mget *\nquit\n" | sftp sftpuser@sftp.xxx.com
***************Datenende*******************

Es scheint aber nichts weiter zu passieren.

Nach Eingabe von call qp2term und
sftp sftpuser@sftp.xxx.com
erhalte ich:
Host key verification failed.
Connection closed
$



Meine Fragen:

Ist es überhaupt möglich interaktiv ein SFTP von der AS/400 durchzuführen mit Benutzer/Passwort? (ohne Script)
Wie bekomme ich zu meinen CL/Scripts von oben weiterführende Infos/Logs?
Was fehlt mir noch ?

Ich bin für jeden Hinweis sehr dankbar.

Viele Grüße, cicero22

Fuerchau
10-05-21, 13:05
Neuere Releases können das auch mit FTP-Kommando.
FTP ... SECCNN(*IMPLICIT)

Der sftp von QP2 kann nur mit Key.

cicero22
10-05-21, 13:19
Hallo Baldur,

nun hab ich schon soviel "gegoogelt", aber das hat mir auch noch keiner gesagt ;-)
Das würde die Sache für mich natürlich extrem erleichtern! (die ganzen alten Scripts von FTP usw...)

Nun habe ich das mal unter V7R3 versucht mit:
FTP RMTSYS(SFTP.xxx.COM) PORT(22) SECCNN(*IMPLICIT)

bekomme aber
Fehler bei sicherer Verbindung, Rückkehrcode -11 zurück :-(

was wohl bedeutet:
-11 SSL hat eine falsch formatierte Nachricht empfangen.

An was kann das liegen? CCSID?

Vielen Dank und Gruß Dirk

Fuerchau
10-05-21, 13:34
Wieso Port 22?
Prüfe mal hier:
https://www.ibm.com/docs/en/i/7.3?topic=i-securing-ftp-clients-tls-ssl

Man unterscheidet da mit SSL (mit Kkey) und TLS (ohne Key).
Bei TLS beginnt man wieder mit Port 21. *IMPLICIT muss der Zielport des Servers bekannt sein.

Aber ehrlich: Probiert habe ich es noch nie.

cicero22
10-05-21, 13:45
Ich dachte SFTP läuft immer Port 22.
Aber die gleiche Meldung kommt auch mit *DFT oder auch Port 21.
Aber ich kämpfe mich mal weiter mit dem FTP.... das wäre toll wenn es darunter läuft.

Danke Dir in jeden Fall schonmal.

Fuerchau
10-05-21, 15:27
Wäre schön, wenn du bei Erfolg die Lösung posten könntest.

radiogaga
10-05-21, 17:29
ist der ssh key des hosts schon in der known_hosts vorhanden? versuch mal: ssh -l sftpuser sftp.xxx.com und bestätiige mit yes sonst hat mir auch immer mal ein sftp -vvv gut geholfen

Fuerchau
10-05-21, 18:10
Es soll ja ohne Key gehen:
"Wichtig: Es sollen nur Benutzer und Passwort verwendet werden, keine Keys."
Wenn ich mit FileZilla einen TLS-FTP mache (der dann auch FTPS heißt) wird verschlüsselt ohne Key.

radiogaga
10-05-21, 18:27
ja aber wenn ich mich zum ersten mal mit sftp/ssh zu einem server verbinde, mit dem ich noch nie verbunden war, muss man doch beim ersten mal den Key des Servers akzeptieren. Das ist ja keine IBMi "Eigenheit". Das muss ich z.B. im Putty auch machen wenn ich mich zu einem Windows-Server verbinde. Ich könnte mir vorstellen das ich ohne das auch keine Anmeldung mit Benutzer+Passwort machen kann.

Fuerchau
11-05-21, 08:28
Ich denke, seitdem das FTP-Kommando nun auch sichere Verbindungen unterstützen soll, dass das QP2 sftp nicht mehr benötigt wird. Zumal sich FTP mittels OVRDBF auch besser scripten lässt.
Da ich keinen TLS-Zugang habe, kann ich das nicht ausprobieren.
Ich hoffe, das oben verlinkte Dokument kann uns weiterhelfen, wie man TLS/SSH mittel FTP realisieren kann.
Die aufwendige Script-Erstellung hat mich bei sftp schon immer gestört, da ich FTP ausschließlich in Batch-Verarbeitungen verwende.
Bei TLS/SSH wird zwar ein Schlüssel ausgetauscht, aber warum muss der irgendwo gespeichert werden da er doch nur für diese Sitzung benötigt wird.