Skip to main content

Introduction to ESS Pro

[WORK IN PROGRESS]

Element Server Suite Pro (ESS Pro) is the commercial Matrix distribution from Element for professional use. It is based off ESS Community and includes additional features and services that are tailored to professional environments with more than 100 users up to massive scale in the millions.

ESS Pro is designed to support enterprise requirements in terms of advanced IAM, compliance, scalability, high availability and multi-tenancy. ESS Pro makes use of Synapse Pro to provide infrastructure cost savings with unmatched stability and user experience under high load. It uses Element’s Secure Border Gateway (SBG) as an application layer firewall to manage federation and to ensure that deployments stay compliant at any time. ESS Pro includes L3 support, Long-term Support (LTS), Advanced Security Advisory and prepares customers for the Cyber Resilience Act (CRA).

This documentation provides all information for Element customers to get started as well as to work with ESS Pro.

Editions

There are three editions of Element Server Suite:

ESS Community

ESS Community is a cutting-edge Matrix distribution including all the latest features of the Matrix server Synapse and other components. It is freely available under the AGPLv3 license and tailored to small-/mid-scale, non-commercial community use cases. It's designed to easily and quickly set up a Matrix deployment. It comprises the basic components needed to get you running and is a great way to get started.

ESS Pro

ESS Pro is the commercial Matrix distribution from Element for professional use (see above) which is described in this documentation.

ESS TI-M

ESS TI-M is a special version of ESS Pro focused on the requirements of TI-Messenger Pro and ePA as specified by the German National Digital Health Agency Gematik. It complies with a specific Matrix version and does not make use of experimental features.

Deploying ESS Pro

ESS Pro comes as a Helm chart and can be deployed using any Kubernetes distribution. It requires an existing Kubernetes cluster and can be operated on the public internet as well as in airgapped scenarios.

A full step-by-step deployment guide for ESS Pro using K3s can be found here.

Components

Next you find an overview of the components in ESS Pro including their purpose and additional information. Most of the components get deployed by default but some of them require additional configuration first. Any component can be enabled/disabled as desired.

The following components are included in ESS Pro (bolded items are being deployed by default):

  • Synapse Pro
  • Matrix Authentication Service (MAS)
  • Dex (for LDAP support)
  • Element Web
  • Element Call / Matrix RTC
  • Advanced Identity Management (AIM, formerly Group Sync)
  • Secure Border Gateway (SBG)
  • Sygnal (Push Gateway)
  • .well-known delegation

Find below more details on each of the components, information about their capabilities and our recommendations for deployment.

  • List of features available in ESS Pro
  • List components and their features
  • Our recommendations
  • deployed by default or needs manual setup?
  • documentation

Synapse Pro

  • Purpose
    • The Matrix server that provides client-to-server and server-to-server APIs
    • Consists of Synapse and additional Pro components that improve performance, scalability and stability
  • Documentation
  • Deployment recommendation: Enabled and deployed by default. Should only be disabled if there is an external Synapse deployment to be used instead.

Matrix Authentication Service (MAS)

  • Purpose
    • Authentication server for Matrix using the OpenID Connect / OAuth 2.0 standard
    • Provides local user management capabilities
    • Allows integration of external IDM systems
  • Documentation
  • Deployment recommendation: Enabled and deployed by default. Should only be disabled if Matrix legacy authentication is required.

Dex (for LDAP support)

  • Purpose
    • Lightweight Identity Provider supporting various protocols
    • Only used for LDAP support with MAS
  • Deployment recommendation:

Element Web

  • Purpose: The browser-based client from Element
  • Documentation
  • Deployment recommendation: Enabled and deployed by default. Should only be disabled if a browser-based client is undesired.

Element Call / Matrix RTC

  • Purpose
    • Backend to support Element Call in-app calling
    • Includes an SFU (selective forwarding unit)
  • Documentation
  • Deployment recommendation: Enabled and deployed by default. Should only be disabled if in-app calling functionality is undesired.

Advanced Identity Management (AIM, formerly Group Sync)

  • Purpose
  • Documentation
  • Deployment recommendation

Secure Border Gateway (SBG)

Sygnal (Push Gateway)

.well-known delegation

Architecture