Cara blokir torrent dengan iptables
Kali ini saya diminta pertolongan teman dalam VPSnya yang digunakan untuk OpenVPN server yakni untuk mencegah ada user yang menggunakan torrent didalamnya. Karena alasan bandwidth, biaya dan resiko hal ilegal akhirnya dibatasi dengan cara diblokir.
Saya peringatkan dulu untuk setting OpenVPN saya sendiri masih awam, dan solusi yang saya pakai disini tidak menyentuhnya sama sekali.
Jadi alat yang saya gunakan tetaplah firewall tercinta si iptables
karena masih pakai CentOS 6 servernya. Konsep pemblokiran yang saya terapkan adalah memblokir transfer data apabila ada kata kunci tertentu yang dipakai oleh protokol BitTorrent.
#Untuk DHT
iptables -A FORWARD -m string --string "get_peers" --algo bm -j DROP
iptables -A FORWARD -m string --string "announce_peer" --algo bm -j DROP
iptables -A FORWARD -m string --string "find_node" --algo bm -j DROP
#Untuk tracker BitTorrent
iptables -A FORWARD -m string --algo bm --string "BitTorrent" -j DROP
iptables -A FORWARD -m string --algo bm --string "BitTorrent protocol" -j DROP
iptables -A FORWARD -m string --algo bm --string "peer_id=" -j DROP
iptables -A FORWARD -m string --algo bm --string ".torrent" -j DROP
iptables -A FORWARD -m string --algo bm --string "announce.php?passkey=" -j DROP
iptables -A FORWARD -m string --algo bm --string "torrent" -j DROP
iptables -A FORWARD -m string --algo bm --string "announce" -j DROP
iptables -A FORWARD -m string --algo bm --string "info_hash" -j DROP
Solusi ini sederhana juga kasar, yang penting tujuan tercapai. Tapi tetap bisa diakali misal dengan enkripsi trafik atau menggunakan port 80 (HTTP) misalnya. Tapi cukup untuk mengatasi 70% usaha torrent. Dan kalau buka situs torrent bisa gagal juga karena didalamnya mengandung kata – kata diatas, efek samping cara tidak elegan ini memang.
Tapi kalau anda ingin secara serius memblokir BitTorrent maka bisa cari solusi yang menggunakan Layer 7 atau DPI (Deep Packet Inspection), dan untuk yang ini masih diluar kemampuan saya sekarang. Cuma sekedar tahu saja.