Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
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