Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Ipset i wycinanie krajów


кяυк

Rekomendowane odpowiedzi

Opublikowano

Witam. Chciałbym wam przedstawić wam prosty skrypt na blokowanie wybranych przez siebie krajów. Potrzebny nam do tego jest dodatek ipset

apt-get install ipset

Tutaj macie skrypt

#!/bin/bash

 
PS3='Prosze co chcesz zrobic: '
options=("Tworzenie bazy danych" "Blokowanie" "Informacje o autorze" "Wyjscie")
select opt in "${options[@]}"
do
    case $opt in
        "Tworzenie bazy danych")
            ipset --flush
            ipset create jp hash:net
            for IP1 in $(wget -O - http://www.ipdeny.com/ipblocks/data/countries/jp.MPCforum)
            do
            ipset add jp $IP1
            done
            ipset create cn hash:net
            for IP2 in $(wget -O - http://www.ipdeny.com/ipblocks/data/countries/cn.MPCforum)
            do
            ipset add cn $IP2
            done
            ipset create ru hash:net
            for IP3 in $(wget -O - http://www.ipdeny.com/ipblocks/data/countries/ru.MPCforum)
            do
            ipset add ru $IP3
            done
            ipset create us hash:net
            for IP4 in $(wget -O - http://www.ipdeny.com/ipblocks/data/countries/us.MPCforum)
            do
            ipset add us $IP4
            done
            ipset create ua hash:net
            for IP5 in $(wget -O - http://www.ipdeny.com/ipblocks/data/countries/ua.MPCforum)
            do
            ipset add ua $IP5
            done
            ipset create tr hash:net
            for IP6 in $(wget -O - http://www.ipdeny.com/ipblocks/data/countries/tr.MPCforum)
            do
            ipset add tr $IP6
            done
            ipset create be hash:net
            for IP7 in $(wget -O - http://www.ipdeny.com/ipblocks/data/countries/be.MPCforum)
            do
            ipset add be $IP7
            done
            echo -e "\E[32m ============= \033[0m"
            echo -e "\E[32m Tworzenie listy zakonczone. \033[0m"
            echo -e "\E[32m Przejdz do kroku nr.2 \033[0m"
            echo -e "\E[32m ============= \033[0m"
            echo -e "\E[36m 1)Tworzenie bazy danych \033[0m"
            echo -e "\E[36m 2)Blokowanie \033[0m"
            echo -e "\E[36m 3)Informacje o autorze \033[0m"
            echo -e "\E[36m 4)Wyjscie \033[0m"
            ;;
        "Blokowanie")
            iptables -A INPUT -m set --match-set jp src -j DROP
            iptables -A INPUT -m set --match-set cn src -j DROP
            iptables -A INPUT -m set --match-set ru src -j DROP
            iptables -A INPUT -m set --match-set us src -j DROP
            iptables -A INPUT -m set --match-set ua src -j DROP
            iptables -A INPUT -m set --match-set tr src -j DROP
            iptables -A INPUT -m set --match-set be src -j DROP
            iptables --list
            echo -e "\E[32m ============= \033[0m"
            echo -e "\E[32m Blokowanie listy zakonczone. \033[0m"
            echo -e "\E[32m Mozna przejs cdo kroku nr.4 \033[0m"
            echo -e "\E[32m ============= \033[0m"
            echo -e "\E[36m 1)Tworzenie bazy danych \033[0m"
            echo -e "\E[36m 2)Blokowanie \033[0m"
            echo -e "\E[36m 3)Informacje o autorze \033[0m"
            echo -e "\E[36m 4)Wyjscie \033[0m"
            ;;
        "Informacje o autorze")
            echo -e "\E[32m ============= \033[0m"
            echo -e "\E[32m Prosty skrypt do wycinania niechcianych krajów \033[0m"
            echo -e "\E[32m Zakaz dalszego udostepniania bez zgody autora  \033[0m"
            echo -e "\E[32m ============= \033[0m"
            echo -e "\E[36m 1)Tworzenie bazy danych \033[0m"
            echo -e "\E[36m 2)Blokowanie \033[0m"
            echo -e "\E[36m 3)Informacje o autorze \033[0m"
            echo -e "\E[36m 4)Wyjscie \033[0m"
            ;;
        "Wyjscie")
            break
            ;;
        *) echo invalid option;;
    esac
done

 
W tym skrypcie są blokowane kraje
  • Japonia
  • Chiny
  • Rosja
  • Ameryka
  • Ukraina
  • Turcja
  • Belgia
jeżeli chcesz dodać jakiś dodatkowy kraj to wystarczy że po lini 39 dopiszesz
ipset create KOD_ISO_KRAJU hash:net
for IP7 in $(wget -O - http://www.ipdeny.com/ipblocks/data/countries/KOD_ISO_KRAJU.zone2)
do
ipset add tr $IP7
done

Autor Poradnika:Fallen aka @Dimitri.

AOWD3IA.png

  • 3 tygodnie później...
Opublikowano

Konsola zasypana poniższym błędem. Ktoś wie jak to rozwiązać?

ipset v6.12.1: Kernel error received: Operation not permitted

Edit: Problem rozwiązany.

Opublikowano

Dobry poradnik, ale nie ma wszystkich IP'ków, bynajmniej mojego z USA ;x

Opublikowano

Dobry poradnik, ale nie ma wszystkich IP'ków, bynajmniej mojego z USA ;x

Blokowane bloki adresów z których najczęściej wychodzą ataki.

 

btw. wygląd kodu jak moje blokowanie cyberghosta ;v

  • 3 tygodnie później...

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...