GNU/Linux >> Znalost Linux >  >> Linux

Blokování černé listiny hostitelů a iptables

Intro:
Náhodou mám několik útoků od konkrétních hostitelů, kterým jsem se rozhodl zablokovat přístup na server. Zde je návod, jak jsem to udělal pomocí skriptu, který smaže a znovu načte celý řetězec iptables CHAIN ​​na základě souboru obsahujícího seznam IP/rozsahů.

POSTUP:
Vytvořte soubor s názvem blacklist.txt s jednou IP/rozsahem na řádek ve stejném adresáři jako skript.
např.
14.141.107.206
23.180.0.0/14
37.59.34.120
46.140.157.157
46.218.35.59
47.74.0.40
51.15.56.170
59.62.0.0/15
59.63.188.3
61.177.172.60

Skript, který se má spustit při spouštění
#!/bin/bash
# Tiny firewall protecting rpcbind (port 111)
scriptdir=$(dirname $(readlink -f $0))
blacklist="$scriptdir/blacklist.txt"
# Load the blacklists
HOSTS="$(cat $blacklist | egrep -v '^$|#')"
# Delete the existing custom chain
/sbin/iptables --flush BLACKLIST
/sbin/iptables -X BLACKLIST
/sbin/iptables -t filter -D INPUT -j BLACKLIST
# Create the BLACKLIST Chain and jump
/sbin/iptables -N BLACKLIST
/sbin/iptables -t filter -I INPUT -j BLACKLIST
# Fill-in the BLACKLIST Chain with rejected hosts list
for host in $HOSTS ; do
/sbin/iptables -A BLACKLIST -s $host -p tcp -j DROP
done
# Return from Blacklist
/sbin/iptables -A BLACKLIST -j RETURN
#eof

Poznámka: iptables si bude stěžovat na následující chyby. Nebojte se, stále bude dělat správnou práci.
iptables: Too many links.
iptables: Chain already exists.


Linux
  1. Blokování veškerého provozu z jednotlivých zemí pomocí IPSet a IPTables

  2. Blokovat rozsah IP ze zemí s GeoIP a iptables

  3. Jak zobrazit a odstranit pravidla iptables – seznam a vyprázdnění

  1. Vytvořit uživatelsky specifický soubor Hosts jako doplněk /etc/hosts?

  2. Jaký je rozdíl mezi stavem iptables a ctstate?

  3. Jak exportuji a obnovím svá nastavení iptables?

  1. Iptables a transparentní proxy?

  2. Ssh na více hostitelů a spustit příkaz?

  3. Hostitelé přístupu cPanel a MySQL