To configure AS2/3, you need to have a user configured in the UserManager, and a job that does the AS2 without any copy or move task, all the task that have to be done are

Notice there is no copy or move operation there. The AS2 item is the special protocol that does that type of activity. When the remote server sends a MDN, it comes into an account you have setup for this...and that AS2 task above will be handed that MDN response internally inside CrushFTP so it knows the response came back.

If the remote company is just sending you a file (not a MDN) it also comes in through an account in CrushFTP. In CrusHFTP's User Manager, you can make accounts, and on each account you can configure the AS2/3 information to use. This is the information that will be used to decode and decrypt incoming HTTP transfers that are in AS2 format. This account could also be used for normal FTP/SFTP/HTTP transfers too, but if you have the AS2 stuff configured, that info is used to decode and decrypt the AS2 data, and for sending a MDN reply back to the partner who sent you the file.


----


[attachment|AS2/tasks.png]

For beginning you should have a FindTask in the job. A FindTask, that is searching for the folder contains the data that should be sent using AS2.
[attachment|AS2/find.png]

For the second step, you have to exclude the files that are already encrypted.

[attachment|AS2/exclude1.png]

After that is done, you should exclude the MDN responses that you already have.

[attachment|AS2/exclude2.png]

Make sure you have the certificate of the AS2 receiving machine added as a trusted certificate in the certificate chain that you use.

On the AS2 task you have to set it like:

[attachment|AS2/Encrypt.png]\\

[attachment|AS2/signing.png]\\

[attachment|AS2/options.png]\\


-----

If you have your partner's public key for who you want to send to, you need to import that into a keystore file.
{{{
keytool -importcert -alias {partner_name} -file {partner_public_key_file} -keystore {partner_name}.jks
}}}
That will be the keystore you use for the encryption tab.  {partner_name}.jks

For signing, and your public key you are going to give your partner...
{{{
keytool -genkeypair -alias {your_name} -keyalg RSA -keysize 1024 -keystore {your_name}.jks
}}}
Then get your public key out to give to your partner:
{{{
keytool -export -alias {your_name} -file {your_name}.cer -keystore {your_name}.jks
}}}
Send them the resulting {your_name}.cer file.  That is your public key they can encrypt with.  You set this keystore file {your_name}.jks on the "AS2/3 Decryption Key" panel of the user manager and on the signing tab of the VFS item.