2 个稳定版本
1.2.3 | 2024 年 8 月 7 日 |
---|---|
1.2.2 | 2024 年 4 月 17 日 |
#598 在 加密学
143 每月下载量
用于 aft
30KB
387 行
aft
aft(高级文件传输)是一款简单、安全的工具,用于在两个当事人之间轻松高效地共享文件。支持 Windows、Linux 和 macOS。
特性
- 加密。
- 快速。
- 轻量级(对 RAM 和存储空间)。
- 安全性是首要任务。
- 对等模式。
- 中继模式。
- 阻止发送者。
- 不进行 IP 自查找。
- fail2ban 支持。
模式
此程序有几个模式可以使用
对等模式
发送者直接连接到接收者,传输过程直接进行。
中继模式
允许使用中继而不是两个设备直接连接。这带来了一些好处,例如
- 接收端无需端口转发。
- 接收者和发送者之间没有直接接触。
- 更好的隐私 - 不共享 IP。
使用方法
aft - file transfer done easily
Usage:
aft sender [--address <address>] [--port <port>] [--identifier <identifier>] <filename>
aft receiver [-p <port>]
aft download -a <address> [-p <port>] [-i <identifier>]
aft relay [-p <port>]
aft <mode> [options ...]
Positional arguments:
mode
Optional arguments:
-a --address ADDRESS Address.
-p --port PORT Port.
-i --identifier IDENTIFIER Identifier to find the receiver. Used only when its not P2P.
-v --verbose VERBOSE Verbose level. Default is 1 (warnings only). Range 1-3.
-c --config CONFIG Config location.
-v --version Show version.
-e --encryption ALGORITHM Possbile values: [AES128, AES256].
安装
使用 cargo 安装
运行 cargo install aft
,然后你应该可以立即运行程序。
自动安装
运行以下命令安装 aft:curl --proto '=https' -sf https://raw.githubusercontent.com/dd-dreams/aft/master/install.sh | sudo sh -s -- install
。
如果您想修改配置,可以在您的家目录中创建一个新的文件(Windows 为 %USERPROFILE%
,Unix 为 ~/
)在 .aft
目录中,命名为: "config"。请参阅 docs/CONFIG.md
了解更多信息。
运行以下命令来卸载aft: curl --proto '=https' -sf https://raw.githubusercontent.com/dd-dreams/aft/master/install.sh | sudo sh -s -- uninstall
。
手动安装
导航到发布页面并选择您的平台。对于Windows,您可以通过双击来导出存档内容。对于Linux和macOS,您可以使用gzip
来提取内容。gzip
默认情况下应该包含在内。运行:gzip -dN <archive>
。您可以将程序导出到任何您喜欢的地方,但请确保将其添加到PATH,以便您可以轻松访问。
Systemd设置
- 将
aft
程序复制到/usr/local/bin/
。 - 将
aft-relay.service
复制到/etc/systemd/system/
。 - 使用以下命令启动程序:
sudo systemctl start aft-relay
。
请注意,此服务需要一个名为aft
的新用户。如果您想以root身份运行服务,请删除User=aft
行,尽管出于安全原因不建议这样做。
此服务仅运行中继模式。
fail2ban设置
- 将
assets/fail2ban/aft-relay-filter.conf
复制到/etc/fail2ban/filter.d/
。 - 将
assets/fail2ban/aft-relay.conf
复制到/etc/fail2ban/jail.d/
- 重启服务:
sudo systemctl restart fail2ban
您可以在aft-relay.conf
中修改bantime和maxretries。
注意
fail2ban仅在中继模式下工作。fail2ban在Windows上不工作。
构建
构建非常简单:运行cargo build --release
,输出将位于target/release/aft
。
许可证
在以下任一许可证下授权:
- Apache License,版本2.0
- MIT许可证。
依赖项
~2.7-4MB
~80K SLoC