#!/bin/bash # # usage updatethreatblock.sh <configuration file> # eg: updatethreatblock.sh /etc/ipset-threatblock/ipset-threatblock.conf # function exists() { command -v "$1" >/dev/null 2>&1 ; } if [[ -z "$1" ]]; then echo "Error: please specify a configuration file, e.g. $0 /etc/ipset-threatblock/ipset-threatblock.conf" exit 1 fi # shellcheck source=ipset-threatblock.conf if ! source "$1"; then echo "Error: can't load configuration file $1" exit 1 fi if ! exists curl && exists egrep && exists grep && exists ipset && exists iptables && exists sed && exists sort && exists wc ; then echo >&2 "Error: searching PATH fails to find executables among: curl egrep grep ipset iptables sed sort wc" exit 1 fi DO_OPTIMIZE_CIDR=no if exists iprange && [[ ${OPTIMIZE_CIDR:-yes} != no ]]; then DO_OPTIMIZE_CIDR=yes fi if [[ ! -d $(dirname &q
This is the blog of Ronald Bartels that wanders on and off the subject of problem management (that is how it started). Mostly now the topics are about IoT and SD-WAN.