通过 VPN 的 Debian CLI 洪流程序

Ale*_*yan 5 debian vpn bittorrent openvpn socks

有没有人成功设置了一个只能通过 VPN 传输所有流量的 CLI(没有 Web UI!)torrent 客户端?(通过特定接口或 SOCKS 代理发送所有流量)?

我有一个Private Internet Access订阅,想用它在我的无头 Debian 7 机器上下载 Torrent 文件,而不必在我的系统上传输所有流量。

jas*_*yan 4

我推荐的方法是通过 VPN (SSH除外)路由所有流量;这为您的隐私提供了更多保护,并显着降低了任何个人信息泄露的风险。

这种方法有几个独立的组成部分。

种子客户端

rtorrent是一个优秀的 torrent 客户端,可以在无头环境中运行。在tmux会话中运行它,以便您可以随意连接和断开连接。

此外,您可以使用画布颜色补丁来修补 rtorrent。

路由流量

本质上,您希望为特定端口(您的 SSH 端口,此处假设为非标准 666)和接口 (eth0) 上的所有流量设置数据包过滤。您可以使用 发现您的网关(此处为 192.168.1.1)route -n。您还需要iproute2为此安装:

ip rule add fwmark 65 table novpn
ip route add default via 192.168.1.1 dev eth0 table novpn
ip route flush cache
iptables -t mangle -A OUTPUT -p tcp --sport 666 -j MARK --set-mark 65
iptables -A INPUT -i tun0 -p tcp -m tcp --dport 666 -j DROP
Run Code Online (Sandbox Code Playgroud)

一旦完成所有设置并正常工作,您需要编写脚本以在启动时运行。见本. D 在 Serverfault 上的回答,提供完整的演练。

浏览

Surfraw非常适合命令行浏览,并且可以交给w3m来加载返回的结果。

感谢Gilles 在这里的出色回答,可以在 w3m 中绑定一个密钥来触发来自 rtorrent wiki 的磁铁脚本。因此,在您的 w3m 配置中使用以下内容:

extbrowser /home/alex/bin/magnets %s
Run Code Online (Sandbox Code Playgroud)

当您导航到磁力链接时,您可以将其发送到 rtorrent。详细信息请参阅这篇文章。