P
Patchpoint
AS2 Control
local config

Deploy to your server

Patchpoint can't run OpenAS2 itself — it builds the configuration. Use this guide to install OpenAS2 on any machine with Java and apply what you export here.

1

Install Java

OpenAS2 needs a Java Runtime (JRE 11 or newer). Check if you already have it:

java -version

If not, install it:

# Debian/Ubuntu
sudo apt install default-jre

# RHEL/CentOS
sudo yum install java-11-openjdk

# macOS (Homebrew)
brew install openjdk@17

Windows: download the installer from adoptium.net and run it.

2

Download OpenAS2

Get the latest release package from the OpenAS2 project on GitHub:

curl -L -o OpenAS2.zip \
  https://github.com/OpenAS2/OpenAs2App/releases/latest/download/OpenAS2.zip

Or download the ZIP manually from github.com/OpenAS2/OpenAs2App/releases in your browser.

3

Unzip and lay out the install

unzip OpenAS2.zip
sudo mv OpenAS2 /opt/openas2
cd /opt/openas2

Key folders you'll work with:

config/config.xml, partnerships.xmlcertificates/keystore (as2_certs.p12) and cert filesbin/start and stop scriptslogs/openas2.log — first place to look on errorsdata/sent and received message payloads
4

Apply the config from Patchpoint

Go to the Export page here and download both files, then copy them over the defaults:

cp ~/Downloads/config.xml /opt/openas2/config/config.xml
cp ~/Downloads/partnerships.xml /opt/openas2/config/partnerships.xml

The exported config.xml already contains your station IDs, ports and certificate references; partnerships.xml carries your trading partners, URLs, encryption and signing rules.

5

Import your certificates

Add your private key and partner public certificates to the OpenAS2 keystore. Patchpoint tracks which cert belongs to which station/partner on the Certificates page — use those aliases:

# Your private key (PFX/P12) — alias must match config.xml
keytool -importkeystore \
  -srckeystore mykey.pfx -srcstoretype PKCS12 \
  -destkeystore /opt/openas2/certificates/as2_certs.p12 \
  -deststoretype PKCS12 -deststorepass changeit

# Partner's public certificate
keytool -importcert -trustcacerts \
  -file partner.crt -alias partner-alias \
  -keystore /opt/openas2/certificates/as2_certs.p12 \
  -storepass changeit

The keystore password is set in the exported config.xml — change changeit to a strong password and update the file to match.

6

Open firewall ports

Allow inbound traffic on the port your station listens on (from config.xml, default 10080):

sudo ufw allow 10080/tcp
# or firewalld:
sudo firewall-cmd --add-port=10080/tcp --permanent && sudo firewall-cmd --reload

Give your partner the public URL they should send to, e.g. http://your-server.example.com:10080. For production, use HTTPS (TLS) on port 10443 or front OpenAS2 with a reverse proxy.

7

Start OpenAS2

cd /opt/openas2
./bin/start-openas2.sh

Watch the startup log to confirm it loaded your config:

tail -f /opt/openas2/logs/openas2.log

You should see your station IDs and partnerships listed with no errors. To run it as a service, create a systemd unit pointing at the same start script.

8

Verify with a test message

First run a simulated send in Patchpoint's Test Console to confirm the partnership rules are consistent, then send a real file from your server:

# Drop a file in the station's outbox for that partner
cp test.txt /opt/openas2/data/<station>-<partner>/outbox/

# Watch it go out and the MDN come back
tail -f /opt/openas2/logs/openas2.log

A successful exchange ends with a received MDN (the AS2 receipt). If it fails, the log line names the stage — usually a certificate alias mismatch or a blocked port.

Keeping things in sync

workflow

Patchpoint is your control panel: change stations, partners or certificates here, re-export the XML, copy it to the server, and restart OpenAS2 (./bin/stop-openas2.sh && ./bin/start-openas2.sh).

Your config in Patchpoint is saved in this browser — exporting the XML files is also your backup.