synapse
SHA-256Element 出品的开源 Matrix 家用服务器,让你自托管安全、可联邦的实时通信平台。
自托管私有通信服务器,支持加密和联邦。
核心功能
- 完全自托管:数据掌握在自己手中,不受第三方限制
- 联邦支持:可与其他 Matrix 服务器互联,实现全球通信
- 端到端加密:默认 E2EE,保障消息隐私
- 丰富的 API:管理、身份、推送、统计等 REST API
- 多客户端兼容:支持 Element 官方客户端及第三方 Matrix 应用
避坑指南
- •官方不提供免费技术支持,社区支持仅通过 Matrix 频道(非 GitHub Issues)。部署前需具备一定的 Linux 和数据库管理能力。资源消耗较高(推荐至少 2GB 内存)。联邦功能需要正确配置 .well-known 和证书。商业许可需联系 Element 购买。
适用场景
- 企业内部协同通信,替代 Slack/Teams 并保留数据主权
- 社区/开源项目搭建公开的讨论平台
- 注重隐私的个人或家庭即时通讯枢纽
- 教育和研究机构搭建安全的学术交流网络
详细介绍
Synapse 是 Element 公司开发并维护的 Matrix 协议官方参考实现(家用服务器)。它让你能够自托管安全、可联邦的实时通信平台,支持端到端加密、即时消息、语音/视频通话、文件共享和协作。采用 AGPL-3.0 或 Element 商业许可双授权。Synapse 是 Element Server Suite (ESS) 的核心,也可独立部署。它需要 PostgreSQL 数据库、推荐搭配反向代理使用,提供丰富的管理 API。相比同类产品 Dendrite,Synapse 功能更完整、社区文档更丰富,但资源占用较高,适合需要稳定成熟方案的团队。部署前请确保你有运维经验,官方社区支持有限,商业订阅可获得 SLA 保障。
常见问题与排障 (2)
故障排除为什么启用sticky events后,Synapse mautrix bridge加密会失败并出现'UnboundLocalError: cannot access local variable now_token'?
这是 Synapse v1.150.0 至 v1.152.1 版本中的一个已知错误,其中粘性事件会在同步处理过程中引发 Python 未绑定局部变量错误。该错误会导致 mautrix-signal/WhatsApp 等桥接器无法接收解密密钥。临时解决方案:将 Synapse 降级至 v1.149.0 版本。该问题的永久修复正在相关 GitHub Issue #19409 中跟进。
故障排除为什么当 pos offset 保持不变时,Sliding Sync 不会发送新请求的 required_state 事件?
Synapse 1.136.0(及更早版本)中存在已知错误:对 required_state 的更改会被忽略,直到有其他房间活动发生。解决方法:在房间中触发任意事件(例如发送消息)以强制同步。永久修复正在通过 PR #19792 重新引入。
标签
快速上手
安装软件
根据你的发行版安装对应的包(dpkg / rpm / AppImage)
步骤1:确保服务器满足要求(2GB+ 内存,Ubuntu/Debian 推荐)
步骤2:安装 PostgreSQL、Python 3.8+ 和依赖(参考官方文档)
步骤3:下载 Synapse 最新版本(pip 或 Docker)并配置 homeserver.yaml
- 步骤1:确保服务器满足要求(2GB+ 内存,Ubuntu/Debian 推荐)
- 步骤2:安装 PostgreSQL、Python 3.8+ 和依赖(参考官方文档)
- 步骤3:下载 Synapse 最新版本(pip 或 Docker)并配置 homeserver.yaml
已提供 SHA-256 校验码,下载后可自行核对文件完整性
该校验码提取自 GitHub 官方 Release 页面
SHA256 校验码
4a891313af2860371b8e8b2aeabf12dad56ecf54129a9bfc30e329dd7b9b2a0e该校验码提取自 GitHub Release 页面,下载后请自行核对文件完整性
本平台所有 SHA-256 校验码均提取自项目在 GitHub 官方 Release 页面发布的文件,未做任何修改。你可以通过 GitHub Releases 页面自行验证。
开源透明
查看 GitHub 源码卸载说明
停止服务,删除相关目录(如 /opt/venvs/synapse),移除数据库(psql 删除 synthia 数据库及用户),清除反向代理配置。
无额外依赖
下载后即可直接使用,无需安装其他运行环境
遇到问题?查看下方 FAQ
2 FAQs