6 个版本
0.3.0 | 2024 年 3 月 13 日 |
---|---|
0.2.0 | 2024 年 3 月 3 日 |
0.1.4 | 2024 年 2 月 25 日 |
在 网络编程 中排名第 1421
每月下载 319 次
1MB
204 行
Tor Traffic Router 🛡️
欢迎使用 Tor Traffic Router,这是一个强大的 Rust 包,旨在使将 Tor 集成到您的 Rust 应用程序尽可能无缝。该包注重隐私,确保您的网络请求通过 Tor 网络增加了一层匿名性。无论您是在开发需要保密通信的新应用,还是想为现有项目添加隐私功能,Tor Traffic Router 都能满足您的需求。
功能 🌟
- 自动安装 Tor:无需费力即可在您的机器上安装 Tor,无论您使用的是 Windows、macOS 还是 Linux。
- Tor 管理:易于使用的功能,可以检查是否已安装 Tor,并根据需要启动或停止 Tor 服务。
- 增强隐私的 HTTP 请求:利用配置为通过 Tor 路由的 reqwest 库,确保您的应用程序的网络请求是私密的和安全的。
- 灵活配置:可以直接从您的 Rust 代码中修改 Tor 配置文件,允许自定义 Tor 服务,如隐藏服务。
入门 🚀
先决条件
在深入了解 Tor Traffic Router 之前,请确保您的机器上已安装 Rust。此包与 Rust 版本 2021 兼容,并且除了 Rust 工具链之外无需任何其他设置。
安装
将 Tor Traffic Router 添加到您的 Cargo.toml
[dependencies]
Tor_Traffic_Router = "0.3.0"
基本用法
以下是一个快速示例,帮助您入门
use Tor_Traffic_Router::{config_file, is_tor_installed_unix, is_tor_installed_windows, install_tor, stop_tor, tor_proxy};
use std::env;
use reqwest::Client;
use std::error::Error;
#[tokio::main]
async fn main() -> Result<(), Box<dyn Error>> {
// Configure Tor with a new hidden service
let hidden_service_config = format!(
"HiddenServiceDir {}\nHiddenServicePort 80 127.0.0.1:{}",
env::current_dir().unwrap().to_str().unwrap(),
8080
);
config_file("etc/tor/torrc", &hidden_service_config);
// Ensure Tor is installed and start it
let client = tor_proxy();
// Make a privacy-focused request
let res = client.get("http://check.torproject.org/api/ip").send().await?;
println!("Response: {:?}", res.text().await?);
stop_tor();
Ok(())
}
文档 📖
有关每个函数和配置选项的更详细信息,请参阅代码中的内联文档。我们的 GitHub 仓库还包括额外的示例和用法场景,以帮助您无缝地将 Tor Traffic Router 集成到项目中。
/* //////////////////////////////////////////////////////////// */
/* // // */
/* // _______ ____ _____ ____ _ // */
/* // |__ __/ __ \| __ \ / __ \ (_) // */
/* // | | | | | | |__) | | | | |_ __ _ ___ _ __ // */
/* // | | | | | | _ / | | | | '_ \| |/ _ \| '_ \ // */
/* // | | | |__| | | \ \ | |__| | | | | | (_) | | | | // */
/* // |_| \____/|_| \_\ (_)____/|_| |_|_|\___/|_| |_| // */
/* // // */
/* //////////////////////////////////////////////////////////// */
示例 🚧
请忽略上面的 gif 中的警告和错误,这只是代码运行的演示
Response: "{\"IsTor\":true,\"IP\":\"91.219.239.166\"}"
贡献 ✨
贡献使开源社区成为一个如此出色的学习、灵感和创造的地方。您所做出的任何贡献都将被 高度重视。如果您有任何改进建议,请 fork 仓库并创建一个 pull request。您还可以简单地打开一个带有“增强”标签的问题。别忘了给项目点个赞!再次感谢!
许可证 📄
采用MIT许可证发布。更多信息请参阅LICENSE
。
致谢 🙏
- 特别感谢Tor项目使在线隐私对每个人可及。
- 感谢Rust社区提供了一个使安全和高效编程成为可能的环境。
加入我们的旅程,让互联网成为每个人更安全、更私密的场所。快乐编码!🎉
依赖项
~6–37MB
~582K SLoC