Listing Thumbnail

    Apache ActiveMQ - Hardened Open-Source JMS Message Broker

     Info
    Sold by: Lynxroute 
    Deployed on AWS
    Free Trial
    This product has charges associated with it for hardening, security configuration, and support. Apache ActiveMQ Classic is an open-source JMS message broker written in Java, with KahaDB persistence and a bundled web console. This Lynxroute build is hardened and ready out of the box: broker authentication and authorization enabled with a unique admin credential generated at first boot, the web console bound to loopback behind an nginx TLS reverse proxy, OpenWire over TLS on 61617 with a per-instance certificate, ObjectMessage deserialization blocked, UFW firewall pre-configured, and a CIS Level 1 hardened Ubuntu 24.04 LTS base. Apache-2.0 license - fully auditable, no vendor lock-in.

    Overview

    This is a repackaged software product wherein additional charges apply for hardening, security configuration, and support.

    WHAT IS APACHE ACTIVEMQ

    Apache ActiveMQ Classic is an open-source message broker from the Apache Software Foundation, written in Java and one of the most widely deployed implementations of the Jakarta Messaging (JMS) API. It moves messages between producers and consumers through queues and topics over the OpenWire wire protocol, covering point-to-point work queues, publish/subscribe, request/reply, and message-group ordering, with message selectors, durable topic subscriptions, delayed and scheduled delivery, redelivery policies, dead-letter queues, virtual destinations, and composite destinations for common integration routing patterns. Durable messages are persisted by the embedded KahaDB store on the local filesystem and survive a broker restart, while producer flow control protects the broker under load. A bundled web console with a Jolokia JMX bridge provides queue, topic, connection, and subscriber administration. This image runs a single node on OpenJDK 21. Apache-2.0 license - a self-hosted alternative to hosted queue services, with no per-message fees and no vendor lock-in.

    WHAT THIS AMI ADDS

    Security hardening:

    • Broker authentication and authorization enabled - every transport requires credentials, and destination access is restricted to the admin role
    • A unique 24-character admin credential generated per instance at first boot; one credential covers the web console, the JMX bridge, and both messaging transports
    • No credentials baked into the image - the password, the broker keystore, and its password are all created on your own instance at first boot
    • Web console bound to 127.0.0.1:8161 only, behind an nginx TLS reverse proxy on 443; the console enforces its own login
    • OpenWire over TLS on 61617 with a per-instance self-signed certificate and a ready-made client truststore; plaintext OpenWire on 61616 also requires credentials
    • ObjectMessage deserialization blocked by default - a well-known remote-code-execution vector in JMS deployments
    • Message store limits sized to the volume so a runaway producer triggers producer flow control instead of filling the disk
    • Only the OpenWire transports are enabled; AMQP, STOMP, MQTT, and WebSocket connectors are left off until you enable the one you need
    • UFW firewall - ports 22 (SSH), 443 (web console), 61617 (OpenWire over TLS), 61616 (OpenWire) only
    • fail2ban, AppArmor
    • CVE scan - every image is scanned for vulnerabilities before release

    OS hardening (CIS Level 1):

    • CIS Ubuntu 24.04 LTS Level 1 benchmark applied via ansible-lockdown
    • auditd, SSH hardening, Kernel hardening, IMDSv2 enforced

    Compliance artifacts:

    • SBOM - CycloneDX 1.6 at /etc/lynxroute/sbom.json
    • CIS Conformance Report at /etc/lynxroute/cis-report.html
    • CIS Tailored Profile at /usr/share/doc/lynxroute/CIS_TAILORED_PROFILE.md

    Highlights

    • Apache ActiveMQ security baked in: broker authentication and authorization enabled with a unique admin credential generated at first boot, the web console bound to loopback behind an nginx TLS reverse proxy, OpenWire over TLS on 61617 with a per-instance certificate, ObjectMessage deserialization blocked, and UFW firewall pre-configured.
    • CIS Level 1 hardened Ubuntu 24.04 LTS: auditd, fail2ban, AppArmor, SSH key-only, IMDSv2 enforced. CVE-scanned before every release. SBOM (CycloneDX) and CIS Conformance Report included.
    • Standards-based JMS messaging on OpenJDK 21: queues and topics, durable subscriptions, scheduled delivery, dead-letter queues, KahaDB persistence, and a bundled web console. Apache-2.0 license - fully auditable, no vendor lock-in.

    Details

    Delivery method

    Delivery option
    64-bit (x86) Amazon Machine Image (AMI)

    Latest version

    Operating system
    Ubuntu 24.04

    Deployed on AWS
    New

    Introducing multi-product solutions

    You can now purchase comprehensive solutions tailored to use cases and industries.

    Multi-product solutions

    Features and programs

    Financing for AWS Marketplace purchases

    AWS Marketplace now accepts line of credit payments through the PNC Vendor Finance program. This program is available to select AWS customers in the US, excluding NV, NC, ND, TN, & VT.
    Financing for AWS Marketplace purchases

    Pricing

    Free trial

    Try this product free for 5 days according to the free trial terms set by the vendor. Usage-based pricing is in effect for usage beyond the free trial terms. Your free trial gets automatically converted to a paid subscription when the trial ends, but may be canceled any time before that.

    Apache ActiveMQ - Hardened Open-Source JMS Message Broker

     Info
    Pricing is based on actual usage, with charges varying according to how much you consume. Subscriptions have no end date and may be canceled any time.
    Additional AWS infrastructure costs may apply. Use the AWS Pricing Calculator  to estimate your infrastructure costs.

    Usage costs (3)

     Info
    Dimension
    Cost/hour
    t3.medium
    Recommended
    $0.05
    t3.large
    $0.05
    t3.small
    $0.03

    Vendor refund policy

    We do not offer refunds for this product. AWS infrastructure charges (EC2, EBS, data transfer) are billed separately by AWS and are not refundable by us.

    How can we make this page better?

    Tell us how we can improve this page, or report an issue with this product.
    Tell us how we can improve this page, or report an issue with this product.

    Legal

    Vendor terms and conditions

    Upon subscribing to this product, you must acknowledge and agree to the terms and conditions outlined in the vendor's End User License Agreement (EULA) .

    Content disclaimer

    Vendors are responsible for their product descriptions and other product content. AWS does not warrant that vendors' product descriptions or other product content are accurate, complete, reliable, current, or error-free.

    Usage information

     Info

    Delivery details

    64-bit (x86) Amazon Machine Image (AMI)

    Amazon Machine Image (AMI)

    An AMI is a virtual image that provides the information required to launch an instance. Amazon EC2 (Elastic Compute Cloud) instances are virtual servers on which you can run your applications and workloads, offering varying combinations of CPU, memory, storage, and networking resources. You can launch as many instances from as many different AMIs as you need.

    Version release notes

    Apache ActiveMQ 6.3.0 - Initial release (July 2026)

    • Apache ActiveMQ 6.3.0 on Ubuntu 24.04 LTS
    • CIS Level 1 hardening applied (ansible-lockdown/UBUNTU24-CIS)
    • CVE-scanned before every release
    • Broker authentication and authorization enabled; every transport requires credentials
    • Unique 24-character admin credential generated at first boot, covering the web console, the JMX bridge, and both messaging transports
    • No credentials baked into the image; the broker keystore and its password are generated per instance
    • Web console bound to 127.0.0.1:8161; TLS terminated by nginx on 443
    • OpenWire over TLS on 61617 with a per-instance self-signed certificate and a client truststore
    • ObjectMessage deserialization blocked by default
    • Message store limits sized to the volume so producer flow control engages before the disk fills
    • Single node on OpenJDK 21 with KahaDB persistence
    • UFW firewall pre-configured (ports 22, 443, 61617, 61616 only)
    • fail2ban, auditd, AppArmor pre-configured
    • SBOM (CycloneDX 1.6) at /etc/lynxroute/sbom.json
    • CIS Conformance Report (OpenSCAP) at /etc/lynxroute/cis-report.html
    • IMDSv2 enforced

    Additional details

    Usage instructions

    1. Launch instance (t3.medium recommended)
    2. Open Security Group - allow TCP 443 (web console) and TCP 61617 (OpenWire over TLS) from your IP. Only open TCP 61616 if your clients cannot use TLS.
    3. SSH: ssh -i key.pem ubuntu@<PUBLIC_IP>
    4. Read credentials: sudo cat /root/activemq-credentials.txt
    5. Open https://<PUBLIC_IP>/admin/ in your browser - accept the self-signed certificate warning
    6. Log in to the web console as admin with the password from the credentials file

    Connect your JMS clients with the same admin credential: ssl://<PUBLIC_IP>:61617 (recommended; trust /var/lib/activemq/tls/broker-truststore.ks, whose password is in the credentials file) tcp://<PUBLIC_IP>:61616 (plaintext, for clients that cannot use TLS)

    One credential covers the web console, the JMX bridge, and both messaging transports. The broker refuses unauthenticated connections on both transports. The web console listens on 127.0.0.1:8161 only; nginx is the TLS perimeter on 443 - do not expose 8161 directly. Credentials are saved to /root/activemq-credentials.txt at first launch. ObjectMessage deserialization is blocked by default. If your application genuinely sends ObjectMessage, set your own trusted package list in /etc/default/activemq-env and restart the broker. Replace the self-signed TLS certificate with a CA-signed certificate (certbot is pre-installed): sudo certbot --nginx -d your-domain.example.com Certbot's HTTP-01 challenge needs inbound TCP 80, which is closed by default - open it in the Security Group and with sudo ufw allow 80/tcp before running certbot.

    Resources

    Vendor resources

    Support

    Vendor support

    Visit us online: https://lynxroute.com 

    For Apache ActiveMQ documentation:

    AWS infrastructure support

    AWS Support is a one-on-one, fast-response support channel that is staffed 24x7x365 with experienced and technical support engineers. The service helps customers of all sizes and technical abilities to successfully utilize the products and features provided by Amazon Web Services.

    Similar products

    Customer reviews

    Ratings and reviews

     Info
    0 ratings
    5 star
    4 star
    3 star
    2 star
    1 star
    0%
    0%
    0%
    0%
    0%
    0 reviews
    No customer reviews yet
    Be the first to review this product . We've partnered with PeerSpot to gather customer feedback. You can share your experience by writing or recording a review, or scheduling a call with a PeerSpot analyst.