#host #malware #unbound #generate #adware

app tenshi

为精选主机文件生成 Unbound 本地区

8 个版本

0.2.2 2019 年 6 月 11 日
0.2.1 2019 年 5 月 20 日
0.1.4 2019 年 5 月 20 日

#4#unbound

GPL-3.0 或更高版本

16KB
86

Tenshi

crates.io aur

Tenshi 是一个快速 CLI 工具,用于获取精选主机文件,从中生成 Unbound 本地区条目,并将它们保存到 /etc/unbound/local-blocking-data.conf

目前,仅使用 Steven Black 的主机文件

Tenshi 主要为 Linux 编写,但也可能在 BSD 上运行。它尚未在 Macintosh 上测试,可能不会在 Windows 上运行。

您需要在 Unbound 配置中添加 include: "local-blocking-data.conf" 以使用结果。

安装

先决条件

使用您喜欢的软件包管理器安装 rustuprust。Tenshi 已知可以与 Rust 1.35 一起构建。

Tenshi 必须由具有对 /etc/unbound/local-blocking-data.conf 写入权限的用户运行。

使用 Cargo 构建

cargoinstall tenshi

从源码构建

git clone https://github.com/flacks/tenshi.git
cd tenshi
git checkout $(git tag | tail -n 1)
cargo build --release
cargo install --path .

Arch Linux

git clone https://aur.archlinux.org/tenshi-rs.git
cd tenshi-rs
makepkg -i

摘要

如果使用 Cargo 安装或从源码构建,请确保 Cargo 的 bin 目录位于您的 PATH 中。

运行 tenshi 并遵循提示。对于无提示执行,请将 true | 预先附加到命令。

待办事项

  • 实际上 支持不同的主机文件
    • 上游变体
  • 自定义主机文件支持
  • 参数支持
  • 静默模式
  • 支持更改数据目的地
  • 模块化代码
  • 检测主机文件是否保持不变
  • 通知用户主机文件更新,需要 Unbound 重新加载

致谢

https://github.com/gbxyz/unbound-block-hosts 的启发

#beginners 中的一个友好的 Rust Discord 服务器用户

依赖关系

~22MB
~476K SLoC