Get in Touch

Course Outline

Federated Messaging Sovereignty

  • Analysis of how Slack and Teams create data silos and expose users to foreign jurisdiction.
  • Overview of the Matrix protocol architecture: homeservers, rooms, events, and federation.
  • Synapse as the reference server: key features and resource profiles.
  • Comparative analysis with Mattermost, Rocket.Chat, and Zulip.

Synapse Deployment

  • Setting up the Docker Compose stack comprising synapse, postgres, and element-web.
  • Native package installation and systemd service configuration.
  • Configuring reverse proxy with Nginx and TLS.
  • Generating initial configuration and executing database migration.

Client Configuration

  • Deploying Element Web and applying custom branding.
  • Configuring desktop and mobile applications with custom homeserver URLs.
  • Managing user registration, login procedures, and password resets.
  • Establishing guest access and room discovery policies.

Encryption and Security

  • Implementing end-to-end encryption using Olm and Megolm protocols.
  • Performing device verification and cross-signing.
  • Setting up key backup and recovery mechanisms with a passphrase.
  • Understanding admin access limitations to encrypted content and associated mitigations.

Bridges and Integrations

  • Connecting with Slack, Discord, IRC, and WhatsApp via bridges.
  • Configuring email notifications and GitHub/GitLab webhooks.
  • Integrating Jitsi for encrypted video conferencing.
  • Developing custom bots using the matrix-nio SDK.

Federation and Governance

  • Establishing federation whitelist and blacklist policies.
  • Managing room version upgrades and state resolution.
  • Defining media repository limits and retention periods.
  • Utilizing antispam tools and reporting mechanisms for abuse.

Maintenance and Scaling

  • Optimizing the database and using purge APIs for historical data management.
  • Cleaning up media storage and offloading to S3.
  • Implementing worker mode for high-traffic environments.
  • Establishing backup and disaster recovery protocols for homeserver state.

Requirements

  • Intermediate proficiency in Linux and Docker administration.
  • Understanding of instant messaging protocols and federation concepts.
  • Familiarity with PostgreSQL and Python application deployment.

Audience

  • IT teams seeking to replace Slack, Teams, or Discord with a sovereign alternative.
  • Organizations requiring on-premise messaging solutions with end-to-end encryption.
  • Government and defense units needing federated, auditable chat capabilities.
 14 Hours

Related Categories