Lonewolf 0.3 – A standalone XMPP server written in Rust
Lonewolf 0.3, a standalone XMPP server built with Rust, has dropped with significant updates to its federation and security capabilities. This release focuses on bolstering secure communication with certificate-authenticated federation and direct TLS, alongside adding more robust desktop client features. For the technically inclined, it's a peek into a modern, Rust-native approach to a foundational internet protocol, still under active development.
The Lowdown
Lonewolf, an XMPP server crafted in Rust, has unveiled its 0.3.0 release, bringing a suite of enhancements aimed at improving secure federation, direct TLS communication, and client functionality. While still in its pre-1.0 phase, this update represents a significant stride towards a fully compliant and robust single-node XMPP solution, with a clear roadmap for future development including full XMPP compliance and clustering.
- Federation Improvements: Introduces certificate-authenticated federation, enabling secure message, presence, and roster exchanges with other XMPP servers, requiring trusted certificates and SASL EXTERNAL. It supports bidirectional connections (XEP-0288) and stream limits advertisement (XEP-0478) for efficient peering.
- Enhanced Security & TLS: Direct TLS (XEP-0368) is now implemented, providing both client and server listeners, and integrates STARTTLS/direct-TLS federation discovery. The server also offers opt-in SCRAM-SHA-512 authentication, based on an expired Internet-Draft.
- Client Feature Additions: Incorporates Private XML Storage (XEP-0049) for client settings and legacy bookmarks, and Software Version (XEP-0092) for domain software queries, with privacy-focused defaults.
- Operational Updates: Federation checks CA-published CRLs over HTTP by default, with configurable options to disable or use local CRLs. It allows selecting CA-advertised certificate profiles (e.g., short-lived certificates) and has adjusted the default client stanza limit to 256 KiB.
- Rust-native and Build Process: The project remains Rust-native, providing clear instructions for building from source on Linux or macOS using
cargo.
This release solidifies Lonewolf's position as a promising, modern XMPP server, particularly for those seeking a self-hosted, Rust-powered communication solution with a strong focus on security and standards compliance.