Get in Touch

Course Outline

Messaging Sovereignty and Federation

  • The reasons why Slack and Teams lead to data silos and exposure to foreign jurisdictions.
  • Matrix protocol architecture, including homeservers, rooms, events, and federation.
  • Synapse as the reference server: key features and resource requirements.
  • A comparative analysis with Mattermost, Rocket.Chat, and Zulip.

Deploying Synapse

  • Setting up a Docker Compose stack with synapse, postgres, and element-web.
  • Installing native packages and configuring systemd services.
  • Implementing a reverse proxy with Nginx and TLS.
  • Generating initial configurations and managing database migrations.

Client Setup and Configuration

  • Deploying Element Web and applying custom branding.
  • Configuring desktop and mobile apps with custom homeserver URLs.
  • Managing user registration, login, and password reset processes.
  • Establishing policies for guest access and room discovery.

Encryption and Security Measures

  • End-to-end encryption utilizing Olm and Megolm.
  • Implementing device verification and cross-signing protocols.
  • Managing key backup and recovery using passphrases.
  • Understanding limitations and mitigations regarding admin access to encrypted content.

Bridges and System Integrations

  • Bridging connections to Slack, Discord, IRC, and WhatsApp.
  • Configuring email notifications and GitHub/GitLab webhooks.
  • Integrating Jitsi for secure video conferencing.
  • Developing custom bots using the matrix-nio SDK.

Federation Governance and Policies

  • Defining federation whitelist and blacklist policies.
  • Handling room version upgrades and state resolution.
  • Setting limits and retention policies for the media repository.
  • Utilizing antispam and abuse reporting tools.

Maintenance and Scalability

  • Optimizing databases and using purge APIs for legacy data.
  • Cleaning up media storage and offloading to S3.
  • Implementing worker mode for high-traffic environments.
  • Establishing backup and disaster recovery procedures for homeserver state.

Requirements

  • Intermediate proficiency in Linux and Docker administration.
  • A foundational understanding of instant messaging protocols and federation mechanisms.
  • Familiarity with PostgreSQL and the deployment of Python-based applications.

Target Audience

  • IT teams looking to replace Slack, Teams, or Discord with a sovereign alternative.
  • Organizations that require on-premise messaging solutions with end-to-end encryption.
  • Government and defense entities necessitating federated and auditable chat capabilities.
 14 Hours

Number of participants


Price per participant

Upcoming Courses

Related Categories