Name | Modified | Size | Downloads / Week |
---|---|---|---|
ipblocklist-1.4.win32bin.tar.gz | 2016-08-04 | 583.2 kB | |
ipblocklist-1.3.tar.gz | 2016-07-28 | 323.9 kB | |
ipblocklist-1.2-bin.7z | 2016-07-27 | 230.3 kB | |
ipblocklist-1.2.tar.gz | 2016-07-27 | 323.1 kB | |
README.txt | 2016-07-27 | 3.2 kB | |
ipblocklist-1.1.tar.gz | 2016-07-26 | 29.8 kB | |
ipblocklist-1.0.zip | 2016-07-26 | 28.8 kB | |
Totals: 7 Items | 1.5 MB | 0 |
Ipblocklist =========== Ipblocklist is a small tool to download the IP block lists from iblocklist.com, which are usually used for P2P software like Transmission, uTorrent and Vuze. Ipblocklist can also convert the Transmission like format to IPSET format for the kernel level IP filter, which helps the security of the whole system. Ipblocklist is written in C. The release package includes the source codes, the precompiled libraries and a static linked executable program for Windows console. How to Build ============ Ipblocklist requires zlib and libcurl development libraries installed first. Then in the command line: $ make If you don't want libcurl you can use wget to access URL instead. Just edit the Makefile and comment out this line: NETTOOL = -DCFG_LIBCURL then $ make In the Raspberry Pi =================== I finally figured out how to use it in the Raspberry Pi. My Raspberry Pi has installed the ipset but not installed gcc toolchains to save space. My local computer has not installed the ipset nor the ARM gcc, just installed the default toolchains. I don't want to install the development tool in the tiny Pi box and neither want to install a full scale crossplatform tool chains just for this utitlity tool. So I simply build the executable in my local machine and then download the block list to the ipset, for example: $ ipblocklist -d1,3 -c -i -s MYIPSET It will centainly fail because there's no ipset and you are not root either. But ipblocklist will simulate the process so you will find outputs like this: Downloading 'Bluetack LVL 2': .................................................. Uncompressing: .................................................. Downloading 'Bluetack Microsoft': .................................................. Uncompressing: .................................................. sh: 1: ipset: not found IPSET is not found. [Simulating] ipset create -exist MYIPSET_TMP hash:net maxelem 84340 ipset flush MYIPSET_TMP ipset restore < iblock_20160726224212_ipset.txt ipset create -exist MYIPSET hash:net maxelem 84340 ipset swap MYIPSET MYIPSET_TMP ipset destroy MYIPSET_TMP iptables -A INPUT -m set --match-set MYIPSET src -j ULOG --ulog-prefix "Blocked input MYIPSET" iptables -A FORWARD -m set --match-set MYIPSET src -j ULOG --ulog-prefix "Blocked fwd MYIPSET" iptables -A FORWARD -m set --match-set MYIPSET dst -j ULOG --ulog-prefix "Blocked fwd MYIPSET" iptables -A OUTPUT -m set --match-set MYIPSET dst -j ULOG --ulog-prefix "Blocked out MYIPSET" iptables -A INPUT -m set --match-set MYIPSET src -j DROP iptables -A FORWARD -m set --match-set MYIPSET src -j DROP iptables -A FORWARD -m set --match-set MYIPSET dst -j REJECT iptables -A OUTPUT -m set --match-set MYIPSET dst -j REJECT Now you have got the file of ipset rules, iblock_20160726224212_ipset.txt, and the necessary command sequence: ipset create -exist MYIPSET_TMP hash:net maxelem 84340 ipset flush MYIPSET_TMP ipset restore < iblock_20160726224212_ipset.txt ipset create -exist MYIPSET hash:net maxelem 84340 ipset swap MYIPSET MYIPSET_TMP ipset destroy MYIPSET_TMP ...... Simply scp the iblock_20160726224212_ipset.txt to your Pi box and ssh to it as root then paste this script, done.