4 个版本 (2 个重大更新)

使用旧的 Rust 2015

0.3.1 2018 年 2 月 15 日
0.3.0 2018 年 2 月 9 日
0.2.0 2018 年 1 月 13 日
0.1.0 2018 年 1 月 1 日

#2#resistant

AGPL-3.0

150KB
3.5K SLoC

tr1pd 构建状态 Crates.io docs.rs

状态:非常不稳定,请勿使用

tr1pd 是一个防篡改审计日志。

用法

# setup your keyring
tr1pctl init
# start the tr1pd daemon
systemctl start tr1pd
# start a sensor
./sensor01 | tr1pctl write &
# verify your logs
tr1pctl fsck
# view the logs of your current session
tr1pctl ls @..

安装

请确保已安装以下依赖项:Debian/Ubuntu: libsodium-dev libseccomp-dev libzmq3-dev,Archlinux: libsodium libseccomp zeromq,Alpine: make libsodium-dev libseccomp-dev zeromq-dev,OpenBSD: libsodium zeromq

cargo install tr1pd

设置

如果可能,使用您的包管理器设置系统(Archlinux AUR)。之后,您需要将应有权访问 tr1pctl 的用户添加到 tr1pd 组中,使用 usermod -aG tr1pd youruser

如果没有可用的包,您也可以运行独立的设置(这也推荐用于开发)。根据需要编辑路径。

# standalone configuration (~/.config/tr1pd.toml)

[daemon]
socket = "ipc:///home/user/.tr1pd/tr1pd.sock"
datadir = "/home/user/.tr1pd/"

pub_key = "/home/user/.tr1pd/pub.key"
sec_key = "/home/user/.tr1pd/sec.key"

运行 tr1pctl init 以在您的家目录中设置密钥库并在单独的终端中设置 tr1pd。通过执行 tr1pctl ping 验证一切是否正常。

写入传感器

可以使用 stdio 在任何语言中写入传感器。 tr1pctl write 是一个简单的基于行的接口,将每一行写入一个块。您也可以通过 tr1pctl write -s 65535 启用二进制模式。要监控您的 auth.log,您只需写入

tail -f /var/log/auth.log | tr1pctl write

程序说很多次“块”,这是区块链吗?

不是。tr1pd 使用类似默克尔树的构造,这些构造深受比特币的启发,但缺乏成为区块链的一些基本属性。

趣闻轶事

该协议的初始草案于2014年设计,用于周边入侵检测,以验证建筑物的完整性。2017年编写了多个原型,并在位于34C3的服务器上进行了首次部署,以确保会议托管内部的完整性。

许可证

AGPLv3+

依赖项

~25–36MB
~311K SLoC