4.17. Locations

A location configuration provides the required information to allow the SFTPPlus to connect to local or remote locations in order to perform file transfers between locations.

Please consult the type configuration option to see the list of supported location types.

Location are auto-started when a transfer or another component needs them and the location is not started and connected.

They are also fault-tolerant allowing to retry failed connections.

All components/transfer trying to use a location which failed, will also have their operation failed and will not trigger a new connection attempt of the location.

4.17.1. Adding a new location

Adding a new location configuration is done by creating a new section inside the configuration file. The name of the section should be prefixed with locations/ and followed by the location’s UUID.

The location’s UUID can be any unique string used to identify the location. Once defined, the UUID should not be changed.

For more information about UUIDs, please see the dedicated UUID documentation.

For example, to add a new location configuration of type filesystem called Local file system

[locations/b904e6h6-c295-4ccf-8abd-edcae4d3324f]
name = Local file system
description = File system accesses as service account.
type = filesystem

4.17.2. Location options

Each location configuration section has the following configurations:

4.17.2.1. name

Default value:

‘’

Optional:

No

From version:

2.8.0

Values:
  • Any text.
Description:

Human-readable short text used to identify this location.

4.17.2.2. description

Default value:

‘’

Optional:

Yes

From version:

2.8.0

Values:
  • Any text.
Description:

Human-readable text that describes the purpose of this location.

4.17.2.3. type

Default value:

‘’

Optional:

No

From version:

2.6.0

Values:
  • filesystem - Local file system
  • sftp - SFTP protocol v3 over SSH v2.
  • ftp - FTP protocol without any encryption.
  • ftpse - Explicit FTPS protocol.
  • ftpsi - Implicit FTPS protocol.
Description:

This option specifies the type of the location. Each type has a set of specific configuration options

4.17.2.4. idle_connection_timeout

Default value:

300

Optional:

Yes

From version:

3.0.0

Values:
  • Number of seconds after which idle connections are disconnected.
  • 0 - To disable timeouts.
Description:

Disconnect the connection to the remote peer if the location has not received any requests for the configured number of seconds.

Keep-alive command requests are ignored, and the connection will be automatically disconnected if keep-alive is the only command requested in the configured interval.

Disconnected locations will automatically reconnect when a new request is made.

If the remote peer closed the connection before the local configured timeout, the connection is left closed, and it will be automatically recreated when a new command is requested.

Set to 0 to always keep the connection active, by forcing reconnection when the remote peer closes the connection.

4.17.2.5. idle_connection_keepalive_interval

Default value:

0

Optional:

Yes

From version:

3.0.0

Values:
  • Number of seconds
Description:

Send a keep-alive command every N seconds to avoid having the connection disconnected by the other peer due to inactivity.

Set to 0 to disable keep-alive commands.

The keep-alive command does not reset the idle connection timeout,

4.17.2.6. connection_retry_count

Default value:

2

Optional:

Yes

From version:

3.9.0

Values:
  • Number of retries
Description:

Number of times to retry connection to the location, when the initial connection fails.

Set to 0 to not retry.

4.17.2.7. connection_retry_interval

Default value:

60

Optional:

Yes

From version:

3.9.0

Values:
  • Number of seconds
Description:

Number of seconds to wait between connection attempts.

Set to 0 to retry right away without any delay.

4.17.3. Local File System Location

A local file system location is accessed using the operating system’s file system.

For now, no extra configuration options are available for this location type.

Note

For the moment, local file system locations can’t be define from the Local Manager GUI. There is a single default local filesystem which is available inside the GUI and which can not be removed.

4.17.4. SFTP Location

An sftp location provides access to an SFTP (version 3) server over SSH (version 2). This does not include access over SCP.

As the connection is done in non-interactive mode, the identity of the remote SSH server needs to be verified, so that credentials are not sent to an untrusted remote SSH server.

To validate the remote SSH server, the fingerprint of its public key is stored as a hexadecimal string in the ssh_server_fingerprint option.

An SSH server can authenticate users using either a password or an SSH key.

4.17.4.1. ssh_server_fingerprint

Optional:

No

Default value:

N/A

Values:
  • Hexadecimal string delimited by colons.
From version:

2.8.0

Description:

Hexadecimal string representation of the SHA1 hash of the SSH (RSA/DSA) key used by the remote server.

When the server’s key fingerprint cannot be verified, all connections are aborted.

4.17.4.2. address

Optional:

No

Default value:

N/A

Values:
  • Host name or IP address of the SFTP server.
From version:

2.8.0

Description:

Address of the remote SSH server. IP or DNS name.

4.17.4.3. port

Optional:

No

Default value:

N/A

Values:
  • Number, greater than 0.
From version:

2.8.0

Description:

Port number of the remote SSH server.

4.17.4.4. username

Default value:

‘’

Optional:

No

From version:

2.8.0

Values:
  • Text.
Description:

User name used to authenticate to the remote SSH server.

4.17.4.5. password

Default value:

‘’

Optional:

Yes

From version:

2.8.0

Values:
  • Plain text password.
  • Disabled or empty.
Description:

This option specifies the password used to connect to the remote SSH server. It is provided in plain text. To disable password authentication, set this to an empty string.

When ssh_private_key is defined and configured to a private key which is stored in encrypted mode, this holds the password used to decrypt the private key.

4.17.4.6. ssh_private_key

Default value:

‘’

Optional:

Yes

From version:

3.0.0

Values:
  • Path to a local SSH private key.
  • Disabled or empty.
Description:

SSH private key used to authenticate to the remote SSH server. Leave it empty to disable SSH key authentication.

We recommend to store the key in PEM OpenSSH format, but Putty or Tectia formats are also supported.

When the configured key is encrypted, the value configured in password is used to decrypt the key.

4.17.5. FTP Location

An ftp location provides access to an FTP server over the unencrypted mode.

Only username and password credentials are supported.

4.17.5.1. address

Optional:

No

Default value:

N/A

Values:
  • Host name or IP address of the FTP server.
From version:

3.0.0

Description:

Address of the FTP server. IP or host name.

4.17.5.2. port

Optional:

Yes

Default value:

21

Values:
  • Number, greater than 0.
From version:

3.0.0

Description:

Port number to connect to the FTP server.

4.17.5.3. username

Default value:

‘’

Optional:

No

From version:

3.0.0

Values:
  • Text.
Description:

User name used to authenticate to the FTP server.

4.17.5.4. password

Default value:

‘’

Optional:

Yes

From version:

3.0.0

Values:
  • Plain text password.
  • Disabled or empty.
Description:

This option specifies the password used to connect to the FTP server.

It is defined in plain text format and sent over the network in plain text without any transport protection.

4.17.6. Explicit FTPS Location

An explicit ftps location provides access to an Explicit FTPS server.

Warning

The explicit FTPS location is an experimental feature. The identity of the remote FTPS is not validated at this point.

4.17.6.1. address

Optional:

No

Default value:

N/A

Values:
  • Host name or IP address of the FTP server.
From version:

3.13.0

Description:

Address of the server. IP or host name.

4.17.6.2. port

Optional:

Yes

Default value:

21

Values:
  • Number, greater than 0.
From version:

3.13.0

Description:

Port number to connect to the server.

4.17.6.3. username

Default value:

‘’

Optional:

No

From version:

3.13.0

Values:
  • Text.
Description:

User name used to authenticate to the server.

4.17.6.4. password

Default value:

‘’

Optional:

Yes

From version:

3.13.0

Values:
  • Plain text password.
  • disabled or empty.
Description:

This option specifies the password used to connect to the server.

It is defined in plain text format and sent over the network protected by the TLS protocol.

4.17.6.5. ftps_ccc

Default value:

Disabled

Optional:

Yes

From version:

3.13.0

Values:
  • passive
  • empty
Description:

This option specifies whether the security of the FTPS command connection should be downgraded to plain text after authentication.

Leave it empty to keep the command connection secure.

When this option is enabled, the SSL/TLS layer is shutdown after authenticating. The rest of the control channel communication will be done over an unencrypted connection.

For more details about using this configuration option plese check the dedicated documentation for the FTPS CCC modes.

4.17.7. Implicit FTPS Location

An implicit ftps location provides access to an Implicit FTPS server.

Warning

The implicit FTPS location is an experimental feature. The identity of the remote FTPS is not validated at this point.

4.17.7.1. address

Optional:

No

Default value:

N/A

Values:
  • Host name or IP address of the FTP server.
From version:

3.13.0

Description:

Address of the server. IP or host name.

4.17.7.2. port

Optional:

Yes

Default value:

990

Values:
  • Number, greater than 0.
From version:

3.13.0

Description:

Port number to connect to the server.

4.17.7.3. username

Default value:

‘’

Optional:

No

From version:

3.13.0

Values:
  • Text.
Description:

User name used to authenticate to the server.

4.17.7.4. password

Default value:

‘’

Optional:

Yes

From version:

3.13.0

Values:
  • Plain text password.
  • disabled or empty.
Description:

This option specifies the password used to connect to the server.

It is defined in plain text format and sent over the network protected by the TLS protocol.