#ftp-server #ftp #extensible #safe #modern #storage #back-end

firetrap

Rust 编写的现代化、安全且可扩展的 FTP 服务器库

1 个不稳定版本

使用旧的 Rust 2015

0.1.0 2018 年 12 月 5 日

#19 in #ftp-server

MIT/Apache

96KB
1.5K SLoC

firetrap

Firetrap 帮助您使用 Rust 创建现代化、安全且可扩展的 FTP 服务器。

由于其可插拔的认证和存储后端(例如本地文件系统、Google Buckets),它比传统的 FTP 服务器更灵活,是云服务的完美选择。

目前正处于积极开发中,不建议用于生产环境。 API 可能会更改

先决条件

您需要 Rust 来构建 firetrap。除了操作系统和 libc 外,没有其他运行时依赖。

入门

如果您已经安装了 Rust 和 cargo,请使用以下命令创建您的项目:

cargo new my_project

然后在 Cargo.toml 中将 firetrap 添加到项目的依赖项

[dependencies]
firetrap = "*"

现在您可以为您的服务器编写代码了!将以下内容添加到 src/main.rs

extern crate firetrap;

fn main() {
  let server = firetrap::Server::with_root(std::env::temp_dir());
  server.listen("127.0.0.1:2121");
}

现在您可以使用 cargo run 运行您的服务器,并使用您最喜欢的 FTP 客户端连接到 localhost:2121 :)

有关更多示例,请查看 examples 目录。

贡献

首先,感谢您对 firetrap 的贡献兴趣!如果您遇到任何问题,请随时创建 github issue,提出功能请求,或者只是想这样做:)

在存储库的根目录下运行 make help 以查看可用的 make 命令。

许可证

您可以根据自己的喜好,在 MIT 或 Apache-2.0 许可证的条款下使用、修改和分发此软件。

依赖项

~7MB
~115K SLoC