Is it possible to code a proc that would invoke SFTP to transfer a file to or
from a non-z/OS ftp server using only that server's public key and a
userid/password combination like you would use for FTP or FTPS?
I need to distribute this outside our company, so using CO:Z isn't an option.
Adding keys to the server for the clients is not either. And modifying USS
files like /etc/ssh/config or even ~/.ssh/anything is probably also off limits.
I might be able to get away with stashing something in /tmp, but even that
might be a problem. I can (since I have to) assume z/OS 2.2 or later for
OpenSSH availability.
I was able to do this for FTPS by distributing the FTP server's public key as a
.PEM file & installing it into RACF, then adding it to a keyring. But so far
with SFTP, I'm stumped. Has anyone tried this?
TIA,
Wendell
fwiw, here is the FTPS proc:
//*-------------------------------------------------------------------
//* TERSE a file & FTP it
//*-------------------------------------------------------------------
//FTPSTRS PROC ZOSFILE=,
// FTPFILE=,
// OUTCLS=*,
// TMPHLQ=&SYSUID,
// TRSDISP=(NEW,PASS),
// KEYOWNR=TCPIP,
// KEYRING=FTPS.KEYRING
//*
//EXP EXPORT SYMLIST=*
// SET FTPFID=&FTPFILE
// SET FTPOWN=&KEYOWNR
// SET FTPKEY=&KEYRING
//*
//*-------------------------------------------------------------------
//TERSE EXEC PGM=TRSMAIN,PARM=PACK
//SYSPRINT DD SYSOUT=&OUTCLS
//INFILE DD DISP=SHR,DSN=&ZOSFILE
//OUTFILE DD DSN=&TMPHLQ..TEMP.TRS,
// DISP=(&TRSDISP.),
// RECFM=FB,BLKSIZE=0,LRECL=1024,
// LIKE=&ZOSFILE
//*-------------------------------------------------------------------
//FTPS EXEC PGM=FTP,REGION=4M,COND=(0,LT),
// PARM=('ENVAR("_CEE_ENVFILE_S=DD:STDENV")/ftp.server.com 21 -e')
//STDENV DD *
GSK_PROTOCOL_TLSV1_2=ON
//SYSFTPD DD *,SYMBOLS=(JCLONLY)
CLIENTERRCODES EXTENDED
EPSV4 TRUE
EXTENSIONS AUTH_TLS
FWFRIENDLY TRUE
KEYRING &FTPOWN/&FTPRING
PASSIVEIGNOREADDR TRUE
SECUREIMPLICITZOS FALSE
SECURE_FTP REQUIRED
SECURE_MECHANISM TLS
SECURE_DATACONN PRIVATE
SECURE_CTRLCONN PRIVATE
SECURE_HOSTNAME REQUIRED
TLSMECHANISM FTP
TLSRFCLEVEL RFC4217
//* TRACE
//TRSFILE DD DISP=SHR,DSN=*.TERSE.OUTFILE
//OUTPUT DD SYSOUT=&OUTCLS
//INPUT DD *,SYMBOLS=(JCLONLY)
ftpuser
ftppwd
sendsite
cd /somedir
BINARY
PUT //DD:TRSFILE &FTPFID
QUIT
//*
// PEND
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN