~~~我喜欢,迎着风走的感觉~~~已习惯,孤单的像寂寞的小孩~~~





本教程能实现以下功能:
1、封锁兼容BT官方协议的客户端对基于TCP的tracker的连接。
2、封锁兼容BT官方协议的客户端向远程peer连接(封锁远程peer对本地的连接,通过NAT的阻隔实现)。

本实例限制:
1、出于性能上的考虑,本教程没有对HTTP代理进行封闭,但由于功能实现第2点存在,就算通过代理获得peer list,也无法直接连接peer。
2、出于性能上的考虑,本教程没有对sock代理进行封锁。
3、如内部网络有人使用BC、BS等并发连接比较多的客户端,猫的负担会比较重。
4、BT客户端多如繁星,可能有部分不能过滤(那样的话就要抓包具体分析了)。

-----------下边开始是教程实例---------------------*
[第一部分]
1、当然要登录到modem的管理界面了

2、打开Services的Bridge Filter页]

3、在最下方点Add添加规则
Rule ID:100 (这个只设定为100以后)
Interface:Private
Direction:Incoming
Action:Deny
Log Option:Disable
然后Submit提交

4、在刚添加的规则那一行会有一个Add Subrule的钮,点添加子规则
表格顶上要打开enable
Subrule ID:1
Offset:14
Offset From:TCP Data
Mask:FFFFFFFFFFFFFFFFFF (18个F)
Cmp.Type:eq
Lower value:696E666F5F68617368
然后Submit提交

5、点刚添加的规则(100那个)那一行的笔型图标,打开modify窗口,把Status置为Enable,submit提交

[第二部分]
6、在最下方点Add再添加规则
Rule ID:101 (这个只设定为100以后)
Interface:Private
Direction:Incoming
Action:Deny
Log Option:Disable
然后Submit提交

7、在刚添加的规则那一行会有一个Add Subrule的钮,点添加子规则
表格顶上要打开enable
Subrule ID:1
Offset:0
Offset From:TCP Data
Mask:FFFFFFFFFFFFFFFFFFFFFF (22个F)
Cmp.Type:eq
Lower value:13426974546F7272656E74
然后Submit提交

8、点刚添加的规则(101那个)那一行的笔型图标,打开modify窗口,把Status置为Enable,submit提交

[最后]
9、回到Bridge Filter的主页面,在最上边,把Default Action设置为Accept,设置Enable,然后在页面最下方点Submit

规则已经生效了,最后别忘了保存。
------结束-------

------命令行方式---------
create pfraw rule entry ruleid 100 ifname eth-0 dir in enable log disable act deny
create pfraw subrule entry ruleid 100 subruleid 1 start tcpd offset 14 mask 0xFFFFFFFFFFFFFFFFFF cmpt eq 0x696E666F5F68617368 enable
create pfraw rule entry ruleid 101 ifname eth-0 dir in enable log disable act deny
create pfraw subrule entry ruleid 101 subruleid 1 start tcpd offset 0 mask 0xFFFFFFFFFFFFFFFFFFFFFF cmpt eq 0x13426974546F7272656E74 enable
modify pfraw global enable accept
commit

0 Comments:

Post a Comment



相关文章