我运行VPN服务并且我一直试图找到一种方法来阻止流经服务器的流量,以便客户不会使用VPN服务进行托管。起初我尝试使用iptables来阻止用于torrenting的常用端口以及字符串匹配,但最终做的唯一事情就是减慢连接到对等端的启动过程。这是因为torrent客户端将在它们找到可用端口之前进行端口跳转。
在网上浏览之后,我得出的结论是,唯一可靠的阻止洪流流量是通过深度数据包检测。
我在其中一个VPN服务器上安装了一个由ndpi和内核模块组成的服务,以便在ndpi检测到torrent协议后,可以将其传递给Iptables进行删除。
在此处找到:https://github.com/betolj/ndpi-netfilter
通过ntopng网络界面,它正确检测到洪流流量,但iptables似乎没有丢弃数据包,因为洪流流量仍然可以完全正常。
我做错了什么,或者是否有更好的方法/软件来执行流量整形?
答案 0 :(得分:0)
#Block Torrent
iptables -A FORWARD -m string --algo bm --string "BitTorrent" -j LOGDROP
iptables -A FORWARD -m string --algo bm --string "BitTorrent protocol" -j LOGDROP
iptables -A FORWARD -m string --algo bm --string "peer_id=" -j LOGDROP
iptables -A FORWARD -m string --algo bm --string ".torrent" -j LOGDROP
iptables -A FORWARD -m string --algo bm --string "announce.php?passkey=" -j LOGDROP
iptables -A FORWARD -m string --algo bm --string "torrent" -j LOGDROP
iptables -A FORWARD -m string --algo bm --string "announce" -j LOGDROP
iptables -A FORWARD -m string --algo bm --string "info_hash" -j LOGDROP
来源:http://www.unixmen.com/how-to-block-bittorrent-traffic-on-your-linux-firewall/