Get in Touch

Course Outline

Federated Messaging Sovereignty

  • Understanding why Slack and Teams create data silos and expose users to foreign jurisdictions.
  • Exploration of Matrix protocol architecture: homeservers, rooms, events, and federation.
  • Synapse as the reference server: key features and resource requirements.
  • Comparison with Mattermost, Rocket.Chat, and Zulip.

Synapse Deployment

  • Docker Compose stack setup comprising synapse, postgres, and element-web.
  • Native package installation and systemd service configuration.
  • Reverse proxy setup with Nginx and TLS.
  • Initial configuration generation and database migration procedures.

Client Configuration

  • Deployment of Element Web with custom branding options.
  • Configuring Desktop and mobile apps to use a custom homeserver URL.
  • User registration, login processes, and password reset mechanisms.
  • Policies for guest access and room discovery.

Encryption and Security

  • Implementation of end-to-end encryption using Olm and Megolm protocols.
  • Device verification and cross-signing procedures.
  • Key backup and recovery strategies using a passphrase.
  • Limited admin access to encrypted content: understanding limitations and mitigations.

Bridges and Integrations

  • Integration of Slack, Discord, IRC, and WhatsApp bridges.
  • Setting up email notifications and GitHub/GitLab webhooks.
  • Jitsi integration for secure video calls.
  • Custom bot development utilizing the matrix-nio SDK.

Federation and Governance

  • Policies for federation whitelists and blacklists.
  • Managing room version upgrades and state resolution.
  • Media repository limits and retention policies.
  • Tools for antispam measures and abuse reporting.

Maintenance and Scaling

  • Database optimization and utilizing purge APIs to manage old data.
  • Media storage cleanup and offloading to S3.
  • Utilizing worker mode for high-traffic deployments.
  • Backup and disaster recovery procedures for homeserver state.

Requirements

  • Intermediate-level knowledge of Linux and Docker administration.
  • Understanding of instant messaging protocols and federation concepts.
  • Familiarity with PostgreSQL and the deployment of Python applications.

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 teams needing federated, auditable chat systems.
 14 Hours

Related Categories