Configuration reference for file transfers to or from remote hosts
This page provides information for creating or reviewing payload JSON files that are involved in the configuration of file transfers to and from remote hosts.
For each type of object involved in file transfers — PGP templates, z/OS templates, MFT configuration, FTS settings — a separate type of JSON file is involved.
PGP Template Data file
The following code sample demonstrates PGP template definitions in a JSON file:
"name": "template1",
"executableFullPath": "/home/dbauser/bin",
"exitCode": 0,
"passphrase": "passphrase/KEEP_EXISTING",
"recipient": "moshe",
"encryptionAttributes": "-e $$PGP_INPUT_FILE$$ ...",
"decryptionAttributes": "-d $$PGP_INPUT_FILE$$ ..."
}
The PGP Template Data file contains the following properties for each template:
Property | Description |
---|---|
name | Name of the PGP template, up to 30 characters long |
executableFullPath | Name and location of the executable file for the PGP application |
exitCode | Code of a successful PGP operation |
passphrase | The passphrase that is used to decrypt the file |
recipient | Name of the recipient that is defined in the encrypt command |
encryptionAttributes | PGP command line parameters for encryption Within the command line, you include the following variables:
The following command line is an example of a GnuPG encryption command: |
decryptionAttributes | PGP command line parameters for decryption Within the command line, you include the following variables:
The following command line is an example of a GnuPG decryption command: |
z/OS Template Data file
The following code sample demonstrates z/OS template definitions in a JSON file:
"name": "ZOS_template1",
"recordFormat": "Fixed",
"logicalRecordLength": 1000,
"blockSize": 1200,
"translationTable": "BELGIAN",
"transferMode": "Block",
"smsManagmentClass": "A",
"allocationUnits" : "TRACKS",
"volume" : "asdsa",
"unit" : "aaa",
"primaryAllocation" : 123,
"secondaryAllocation" : 444,
"smsDataClass" : "asdsa",
"dbcsEncoding" : "Hangeul",
"transferToUniqueFile" : true,
"additionalOptionsHost1" : "",
"additionalOptionsHost2" : ""
}
The z/OS Template Data file contains the following properties for each template:
Property | Description |
---|---|
name | Name of the z/OS template. The first character cannot be an integer. |
recordFormat | Value for the record format |
logicalRecordLength | Logical record length, values between 0-32760 |
blockSize | Block size values between 0-32760 |
translationTable | The name of the table used by the FTP server during transfer for translation, up to 8 characters |
transferMode | Mode of file transfer:
Transfer mode is valid only for transfer of files from z/OS to z/OS. |
smsManagmentClass | The SMS Management Class assigned to a new data set |
allocationUnits | Type of allocation unit used for the transfer |
volume | Volume value, up to 6 characters |
unit | Unit value, up to 8 characters |
primaryAllocation | Primary allocation amount, between 1-16777215 |
secondaryAllocation | Secondary allocation amount, between 1-16777215 |
smsDataClass | The SMS Data Class provided by your organization for the FTP server |
dbcsEncoding | The double-byte character set (DBCS) to use for the transfer |
transferToUniqueFile | Whether to create a file with a unique name on the remote system instead of overwriting an existing file. Values are either true of false |
additionalOptionsHost1 | Two optional properties for additional FTP Server SITE command sub-parameters and values Allowed values for these properties are up to 214 characters. |
additionalOptionsHost2 |
MFT Configuration Data file
The following code sample demonstrates MFT configuration data in a JSON file:
"connectionTimeoutInSeconds": 30,
"connectionRetries": 5,
"connectionTimeBetweenRetriesInSeconds": 6,
"debugLevel": 1,
"pgpTempDir": "C:\\temp",
"sslDebugTrace": false,
"pamAuthentication": false,
"proxyIsInUse" : false,
"proxyHost" : "host1234",
"proxyPort" : 1456,
"proxyUser" : "user1",
"proxyPassword" : "passphrase/KEEP_EXISTING",
"fileWatcherSearchInterval" : 30,
"fileWatcherStaticIterations" : 3,
"fileWatcherCheckFileIsInUse" : false,
"fileActionsRetriesIntervalInSeconds" : 5,
"fileActionsRetriesNum" : 3
}
The MFT Configuration Data file contains the following properties:
Property | Description |
---|---|
connectionTimeoutInSeconds | The number of seconds to allow for establishing a connection with an FTP server before timing out Default: 30 seconds |
connectionRetries | The number of times to try to connect after failing to connect with an FTP server Note: If the remote FTP server runs on a z/OS system, this parameter has no effect. Valid values: 0-99 |
connectionTimeBetweenRetriesInSeconds | The number of seconds between attempts to connect to an FTP server Default: 6 seconds |
debugLevel | Debug level of Control-M MFT Valid values range from 0 to 4, where 0 indicates no diagnostic activity, and 4 indicates the highest level of diagnostic functionality. Default: 0 Note: If the debug level of the Control-M/Agent is higher than Control-M MFT, then the debug level of Control-M MFT is based on the Control-M/Agent. |
pgpTempDir | A temporary location where PGP files are stored Users defined in the relevant connection profile must have read and write permissions for this temporary directory. Default: <Control-M/Agent_Home_Dir>\cm\AFT\pgp_tmp |
sslDebugTrace | Whether to run SSL diagnostics in Control-M MFT Values are either true or false. The default is false. |
pamAuthentication | Whether to authenticate the local host with PAM-based authentication (Solaris, HP-UX, and Linux computers only) Values are either true or false. The default is false. |
proxyIsInUse | Whether to transfer files through a Web Proxy server (available for FTP, FTPS, SFTP, and S3) Values are either true or false. The default is false. |
proxyHost | Host name of the proxy server |
proxyPort | Port number of the proxy server |
proxyUser | User name for the connection to the proxy server |
proxyPassword | Password for the proxy server user |
fileWatcherSearchInterval | The number of seconds between successive attempts to detect the existence of a file and between attempts to monitor the size of a detected file Valid values: 1-9999 |
fileWatcherStaticIterations | Numbers of attempts to monitor the file size when it is static after it has reached its minimum detected size Valid values: 1-999 |
fileWatcherCheckFileIsInUse | Whether to check that the file is not being used by another process or application on a local host Values are either true or false. The default is false. |
fileActionsRetriesIntervalInSeconds | Number of seconds to wait before attempting to perform a post action on the source or destination file after a successful transfer Valid values: 1-9999 |
fileActionsRetriesNum | Number of times to retry a post action on the source or destination file after a successful transfer Valid values: 0-999 |
FTS Settings Data file
The following code sample demonstrates FTS settings in a JSON file:
"generalSettings": {
"homeDirectory": "${CM}/ftshome/${userName}",
"multipleLoginAllowed": true,
"maxOpenSessions": 10,
"maxLoginFailures": 3,
"delayAfterLoginFailure": 300,
"throttlingActivated": false,
"maxSimultaniousUploads": 10,
"maxSimultaniousDownloads": 10
},
"ftpSettings": {
"serverEnabled": true,
"port": 1221,
"authenticationMethod": "PAM",
"secured": true,
"keystoreFilePath": "${CM}/data/SSL/cert/ftskeystore.pfx",
"keystoreFilePassword": "567uiturteerwtrewtrerwere",
"ciphers": "",
"listenForImplicitConnection": false,
"passivePorts": ""
},
"sftpSettings": {
"serverEnabled": true,
"port": 1222,
"authenticationMethod": "PAM",
"keystoreFilePath": "${CM}/AFT/data/Keys/keystore.pfx",
"keystoreFilePassword": "tyutuyt7987987979879=",
"ciphers": "AES128CBC,AES256CBC,ARCFOUR128,ARCFOUR256,TripleDESCBC",
"knownUsersFilePath": "${CM}/AFT/data/authorized_keys",
"overriddenUsersHomeDirectories": [
{
"userName": "user1",
"homeDirectory": "${cm.home}/ftshome/home1"
},
{
"userName": "user2",
"homeDirectory": "${cm.home}/ftshome/home2"
},
{
"userName": "user3",
"homeDirectory": "${cm.home}/ftshome/home3"
}
]
},
"authenticationDetails": {
"ldapAuthenticationDetails": {
"searchUserName": "CN=user1 name,ou=sales,dc=company,dc=us,dc=com",
"searchUserPassword": "UYTUYTUytuyt9879879=",
"serverUrl": "ldap://vw-tlv-ctm-qa98.bmc.com",
"baseDn": "ou=sales,dc=company,dc=us,dc=com",
"usernameAttributeName": "sAMAccountName",
"dnAttributeName": "distinguishedName",
"connectionTimeout": 30000
},
"pamAuthenticationDetails": {
"serviceName": "passwd"
}
}
}
The FTS Settings Data file contains the following properties:
General settings:
Property
Description
homeDirectory
Root path where transfered files are stored.If you want to use a different directory for each logged in user, you must add \${userName} to the path.
multipleLoginAllowed
Whether multiple users can connect to the File Transfer Server simultaneously via FTP
maxOpenSessions
The number of users that can connect to the File Transfer Server simultaneously via FTP
maxLoginFailures
The maximum number of login attempts that are allowed via FTP before no more logins are allowed for the period of time defined by the delayAfterLoginFailure property
delayAfterLoginFailure
The number of seconds to wait after a login failure via FTP before the next attempt
throttlingActivated
Whether to limit number of simultaneous uploads and downloads
maxSimultaniousUploads
Maximum number of simultaneous uploads
maxSimultaniousDownloads
Maximum number of simultaneous downloads
FTP settings:
Property
Description
serverEnabled
Whether the File Transfer Server that supports client connection via FTP/FTPS is enabled
port
Number of the port to which the File Transfer Server listens for FTP/FTPS connections
Default: 1221authenticationMethod
Method of authentication of FTP users, one of the following:
- PAM (on UNIX)
- LOCAL (Windows local user)
- LDAP
secured
Whether FTPS is enabled
keystoreFilePath
Path to the file that contains the server certificate
The keystore must be in PKCS#12 format. If FIPS is enabled, the format must be BCFKS.keystoreFilePassword
Password of the file that contains the server certificate
ciphers
A comma-separated list of names of ciphers that are used for FTPS
If no ciphers are specified, all available ciphers are supported.
listenForImplicitConnection
Whether to automatically turn on security after a connection is established between the FTPS client and the Managed File Transfer server
passivePorts
A list of dynamic ports to which to limit passive connections in FTP
The list of ports can include single ports, as well as closed or open ranges (indicated with a dash). Multiple definitions are separated by commas.SFTP settings:
Property
Description
serverEnabled
Whether the File Transfer Server that supports client connection via SFTP is enabled
port
Number of the port to which the File Transfer Server listens for SFTP connections
Default: 1222authenticationMethod
Method of authentication of SFTP users, one of the following:
- PAM (on UNIX)
- LOCAL (Windows local user)
- LDAP
keystoreFilePath
Path to the file that contains the server certificate
The keystore must be in PKCS#12 format. If FIPS is enabled, the format must be BCFKS.keystoreFilePassword
Password of the file that contains the server certificate
ciphers
A comma-separated list of names of ciphers that are used for SFTP
knownUsersFilePath
The path to the file that contains known users by SFTP
overriddenUsersHomeDirectories
A list of internal users that can override their specific home directory to connect to the FTS/Hub with SFTP.
Under this property, specify pairs of userName and homeDirectory properties.
Note that the home directory can be a network path in the UNC format.
Authentication details:
Property
Description
LDAP authentication details (under "ldapAuthenticationDetails")
searchUserName
Name of the LDAP Browse user
searchUserPassword
Password of the LDAP Browse user
serverUrl
The URL address and (optionally) port of a directory server, in the following format:
ldap(s)://<server>:<port>baseDn
The point from where the server will search for users.
Example: ou=sales,dc=company,dc=us,dc=com
usernameAttributeName
The name of the LDAP attribute that determines the username
dnAttributeName
The name of the LDAP attribute that determines the user DN (distinguished name)
connectionTimeout
The number of milliseconds to wait before a timeout
Default: 30000 millisecondsPAM authentication details (under "pamAuthenticationDetails")
serviceName
The name of the PAM service