Freesco, NND, CDN, EOS
http://forum.freesco.pl/

Blokowanie/odblokowywanie userow [on/off]
http://forum.freesco.pl/viewtopic.php?f=22&t=13680
Strona 1 z 1

Autor:  bubu22 [ sobota, 30 września 2006, 14:51 ]
Tytuł:  Blokowanie/odblokowywanie userow [on/off]

Mialem kiedys skonfigurowane wylaczanie interfejsu tcp dla konkretnych adresow ip sieci lan przy pomocy wpisywania w konsoli
# off [ostatni czlon ip]
np. # off 100 wylaczalo dostep do netu uzytkownikowi z ip 192.168.0.100 Odwrotnie z on..
Czy moze mi ktos podac jak to ustawić? :)
Bede wdzieczny.

Autor:  adamol [ sobota, 30 września 2006, 19:01 ]
Tytuł: 

Było już ... ale sam nie mogę teraz znaleźć ... :

: [/] [] ()
#!/bin/bash
#/etc/blok -blokuje net dla IP, uzycie /etc/blok IP usera
iptables -A PREROUTING -t nat -s $1 -p tcp --dport 1:65535 -j DNAT --to- 192.168.1.1:81
iptables -A PREROUTING -t nat -s $1 -p udp --dport ! 53 -j DROP
echo ip: $1  nie ma internetu


: [/] [] ()
#!/bin/bash
#/etc/odblok -odblokowuje net dla IP, uzycie /etc/odblok IP usera
iptables -D PREROUTING -t nat -s $1 -p tcp --dport 1:65535 -j DNAT --to- 192.168.1.1:81
iptables -D PREROUTING -t nat -s $1 -p udp --dport ! 53 -j DROP
echo ip: $1 ma już internet


Na 192.168.1.1:81 czeka na niego stronka z thttpd

:twisted:
: [/] [] ()
/etc/rc.d/thttpd
...
case "$1" in
  start)
    stat_busy "Starting thttpd"
    [ -z "$PID" ] && /usr/sbin/thttpd -p 80 -u nobody -d /var/www -T iso-8859-2 -l /dev/null
    [ -z "$PID" ] && /usr/sbin/thttpd -p 81 -u nobody -d /var/www/ogloszenie -T iso-8859-2 -l /dev/null

...

Bądź wdzięczny 8)
Pzdr

Autor:  adi [ sobota, 30 września 2006, 19:09 ]
Tytuł: 

adamol pisze:
Na 192.168.1.1:81 czeka na niego stronka z thttpd :twisted:


Jak już odpowiadasz to napisz od razu jak tą stronkę zrobić i jak włączyc. W tej chwili dałeś rozwiązanie, które wygenerowało nowy problem. ;) :)

: [/] [] ()
#!/bin/bash
#/etc/blok -blokuje net dla IP, uzycie /etc/blok IP usera
iptables -A PREROUTING -t nat -s $1 -p tcp -j DROP
iptables -A PREROUTING -t nat -s $1 -p udp -j DROP
echo ip: $1  nie ma internetu


: [/] [] ()
#!/bin/bash
#/etc/odblok -odblokowuje net dla IP, uzycie /etc/odblok IP usera
iptables -D PREROUTING -t nat -s $1 -p tcp -j DROP
iptables -D PREROUTING -t nat -s $1 -p udp -j DROP
echo ip: $1 ma już internet


Tak masz po prostu blokadę. :)

Autor:  zciech [ sobota, 30 września 2006, 19:35 ]
Tytuł: 

: [/] [] ()
#!/bin/sh
ME=`basename $0`
# Must be root
if [ "`/usr/bin/id -u`" != 0 ] ; then
    echo "$ME: You must be root to run this script" >& 2
    exit 1
fi
if [ $# != 2 ];then
    echo "usage $ME on|off 0-255"
    exit 1
fi
i=`which iptables`
IP=192.168.0.
case "$1" in
   'on')
        $i -D INPUT -s $IP$2 -j DROP 2>/dev/null
        $i -D FORWARD -s $IP$2 -j DROP 2>/dev/null
        echo Odblokowalem $IP$2
    ;;
   'off')
        $i -D INPUT -s $IP$2 -j DROP 2>/dev/null
        $i -D FORWARD -s $IP$2 -j DROP 2>/dev/null
        $i -I INPUT -s $IP$2 -j DROP 2>/dev/null
        $i -I FORWARD -s $IP$2 -j DROP 2>/dev/null
        echo Zablokowalem $IP$2
    ;;
   *)
      echo "usage $ME on|off 0-255"
esac


P.S.
Uwaga Skrypt nie sprawdza czy drugi parametr zawiera sie w 0-255 to juz
sam sobie dopisz.
P.S.S.
Tabela nat nie słuzy do blokowania do tego jest tabela filter. Zablokowanie w tablicy nat nie zamknie juz nawiazanych polaczen.

Autor:  adamol [ sobota, 30 września 2006, 20:30 ]
Tytuł: 

Dostał wędkę - niech teraz łowi :)

Autor:  bubu22 [ sobota, 30 września 2006, 23:21 ]
Tytuł: 

dziekuje Wam slicznie :-)

jeszcze tylko pytanie.. Zciech, co mam jeszcze dopisac i gdzie wrzucic ten skrypt? :?

Autor:  JakubC [ sobota, 30 września 2006, 23:34 ]
Tytuł: 

Zapisujesz do jakiego kolwiek pliku i dajesz mu prawa wykonywalnosci.

Zapisujesz do pliku np przez mcedit:

: [/] [] ()
mcedit skrypt


tam wklejasz i zapisujesz.

Potem nadajesz prawa wykonywalnosci:
: [/] [] ()
chmod +x skrypt


odpalasz przez

./skrypt opcje

opcje czyli on i off oraz końcówka ip(Jezeli masz inna klase niż (192.168.)0 to musisz zmienic w skrypcie.

Nie musisz nic zmieniac zeby działało;)

Pozdrawiam

Autor:  bubu22 [ niedziela, 1 października 2006, 00:22 ]
Tytuł: 

ok, działa świetnie (wrzucilem plik do /bin) :):)

Autor:  adi [ niedziela, 1 października 2006, 15:40 ]
Tytuł: 

zciech pisze:
...to juz sam sobie dopisz.


Ciekawy problem. Przerobiłem nieco ten skrypt.
Poprawki obejmują:

1. Kontrola poprawności wprowadzanych danych
2. Obsługa wszystkich zakresów IP - nie tylko 192.168.0
3. Rozbudowana pomoc
4. Zmiana z DROP na REJECT - daje aplikacji szybszą informację o przerwaniu połączenia.
5. Polonizacja skryptu.

Zrobiłem pakiecik dla wygody, instalacja:

pacman -U http://www.adane.pl/pub/nnd/pakiety/blo ... pkg.tar.gz

Autor:  tassman [ poniedziałek, 26 lutego 2007, 13:35 ]
Tytuł: 

chcialem zastosowac regulke z tematu

http://forum.freesco.pl/viewtopic.php?t ... ht=blokada

w Twoim skrypcie. Poniewaz bieglsy z basha nie jestem to wydawalo mi sie ze musze tylko zastapic regulki blokujace i odblokowywujace takim zapisem.

$i -A PREROUTING -t nat -s $IP_LAN$2 -p tcp --dport 80 -j DNAT --to-destination 192.168.1.1:81 -m limit --limit 15/h --limit-burst 1

oczywiscie odpowiednio z litera -D w odblokowujacym

no i fakt blokuje ale tylko raz potem nie blokuje. A jak wklepie z konsoli regule to ladnie systematycznie blokuje. Prosze o porade.

Autor:  tassman [ niedziela, 4 marca 2007, 12:16 ]
Tytuł: 

Jeszcze raz prosze o pomoc w powyzszym.

Autor:  miro_x [ niedziela, 2 grudnia 2007, 22:22 ]
Tytuł: 

Adi pytanie odnośnie twojego skryptu.

Chcę żeby zablokowane osoby nie zostały przerowane do /dev/null tylko na jakąs stała strone (Zostałeś zablokowany bo....)

Co muszę zmienić w tym

: [/] [] ()
   'stop')
        if [ $ERROR = 0 ]; then
            $i -D INPUT -s $IP_LAN$2 -j REJECT 2>/dev/null
            $i -D FORWARD -s $IP_LAN$2 -j REJECT 2>/dev/null
            echo Odblokowałem: $IP_LAN$2
        fi
    ;;

    'start')
        if [ $ERROR = 0 ]; then
            $i -D INPUT -s $IP_LAN$2 -j REJECT 2>/dev/null
            $i -D FORWARD -s $IP_LAN$2 -j REJECT 2>/dev/null
            $i -I INPUT -s $IP_LAN$2 -j REJECT 2>/dev/null
            $i -I FORWARD -s $IP_LAN$2 -j REJECT 2>/dev/null
            echo Zablokowałem: $IP_LAN$2
        fi


fragmencie ? /dev/null na coś tylko na co ?
Na porcie 81 mam uruchomiony twój skrypt oglos a tu np na 82 bym potrzebowal taka stronke np.

Strona 1 z 1 Strefa czasowa UTC+2godz.
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/