Ich entschied mich, @cybernard zu beantworten, und ich denke, ich habe gearbeitet! Ich danke dir sehr :)
So habe ich es gemacht:
Teil 1: Hinzufügen gesperrter IPs zu einem ipset
psad schreibt jede gesperrte IP-Adresse automatisch in eine Textdatei mit dem Namen auto_blocked_ips, die sich in / var / log / psad befindet. Also müssen wir es zuerst in ein ipset aufnehmen, das ich banned_nets nannte.
Ich habe dieses einfache Skript geschrieben, um es dynamisch zu machen:
#!/bin/bash #ipset banned_nets must already exist AUTO_BLOCKED_IPTABLES_PATH=/var/log/psad/auto_blocked_iptables update_set(){ ipset flush banned_nets grep -E -o '^([0-9][\.])[0-9]' $AUTO_BLOCKED_IPTABLES_PATH | while read -r line ; do echo "Processing $line" ipset add banned_nets $line done } while true #run indefinitely do inotifywait -e modify $AUTO_BLOCKED_IPTABLES_PATH | update_set done
Teil 2: Definieren Sie Weiterleitungsregeln
Jetzt brauchen wir Regeln, um den Verkehr vom Server an den Honeypot weiterzuleiten. Das Detail ist, dass wir eigentlich zwei Regeln benötigen, sodass der Server als transparenter Proxy fungiert.
So habe ich es gemacht (noch einmal dank @cybernard):
###### forwarding ###### ipset create banned_nets hash:ip hashsize 4096 iptables -t nat -A PREROUTING -p tcp -m set --dport 8181 -j DNAT --to-destination $HONEYPOT_ADDR:443 --match-set banned_nets src iptables -t nat -A POSTROUTING -p tcp -s $HONEYPOT_ADDR --dport 443 -j SNAT --to-source $SERVER_ADDR:8181 iptables -t nat -A PREROUTING -p tcp -m set -j DNAT --to-destination $HONEYPOT_ADDR --match-set banned_nets src iptables -t nat -A PREROUTING -p udp -m set -j DNAT --to-destination $HONEYPOT_ADDR --match-set banned_nets src iptables -t nat -A POSTROUTING -p tcp -m set -j SNAT --to-source $SERVER_ADDR --match-set banned_nets src iptables -t nat -A POSTROUTING -p udp -m set -j SNAT --to-source $SERVER_ADDR --match-set banned_nets src echo "[+] Activating IP forwarding" echo 1 > /proc/sys/net/ipv4/ip_forward
Diese Regeln sind Bestandteil meines iptables.sh-Skripts.
Teil 3: Überprüfung der Ergebnisse
Wir haben also einen Angreifer, der versucht, 192.168.56.101 zu scannen, und einen Honeypot in 192.168.56.100.
Scannen des Servers, bevor die IP blockiert wird
Nach dem Blockieren scannt der Angreifer tatsächlich den Honigtopf
Scannen des Servers, nachdem IP blockiert (und weitergeleitet) wurde