Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
skripting-section:bash:squidblacklist-updater [2017/11/13 10:40] – created michael | skripting-section:bash:squidblacklist-updater [2017/11/24 10:48] (current) – [Skript Sourcecode] michael | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Squidblacklist | + | ====== Squidblacklist |
- | Skript, welches vom mir erstellt wurde, um komplette Templates auch mit allen sämtlichen zusätzlichen Files von ClipShare | + | Skript, welches vom mir erstellt wurde, um automatisiert (via cronjob) DNS-Blacklist Filter |
===== Skript Sourcecode ===== | ===== Skript Sourcecode ===== | ||
- | '' | + | '' |
<sxh bash; first-line: 1> | <sxh bash; first-line: 1> | ||
+ | #! /bin/bash | ||
+ | # | ||
+ | # Subject | ||
+ | # Description : | ||
+ | # Author | ||
+ | # Created | ||
+ | # | ||
+ | # Skript Configurations: | ||
+ | BASEURL=https:// | ||
+ | proxy=' | ||
+ | |||
+ | download_dir='/ | ||
+ | # | ||
+ | dns_zones_dir='/ | ||
+ | # | ||
+ | zone_file_prefix=' | ||
+ | |||
+ | # squidblacklist.org username & password | ||
+ | USERNAME=smitty | ||
+ | PASSWORD=exhibitive | ||
+ | |||
+ | # Set Squidblacklist Filter Lists here: | ||
+ | enabled=( ads chanology cp cryptojack dating dyn feminist gambling malicious piracy porn proxies terrorism weapons ) | ||
+ | |||
+ | # | ||
+ | |||
+ | DGINCLUDEFILE=" | ||
+ | echo > " | ||
+ | |||
+ | echo Beginning squidblacklist.org Blacklist Update procedure... ; | ||
+ | cd ${download_dir} | ||
+ | |||
+ | echo Downloading blacklists... | ||
+ | |||
+ | # This loop uses the " | ||
+ | for listname in ${enabled[@]}; | ||
+ | BASENAME=" | ||
+ | wget --http-user=" | ||
+ | tar -xvf " | ||
+ | |||
+ | for line in $(grep -v '#' | ||
+ | echo " | ||
+ | done | ||
+ | |||
+ | sed -i ' | ||
+ | sed -i '/ | ||
+ | sed -i 's/$/ IN CNAME \./g' " | ||
+ | |||
+ | cat >> " | ||
+ | $TTL 7200 | ||
+ | @ IN SOA @ root ( | ||
+ | EOF | ||
+ | echo " | ||
+ | cat >> " | ||
+ | 3H ; refresh | ||
+ | 15M ; retry | ||
+ | 1W ; expire | ||
+ | 1D ; minimum | ||
+ | ) | ||
+ | |||
+ | IN NS LOCALHOST. | ||
+ | |||
+ | ; nasty domains | ||
+ | EOF2 | ||
+ | |||
+ | cat " | ||
+ | mv " | ||
+ | |||
+ | # update include file | ||
+ | echo "zone \" | ||
+ | echo "type master;" | ||
+ | echo "file \" | ||
+ | echo " | ||
+ | |||
+ | done | ||
+ | |||
+ | rm -f ${download_dir}* | ||
+ | chown proxyadm / | ||
+ | |||
+ | echo " | ||
+ | |||
+ | systemctl restart bind9 | ||
+ | echo " | ||
</ | </ |