1.6.0
Upgrade and Migrate SFTP Connector to Version 2.x - Mule 4
Upgrade Anypoint Connector for SFTP (SFTP Connector) to version 2.x.x.
Changes in This Release
This release contains the following changes:
-
The system property
mule.sftp.useHomeDirectory
was removed. SFTP Connector now uses the default home directory. -
SFTP Connector 2.x.x no longer supports the
jcraft library
. The connector now uses theapache mina sshd
library. -
The List operation no longer fetches the content of each file. Now, the payload of each list item contains the complete path to the found file or directory.
-
The SFTP Regular Size file attribute is renamed to Regular File because its behavior is not related to size. The file attribute value can be a file (
true
) or a directory (false
). -
SFTP Connector 2.x.x does not support ciphers
3des-ctr
andarcfour
. For more information, refer to Supported Ciphers project. -
The SFTP proxy protocol works only with HTTP and SOCKS5.
-
SFTP Connector no longer uses
javax.activation
to resolve the media types of the files. The connector now usesApache Tika
, which can result in different media file interpretations. -
The connector changed the classes to manage the date from
LocalDateTime
toZonedDateTime
. -
The deprecated Encoding parameter in the configuration and Write operation is removed. The connector uses the Mule’s default encoding.
Requirements
Ensure that you meet these requirements before you perform the upgrade:
Software | Version |
---|---|
Mule |
4.3.0 and later |
Anypoint Studio |
7.5.0 and later |
JDK |
8 |
Upgrade Prerequisites
Before you perform the upgrade, you must complete the following:
-
Create a backup of your files, data, and configurations in case you need to restore to them.
Upgrade Steps
Follow these steps to perform the upgrade:
-
In Anypoint Studio, create a Mule project.
-
In Mule Palette, click Search in Exchange.
-
In Add Dependencies to Project, enter
SFTP
in the search field. -
In Available modules, select SFTP Connector and click Add.
-
Click Finish.
-
Verify that the SFTP Connector
mule-sftp-connector
version is2.x.x
in thepom.xml
file in the Mule project.
Studio upgrades the connector automatically.
Post Upgrade Steps
After you install the latest version of the connector, follow these steps to complete the upgrade:
Supported Ciphers
The Apache Mina SSHD library does not support ciphers 3des-ctr
and arcfour
. Additionally, the library introduces aes128-gcm
, aes256-gcm
, and cc20p1305_openssh
as alternatives.
For the current version of the SFTP Connector, you must stick to the Apache Mina default options. Refer to the Apache Mina Supported Standards. |
For details, review the following table:
JSCH - SFTP Connector 1.6 | MINA SSHD - SFTP Connector 2.0 |
---|---|
|
|
|
|
|
Not supported. |
|
|
|
|
Not supported. |
|
|
|
|
|
|
|
|
|
Not supported. |
|
|
Not supported. |
|
|
|
|
Not supported. |
|
Other Supported Cryptographic Entities
Kex Algorithms | Host Key Algorithms | MACs |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
||
|
*
These algorithms require Bouncy Castle on Java versions before Java 11.
**
These algorithms require externally EdDSA (Edwards-curve Digital Signature Algorithm) library.
Troubleshooting
Reverting the Upgrade
If you need to revert to the previous version of SFTP Connector, go to Anypoint Studio and in the project’s pom.xml
file, change the mule-sftp-connector
dependency version 2.x.x to the previous version.
Override SSH Connection Security Configuration
If you face SSH connection issues due to unsupported ciphers, macs, hostKeyAlgorithms or kexAlgorithms, then change the priority or enable deprecated ciphers and algorithms forcefully. Although using this method may introduce additional risk. Refer to Configure Security Parameters of SSH Connection and SFTP Connector Reference.