Thanks Jordan, i will look at those links.

On Sat, 25 Aug 2018, 10:31 Jordan Geoghegan, <jgeoghega...@gmail.com> wrote:

> You may want to check out the more recent guides I wrote for the updated
> version of these scripts:
>
> www.geoghegan.ca/unbound-adblock.html
>
> www.geoghegan.ca/pfbadhost.html
>
>
> On 08/24/18 06:32, jin&hitman&Barracuda wrote:
> > Hello
> >
> > Thanks for sharing all those informations. I've been looking a way to
> > create a blacklist and you sent this mail just on time. Your web page
> > help me a lot.
> > On the OpenBSD your script do all jobs but on linux based systems I
> > wrote a shell script for update iptables rules.
> >
> >
> http://analog-radyo.blogspot.com/2018/08/dynamic-block-list-on-linux-iptables.html
> >
> >
> > Jordan Geoghegan <jgeoghega...@gmail.com
> > <mailto:jgeoghega...@gmail.com>>, 30 Ara 2017 Cmt, 01:52 tarihinde
> > şunu yazdı:
> >
> >     Hi everyone,
> >
> >     Due to the number of people who have requested my add-blocking
> >     scripts,
> >     I figured I would also post them to @misc so anyone can easily enjoy
> >     network-wide bad-host/add-blocking.
> >
> >     I won't go into detail on how to set up routing/dhcp/unbound/anchors
> >     etc, for that see: https://www.openbsd.org/faq/pf/example1.html
> >
> >     I've included some example files from my an Edgerouter I have set
> >     up .
> >     They are trimmed down for brevities sake; the conf files are not
> >     production ready, these are merely examples.
> >
> >     This setup is easily customizable, if you come across any other block
> >     lists you prefer, then they can be dropped in no problem. I chose
> >     to use
> >     solely the StevenBlack hosts file because it is a master list
> >     compiled
> >     from all the major banlists found in popular blocking products
> >     such as
> >     uBlock Origin, Addblock Plus et al. I also chose this file because
> >     it is
> >     filtered for duplicates as unbound(8) is said to struggle when
> >     there are
> >     redundancies in the blocklists, I'm told -- though I've never had
> >     any issue.
> >
> >     You're going to have to read the scripts and create the
> >     directories the
> >     scripts are calling and edit the anchor macros to fit your interface
> >     layout (I doubt everyone here is running cnmac0 as egress) and
> >     also will
> >     have to make the scripts executable and set them to run at regular
> >     intervals with crontab, ideally nightly.
> >
> >     I didn't make these scripts intelligent because I figured it was
> >     simpler
> >     to just run mkdir once rather than add extra lines to the script.
> >
> >     I know the pf.conf is fairly long, I thought I would show an
> >     example of
> >     my prio and queing setup as an example, or conversely to see if
> >     anyone
> >     can poke any holes in it.
> >
> >     All the relevant bits regarding the anchors and blocklists are
> >     found at
> >     the end of the pf.conf file. See below that for the anchor conf files
> >     we're calling as well.
> >
> >     Hope this helps,
> >
> >     Jordan Geoghegan
> >
> >
> >     First, the scripts:
> >
> >     *DNS addblock script:*
> >
> >     StevenBlack.sh:
> >
> >     cd /var/unbound/etc/banlist && \
> >     ftp
> >     https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts &&
> \
> >     cat hosts | grep '^0\.0\.0\.0' | awk '{print "local-zone: \""$2"\"
> >     redirect\nlocal-data: \""$2" A 0.0.0.0\""}' > ads.conf
> >     rcctl reload unbound
> >
> >     ###
> >
> >     *IP based malicious IP blocking:*
> >
> >     banlist.sh:
> >
> >     cd /etc/blocklist && ftp https://www.binarydefense.com/banlist.txt\
> >     && <https://www.binarydefense.com/banlist.txt%5C&&;> ftp
> >     https://rules.emergingthreats.net/blockrules/compromised-ips.txt\
> >     &&
> >     <
> https://rules.emergingthreats.net/blockrules/compromised-ips.txt%5C&&;>
> >     ftp
> https://rules.emergingthreats.net/fwrules/emerging-Block-IPs.txt\
> >     &&
> >     <
> https://rules.emergingthreats.net/fwrules/emerging-Block-IPs.txt%5C&&;>
> >     ftp
> >
> https://raw.githubusercontent.com/firehol/blocklist-ipsets/master/firehol_level3.netset\
> >     &&
> >     <
> https://raw.githubusercontent.com/firehol/blocklist-ipsets/master/firehol_level3.netset%5C&&;
> >
> >     pfctl -a banlist -f /etc/banlist.conf
> >
> >     ###
> >
> >     As you can see, we are going to have to make an anchor in pf called
> >     'banlist' and modify the unbound.conf to load our banlist 'ads.conf'
> >
> >     If that's all you need, then you're pretty much good to go. If you
> >     would
> >     like to see my example conf files, see below.
> >
> >     *
> >
> >
> >     Example unbound.conf:*
> >
> >     # $OpenBSD: unbound.conf,v 1.7 2016/03/30 01:41:25 sthen Exp $
> >
> >     server:
> >             interface: 172.17.17.1
> >             interface: 127.0.0.1
> >             access-control: 172.17.17.0/24 <http://172.17.17.0/24> allow
> >             access-control: 172.17.0.0/24 <http://172.17.0.0/24> allow
> >             do-not-query-localhost: no
> >             hide-identity: yes
> >             hide-version: yes
> >             include: /var/unbound/etc/banlist/ads.conf
> >
> >     forward-zone:
> >             name: "."
> >             forward-addr: UR.DNS.GO.HERE
> >             forward-addr: UR.DNS.GO.HERE
> >
> >     ###
> >
> >
> >     *Example pf.conf:*
> >
> >     #       $OpenBSD: pf.conf,v 1.54 2014/08/23 05:49:42 deraadt Exp $
> >     #
> >     # See pf.conf(5) and /etc/examples/pf.conf
> >
> >     # By default, do not permit remote connections to X11
> >     block return in on ! lo0 proto tcp to port 6000:6010
> >     #
> >     ext_if="{ cnmac0 }"
> >     int_if="{ cnmac1 cnmac2 }"
> >     lan_if="{ cnmac1 }"
> >     wifi_if="{ cnmac2 }"
> >     goodguys="{ 172.17.17.0/24 <http://172.17.17.0/24> }"
> >     wifiguys="{ 172.17.0.0/24 <http://172.17.0.0/24> }"
> >     chromecast="{ 172.17.0.12 172.17.0.13 172.17.0.23 }"
> >     xbox360="{ 172.17.0.19 }"
> >     printer="{ 172.17.0.17 }"
> >     Jordan="{ XXX.XX.XXX.XX }"
> >
> >     table <martians> { 0.0.0.0/8 <http://0.0.0.0/8> 10.0.0.0/8
> >     <http://10.0.0.0/8> 127.0.0.0/8 <http://127.0.0.0/8>
> >     169.254.0.0/16 <http://169.254.0.0/16>     \
> >     172.16.0.0/12 <http://172.16.0.0/12> 192.0.0.0/24
> >     <http://192.0.0.0/24> 192.0.2.0/24 <http://192.0.2.0/24>
> >     224.0.0.0/3 <http://224.0.0.0/3>  \
> >     192.168.0.0/16 <http://192.168.0.0/16> 198.18.0.0/15
> >     <http://198.18.0.0/15> 198.51.100.0/24 <http://198.51.100.0/24> \
> >     203.0.113.0/24 <http://203.0.113.0/24> }
> >
> >
> >     # Queue List [ Download ]
> >     queue download on cnmac2 bandwidth 70M max 70M
> >     queue media-down parent download bandwidth 20M min 5M max 20M
> >     burst 24M for 200ms
> >     queue xbox-down parent media-down bandwidth 4M max 4M burst 8M for
> >     200ms
> >     queue chrome-down parent media-down bandwidth 16M max 16M burst
> >     20M for 225ms
> >     queue std-down parent download bandwidth 50M min 5M max 50M burst
> >     70M for 500ms default
> >
> >
> >     set block-policy drop
> >     set loginterface egress
> >     set skip on lo0
> >     match in all scrub (no-df random-id max-mss 1440)
> >     match out on egress inet from !(egress:network) to any nat-to
> >     (egress:0)
> >     block in quick on egress from <martians> to any
> >     block return out quick on egress from any to <martians>
> >     block quick inet6
> >     block all
> >
> >     # A bit of edgy prio and bandwidth queuing, I felt like taking pf
> >     out for a test drive here
> >
> >     pass in on $lan_if from $goodguys tag LAN set prio 6
> >     pass in on $wifi_if from $wifiguys tag WIFI modulate state set
> >     queue std-down
> >     pass in on $wifi_if from $chromecast tag CHROME modulate state set
> >     prio 2 \
> >     set queue chrome-down
> >     block out on $lan_if tagged WIFI
> >     block out on $lan_if tagged CHROME
> >     antispoof for { egress cnmac0 cnmac1 cnmac2 lo0 }
> >     pass in quick on $ext_if from $Jordan to any tag Jordan
> >     block in on $ext_if proto { tcp udp } from any to any port ssh !
> >     tagged Jordan
> >     pass out on $ext_if inet
> >
> >
> >     # Printers Ruleset      | Block Printer on Egress && allow
> >     $goodguys subnet
> >     block out on $ext_if from $printer to any
> >     pass out quick on $wifi_if from $goodguys to $printer
> >
> >     # Spammers
> >     anchor banlist
> >     load anchor banlist from "/etc/banlist.conf"
> >
> >     # DNS Redirect
> >     anchor dns
> >     load anchor dns from "/etc/dns-redirect.conf"
> >
> >
> >     ###
> >
> >     *Anchor banlist.conf:*
> >
> >
> >     #   $OpenBSD: pf.conf,v 1.54 2014/08/23 05:49:42 deraadt Exp $
> >     #
> >     ## Spammers ##
> >
> >     table <banlist> persist file "/etc/blocklist/banlist.txt"\
> >     file "/etc/blocklist/compromised-ips.txt"\
> >     file "/etc/blocklist/emerging-Block-IPs.txt"\
> >     file "/etc/blocklist/firehol_level3.netset"
> >     block in on egress from <banlist> to any
> >     block out log on egress from any to <banlists>
> >
> >
> >     ####
> >
> >     *Anchor  dns-redirect.conf:***
> >
> >
> >     #   $OpenBSD: pf.conf,v 1.54 2014/08/23 05:49:42 deraadt Exp $
> >     #
> >
> >     wifi_lan="{ cnmac2 }"
> >
> >     # DNS Redirect
> >     pass in on $wifi_lan proto { tcp udp } from any to \
> >     { 8.8.8.8 8.8.4.4 208.67.222.222 208.67.220.220 209.244.0.3 } port
> >     53 \
> >     tag google rdr-to 172.17.17.1
> >
> >     # I added this because several devices were aggressively pinging
> >     8.8.8.8 on my network and it was annoying me
> >     pass in on $wifi_lan from any to \
> >     { 8.8.8.8 8.8.4.4  } \
> >     tag google rdr-to 172.17.17.1
> >
> >
> >
> >
> >
> > --
> > /There is no place like "/home"/
> > /Tuco (Benedicto Pasifico Juan Maria) Ramirez/
>
>

Reply via email to