Skip to main content

FTP / SFTP / FTPS Connection

The file transfer protocol connections enable automations to upload, download, list, and manage files on remote servers. Three protocol variants are supported, each with its own connection type. They are used by the plugin-ftp and plugin-sftp plugins, which delegate to the ftp-connector and sftp-connector respectively.

Connection Types​

ProtocolType EnumType IDEntity ClassDescription
FTPFTPftpFTPConnectionDetailsPlain File Transfer Protocol. Credentials sent in cleartext.
SFTPSFTPsftpSFTPConnectionDetailsSSH File Transfer Protocol. Encrypted channel over SSH.
FTPSFTPSftps--FTP over TLS/SSL. FTP protocol with encryption layer.

All three share the Protocol category.

FTP Mandatory Fields​

FieldTypeRequiredDescription
hostStringYesFTP server hostname or IP address.
portStringYesFTP server port. Standard: 21.
usernameStringYesFTP login username.
passwordStringYesFTP login password. Encrypted at rest.

FTP Advanced Fields​

FieldTypeRequiredDescription
passiveModeStringNoSet to true to use passive mode (recommended when crossing firewalls/NAT). Defaults to true.
timeoutStringNoConnection timeout in milliseconds.

SFTP Mandatory Fields​

FieldTypeRequiredDescription
hostStringYesSFTP server hostname or IP address.
portStringYesSFTP server port. Standard: 22.
usernameStringYesSSH/SFTP login username.
passwordStringYesSSH/SFTP login password. Encrypted at rest. Alternatively, key-based auth can be configured in advanced fields.

SFTP Advanced Fields​

FieldTypeRequiredDescription
passiveModeStringNoNot applicable to SFTP (SFTP runs over SSH and does not have an active/passive mode concept), but retained for configuration compatibility.
privateKeyStringNoPEM-encoded private key for key-based authentication as an alternative to password. Encrypted at rest.
passphraseStringNoPassphrase for the private key if it is encrypted. Encrypted at rest.
strictHostKeyCheckingStringNoSet to yes or no to control SSH host key verification.

SFTP Bastion Host / Jump Server Fields​

When the SFTP server is only reachable through a bastion host (jump server), enable useBastionHost and provide the bastion's connection details. The connector opens an SSH session to the bastion first, then tunnels through it to reach the SFTP host. These fields apply to SFTP only — FTP and FTPS do not support them.

FieldTypeRequiredDefaultDescription
useBastionHostCheckboxNofalseConnect to the SFTP server through a bastion host. When enabled, the fields below apply.
bastionHostVariableConditional--Hostname or IP address of the bastion / jump server. Required when useBastionHost is enabled.
bastionPortNumberConditional22SSH port on the bastion host. Required when useBastionHost is enabled.
bastionUsernameStringConditional--SSH login username on the bastion host. Required when useBastionHost is enabled.
bastionAuthMethodDropdownConditionalpasswordHow to authenticate to the bastion. One of password or privateKey. Defaults to password for SFTP. Required when useBastionHost is enabled.
bastionPasswordPasswordConditional--Password for the bastion user. Required when bastionAuthMethod is password. Encrypted at rest.
bastionPrivateKeyStored-file dropdownConditional--Private key for the bastion, selected from a File uploaded to Global Configurator. Required when bastionAuthMethod is privateKey.
note

For SFTP, bastionAuthMethod defaults to password. When you use privateKey instead, upload the key under Files and select it in bastionPrivateKey rather than pasting it inline.

FTPS Mandatory Fields​

FieldTypeRequiredDescription
hostStringYesFTPS server hostname or IP address.
portStringYesServer port. 990 for implicit FTPS, 21 for explicit FTPS.
usernameStringYesFTPS login username.
passwordStringYesFTPS login password. Encrypted at rest.

FTPS Advanced Fields​

FieldTypeRequiredDescription
implicitStringNoSet to true for implicit FTPS (port 990, TLS from the start). Set to false for explicit FTPS (port 21, AUTH TLS command). Defaults to false (explicit).
passiveModeStringNoSet to true to use passive mode. Defaults to true.
trustAllCertificatesStringNoSet to true to skip server certificate validation. Not recommended for production.

Protocol Comparison​

FeatureFTPSFTPFTPS
EncryptionNoneFull (SSH)TLS/SSL
Default port2122990 (implicit) / 21 (explicit)
Firewall friendlinessPoor (active mode)Good (single port)Moderate
Key-based authNoYesNo (certificate-based)
Underlying protocolFTPSSHFTP + TLS
tip

Prefer SFTP when possible. It provides encryption, uses a single port (firewall-friendly), and supports key-based authentication. Use FTP only for legacy systems that do not support SFTP or FTPS.

Friendly Example​

What you enterExample
Connection namePartner SFTP - Daily Files
Used forPicking up files from a partner folder and sending processed files back
Main details to collectServer address, port, username, password or key, and folder path
Best person to provide itPartner technical contact or file transfer admin

After it is saved, workflow builders select Partner SFTP - Daily Files in a node instead of entering these details again.

Troubleshooting​

SymptomLikely Cause
Connection refused on port 21 or 22Service not running, or firewall blocking the port
530 Login authentication failedWrong username or password
Timeout during file listing (FTP)Active mode is being used behind a NAT/firewall. Switch to passive mode.
Host key verification failed (SFTP)Server host key changed or strictHostKeyChecking is yes without a known host entry
SSL handshake failure (FTPS)Certificate mismatch, or explicit vs. implicit mode misconfigured