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.
Duration 21 hours
Course Outline
Introduction to Stalwart
- Overview of Stalwart and its design philosophy
- Architecture of the single Rust binary
- Comparison against traditional mail stacks
- Licensing models: AGPL-3.0 and Enterprise
Installation and Initial Setup
- System requirements and supported platforms
- Deployment using Docker and Docker Compose
- Installing on Linux via binary distribution
- Selecting appropriate database backends
- Utilizing bootstrap mode and the setup wizard
Core Protocols and DNS
- Configuring SMTP for both inbound and outbound traffic
- Implementing IMAP4 and JMAP for mail access
- Supporting POP3 for legacy client compatibility
- Setting up DNS records: MX, SPF, DKIM, DMARC
- Automating DKIM key rotation processes
Security and Authentication
- Implementing TLS with ACME certificate provisioning
- Securing transport with DANE and MTA-STS
- Configuring authentication backends: internal, LDAP, OIDC, SQL
- Enabling OAuth 2.0 and two-factor authentication
- Defining access control lists and permissions
- Applying rate limiting and automated IP blocking
Spam and Phishing Protection
- Examining the built-in spam filter architecture
- Utilizing AI and LLM-driven classification methods
- Implementing statistical Bayesian classifiers
- Integrating DNS blocklists and Pyzor
- Deploying greylisting and spam traps
- Protecting against phishing and homographic attacks
Storage and Search Backends
- Choosing storage options: RocksDB, PostgreSQL, MySQL, SQLite
- Integrating cloud blob storage with S3 and Azure
- Optimizing performance with Redis caching
- Configuring full-text search: built-in vs external engines
Collaboration Services
- Managing CalDAV and JMAP Calendars
- Handling CardDAV and JMAP Contacts
- Implementing WebDAV file storage
- Sharing resources using ACLs and JMAP Sharing
Multi-Tenancy and User Management
- Ensuring domain and tenant isolation
- Managing user accounts and groups
- Configuring mailing lists and aliases
- Setting up subaddressing and catch-all addresses
- Applying disk quotas per user and tenant
Administration and Monitoring
- Utilizing the WebUI dashboard and statistics tools
- Using the CLI for scripting and automation tasks
- Managing the SMTP queue effectively
- Collecting metrics via OpenTelemetry and Prometheus
- Automating events using Webhooks
Clustering and High Availability
- Implementing peer-to-peer cluster coordination
- Building clusters with Kafka and Redis
- Utilizing read replicas and sharded storage
- Deploying on Kubernetes
- Designing for fault tolerance
Advanced Configuration
- Writing scripts using the Sieve language
- Integrating MTA hooks and milters
- Configuring routing rules and virtual queues
- Performing envelope rewriting
Migration and Integration
- Migrating from Postfix and Dovecot environments
- Migrating from Microsoft Exchange
- Implementing Autoconfig and Autodiscover
- Managing DNS records automatically
- Executing API-driven declarative deployments
Requirements
- Proficiency with the Linux command line
- A foundational understanding of DNS concepts
- Knowledge of email fundamentals is beneficial but not mandatory
Target Audience
- System administrators
- DevOps and platform engineers
- IT infrastructure specialists
- Professionals managing or planning self-hosted email deployments