一个添加端到端加密功能的Matrix代理守护进程。
项目描述
独角兽
独角兽是一个端到端加密感知的Matrix反向代理守护进程。独角兽充当一个好人中间人,为您处理加密。
消息在独角兽内部透明地加密和解密。
安装
在安装独角兽之前,需要安装Olm C库。
如果您的发行版提供了libolm的软件包,最好使用那些,注意需要libolm的较新版本(3.1+)。如果您的发行版没有提供软件包,则需要从源代码构建。请参阅Olm的readme了解如何从源代码构建C库。
安装独角兽与通常的python软件包类似
python setup.py install
独角兽也可以在pypi找到
pip install pantalaimon
独角兽包含一个基于dbus的UI,可以用来控制守护进程。基于dbus的UI完全是可选的,并且需要与守护进程一起安装
pip install pantalaimon[ui]
请注意,不能使用pip安装man页面。
macOS安装
例如,在macOS上,这意味着
brew install dbus
perl -pi -e's#(<auth>EXTERNAL</auth>)#<!--$1-->#' $(brew --prefix dbus)/share/dbus-1/session.conf
brew services start dbus
# it may be necessary to restart now to get the whole OS to pick up the
# existence of the dbus daemon
git clone https://gitlab.matrix.org/matrix-org/olm
(cd olm; make)
git clone https://github.com/matrix-org/pantalaimon
(cd pantalaimon; CFLAGS=-I../olm/include LDFLAGS=-L../olm/build/ python3 setup.py install)
export DBUS_SESSION_BUS_ADDRESS=unix:path=$(launchctl getenv DBUS_LAUNCHD_SESSION_BUS_SOCKET)
cd pantalaimon
DYLD_LIBRARY_PATH=../olm/build/ pantalaimon -c contrib/pantalaimon.conf
# for notification center:
git clone https://github.com/fakechris/notification-daemon-mac-py
# if you have django's `foundation` library installed and your filesystem
# is case insensitive (the default) then you will need to `pip uninstall foundation`
# or install PyObjC in a venv...
pip install PyObjC daemon glib dbus-python
cd notification-daemon-mac-py
./notify.py
Docker
可以为Pantalaimon构建实验性的Docker镜像,主要用于在机器人中使用。
docker build -t pantalaimon .
# Create a pantalaimon.conf before running. The directory mentioned in the
# volume below is for where Pantalaimon should dump some data.
docker run -it --rm -v /path/to/pantalaimon/dir:/data -p 8008:8008 pantalaimon
上述示例中的Docker镜像可以构建自任何分支或标记,无需克隆存储库,只需使用此语法即可
docker build -t pantalaimon github.com/matrix-org/pantalaimon#master
以下是一个Docker使用的示例pantalaimon.conf
[Default]
LogLevel = Debug
SSL = True
[local-matrix]
Homeserver = https://matrix.org
ListenAddress = 0.0.0.0
ListenPort = 8008
SSL = False
UseKeyring = False
IgnoreVerification = True
用法
虽然独角兽是一个守护进程,但它意味着要以与它代理的应用相同的用户运行。它不会自动验证设备,除非配置为这样做,并且需要用户交互来验证、忽略或黑名单设备。有关独角兽的更完整描述,请参阅man页面。
潘塔莱蒙运行需要配置文件。配置文件指定潘塔莱蒙要连接的一个或多个 homeservers。
潘塔莱蒙的最小配置如下所示
[local-matrix]
Homeserver = https://localhost:8448
ListenAddress = localhost
ListenPort = 8009
配置文件应放在 ~/.config/pantalaimon/pantalaimon.conf
。
关于潘塔莱蒙配置的完整文档可以在 手册页面 pantalaimon(5)
中找到。
现在潘塔莱蒙已配置好,可以运行了
pantalaimon --log-level debug
运行守护进程后,将您的客户端配置为连接到守护进程而不是 homeserver。守护进程默认监听 localhost 和端口 8009。
请注意,登录到守护进程是启动用户同步循环的必要条件。之后,客户端可以使用登录用户的有效访问令牌连接。每个 homeserver 支持多个用户。
为了方便,提供了一个 systemd 服务文件。
为了控制守护进程,提供了一个名为 panctl
的交互式实用工具。
panctl
可用于验证、黑名单或忽略设备,导入或导出会话密钥,或检查我们与之共享加密房间的用户的设备。
项目详情
下载文件
下载适用于您的平台文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。
源分布
构建分布
pantalaimon-0.10.5.tar.gz 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 98fadeb9966295b99e3cf82c5b6006a22c6a2518d6b2db4efa1afc216078c5b7 |
|
MD5 | ce5889fdbb6071085dfc70276010799e |
|
BLAKE2b-256 | 8606f7b5507adec25b73c46ec79ab5b1dd6d76c7faadb854f9602da79ef92238 |
pantalaimon-0.10.5-py3-none-any.whl 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7eda795e8b61a0f1bb69e1fc0662d1691dffacf70fafda76c8a1f6e671e0d2b7 |
|
MD5 | e568a22832eac8c86527a79427e52510 |
|
BLAKE2b-256 | 5933663f8a67c273a2b4e56be9a3b8abe67b50a59e584b03e316d5edb06d679a |