这让我抓狂,但我不知道如何为 transmission-daemon 配置 UFW。
我在 UFW 上有以下规则
> 51412 ALLOW Anywhere
> 64000:64999/udp ALLOW Anywhere
> 64000:64999/tcp ALLOW Anywhere
我的 ISP 盒上有以下 NAT 规则。此盒的 FW 可以禁用或启用,但不起作用。 OrangeBox NAT 规则
我尝试了以下两种传输方式
"peer-port": 64931,
"peer-port-random-high": 64999,
"peer-port-random-low": 64000,
"peer-port-random-on-start": true,
和
"peer-port": 51412,
"peer-port-random-high": 64999,
"peer-port-random-low": 64000,
"peer-port-random-on-start": false,
结果:如果启用了 UFW,我会在 transmission.log 中收到“无法连接到跟踪器”的消息。torrent 无法下载或上传(我正在下载 kubuntu 映像以进行测试)。
如果禁用 UFW,一切正常。
我也尝试使用 UPNP,如果 UFW 被禁用,它可以工作,如果 UFW 被启用,则不工作。
ufw 的日志中没有任何内容。我可以看到从端口 51412 到公共 IP 的一些“允许”,但没有答案(也没有阻止或允许)。但是,一旦我禁用 UFW,我就可以在 transmission.log 中看到我已连接到跟踪器并且我获得了 50 个对等点。
因此,UFW 显然阻止了某些东西,但我不明白是什么:
- 如果我不想使用 UPNP,我的规则有什么问题?
- 如果我想使用 UPNP,缺少什么规则?(允许端口 1900 和 1901 不起作用)
谢谢您的任何提示!
答案1
好的,我找到了问题,它是 UFW 的“before.rules”中的一条规则。
请注意,由于之前的规则,没有关于丢弃数据包的日志......
编辑:评论后有更多详细信息。
我之前曾使用 UFW 和传输进行过拆分隧道工作。因此,我在 /etc/ufw/before.rules 文件中创建了一条规则。此文件包含在 UFW 特定规则之前应用的 IPtables 格式的规则。因此,据我了解,这些规则(在 before.rules 文件中)是由 IPTables 应用的,而不是 UFW 本身。这就是为什么您在 /var/log/ufw.log 中看不到有关此规则丢弃的流量的任何信息,因为不是 UFW 在处理它们。我删除了此规则,一切都按预期工作……
所以伙计们,要小心遵守 UFW 中的前后规则!