blockiere Skript

Angelegt Sonntag 18 August 2024


#!/bin/bash
# blockiere - fuege Netzwerk dem ipset "deny_others" hinzu, wenn es noch nicht enthalten ist.
# sollte der ipset noch nicht existieren, kann er so erstellt werden: ipset create deny_others hash:net
# dann sollte aber auch eine passende firewall-regel erstellt werden: iptables -I INPUT -m set --match-set deny_others src -j DROP


# Prüfe Anzahl der Parameter = 1
if [ $# -ne 1 ]; then

echo "Usage: $0 <NETWORK>"
exit 1
fi


# Extrahiere alle Netzwerke in dem ipset "deny_others" und erstelle Liste
ipset_list=$(ipset list deny_others | awk '/^[0-9]+.*/ {print $1}')


# Prüfe of das übergebene Netzwerk in der erstellten Liste enthalten ist
if echo "$ipset_list" | grep -q "^$1$"; then

echo "Das Netzwerk $1 ist bereits in der deny_others Liste."
else
echo "Das Netzwerk $1 ist nicht in der deny_others Liste und wird hinzugefuegt."
ipset add deny_others "$1"
fi
# Kotrollausgabe
ipset list deny_others