Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2010-03-03 09:56:23

  macgyver2004 - Nowy użytkownik

macgyver2004
Nowy użytkownik
Zarejestrowany: 2010-03-03

Blokada skype i innych programow

Witam

Napisałem takiego firewalla:

Kod:

#!/bin/sh
#deklaracja zmiennych
IPTABLES=/sbin/iptables #cieka do iptables
BLOKADA_ROUTING=1       #czy forwardowapakiety?
BLOKADA_NAT=1           #czy przekierowywac porty
BLOKADA_GG=1            #czy zablokowac GG
BLOKADA_SKYPE=1         #czy zablokowac SKYPE
BLOKADA_PROXY=1         #czy puscic HTTP przez PROXY
BLOKADA_UDP=1           #czy zablokowac UDP


if [ "$BLOKADA_ROUTING" = "1" ]; then
echo Wlaczamy routing
echo Udostepnianie internetu
echo 1 > /proc/sys/net/ipv4/ip_forward
fi

#czycimy tablicz poprzednich regu
echo Czyscimy reguly
$IPTABLES -F
$IPTABLES -X
$IPTABLES -t nat -X
$IPTABLES -t nat -F
$IPTABLES -t mangle -X
$IPTABLES -t mangle -F

if [ "$BLOKADA_NAT" = "1" ]; then
echo Przekierowanie NAT
$IPTABLES -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE
fi

#ustawiamy domyln polityke
echo Domyslna polityka
$IPTABLES -P INPUT ACCEPT
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -P FORWARD DROP
#forwardowane porty
echo Odblokowanie portow
#21   FTP        443  HTTPS
#25   SMTP       444  SharePoint
#53   DNS        500  VPN IPSEC
#80   HTTP       1701 VPN L2TP
#81   PROXY      1723 VPN PPTP
#110  POP3       3389 MSTSC
#123  NTP        4125 OWA
#143  IMAP       4500 VPN IPSEC
#220  IMAP3      22   SSH
PORTYODB="21 22 25 53 80 81 110 143 220"
for adres in $PORTYODB
do
    echo $adres
    $IPTABLES -I FORWARD -s 192.168.0.0/24 -p tcp --dport $adres -j ACCEPT
done
PORTYODBU="53"
for adres in $PORTYODBU
do
    echo $adres
    $IPTABLES -I FORWARD -s 192.168.0.0/24 -p udp --dport $adres -j ACCEPT
done
echo Odblokowanie SSH
$IPTABLES -A INPUT --protocol tcp --destination-port 22 -j ACCEPT


if [ "$BLOKADA_UDP" = "1" ]; then
echo Ubijanie UDP
$IPTABLES -A FORWARD -s 192.168.0.0/24 -p udp --dport 1:65534 -j DROP
fi


if [ "$BLOKADA_SKYPE" = "1" ]; then
echo Ubijanie SKYPE
cat /root/banki | while read domena; do
$IPTABLES -I FORWARD 1 -d 192.168.0.0/24 -s $domena -p tcp --dport 443 -j ACCEPT
$IPTABLES -I FORWARD 1 -s 192.168.0.0/24 -d $domena -p tcp --dport 443 -j ACCEPT
done

fi

if [ "$BLOKADA_PROXY" = "1" ]; then
echo Transparetne PROXY
$IPTABLES -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 81
fi

if [ "$BLOKADA_GG" = "1" ]; then
echo Ubijanie GG
$IPTABLES -I FORWARD -i eth1 -s 192.168.0.0/24 -p tcp -d 91.197.13.0/24 -j DROP
$IPTABLES -I FORWARD -i eth1 -s 192.168.0.0/24 -p tcp -d 217.17.41.82/28 -j DROP
$IPTABLES -I FORWARD -i eth1 -s 192.168.0.0/24 -p tcp -d 217.17.45.133/27 -j DROP
$IPTABLES -I FORWARD -i eth1 -s 192.168.0.0/24 -p tcp -d 217.17.46.250/24 -j DROP
fi

Plik "/root/banki" w BLOKADA_SKYPE posiada liste banków dostępnych przez port 443(https).
Caly inny ruch na tym porcie chce zablokować.

Po uruchomieniu skryptu wszystko przestaje dzialac oprocz www ktore idzie przez squida. Https tez nie dziala na zadnym z adresow.
Chcialbym aby dzialaly tylko wybrane banki oraz uslugi POP,IMAP,SMTP i FTP.

Z gory dzieki za odpowiedz.

Offline

 

#2  2010-03-03 15:58:00

  bercik - Moderator Mamut

bercik
Moderator Mamut
Skąd: Warszawa
Zarejestrowany: 2006-09-23
Serwis

Re: Blokada skype i innych programow

1) ruch powrotny do nawiazanego polaczenia https nie przychodzi z portu 443 ...
2) blokowanie https to IMHO wredny pomysl (oprocz bankow uzywa go wiele innych serwisow, webmail, sklepow internetowych, ...)


"Wszyscy wiedzą, że czegoś zrobić nie można. Ale przypadkowo znajduje się jakiś nieuk, który tego nie wie. I on właśnie robi odkrycie." (A.Einstein)

Offline

 

#3  2010-03-03 16:19:43

  macgyver2004 - Nowy użytkownik

macgyver2004
Nowy użytkownik
Zarejestrowany: 2010-03-03

Re: Blokada skype i innych programow

Wiem ze ten port jest uzywany przez inne strony ale chwilowo dostalem
zadanie zablokowania calego internetu oprocz kilku wybranych stron
i stad moje pytanie ale juz chyba sobie poradzilem, dziala tak jak powinno
dodatkowo ta sama liste dostaje squid do odblokowanych stron
reszta jest wycinana:

Kod:

#!/bin/sh
##############################################################################################
#KONFIGURACJA SKRYPTU
IPTABLES=/sbin/iptables #scieka do iptables
STRONY=/root/webaccept   #sciezka do pliku z odblokowanymi stronami
CONF_ROUTING=1          #wlaczamy routing
CONF_PROXY=1            #transparetne proxy na porcie 81 serwera
CONF_BLOKADA_PORTY=1    #blokada wszystkich portow
CONF_BLOKADA_OTWARTE=1    #otwarcie wybranych portow
#21   FTP        443  HTTPS            25   SMTP       444  SharePoint
#53   DNS        500  VPN IPSEC        80   HTTP       1701 VPN L2TP
#81   PROXY      1723 VPN PPTP        110  POP3       3389 MSTSC
#123  NTP        4125 OWA            143  IMAP       4500 VPN IPSEC
#220  IMAP3      22   SSH
#TCP
PORTYODBT="21 25 110 143 220"
#UDP
PORTYODBU=""
CONF_BLOKADA_BANKI=1    #otwieramy port tcp 443 tylko dla wybranych stron
CONF_BLOKADA_GG=1        #blokowanie kontaktu z serwerami Gadu Gadu
##############################################################################################
#czycimy tablicz poprzednich regu
echo Czyscimy reguly firewall-a
$IPTABLES -F
$IPTABLES -X
$IPTABLES -t nat -X
$IPTABLES -t nat -F
$IPTABLES -t mangle -X
$IPTABLES -t mangle -F
##############################################################################################
#ustawiamy domyln polityke
echo Domyslna polityka
$IPTABLES -P INPUT ACCEPT
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -P FORWARD ACCEPT
##############################################################################################
if [ "$CONF_ROUTING" = "1" ]; then
echo Wlaczamy routing i udostepnianie internetu
echo 1 > /proc/sys/net/ipv4/ip_forward
$IPTABLES -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE
fi
##############################################################################################
if [ "$CONF_PROXY" = "1" ]; then
echo Transparetne PROXY
$IPTABLES -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 81
fi
##############################################################################################
if [ "$CONF_BLOKADA_PORTY" = "1" ]; then
echo Ubijanie UDP i TCP
$IPTABLES -I FORWARD -s 192.168.0.0/24 -p udp --dport 1:65534 -j DROP
$IPTABLES -I FORWARD -s 192.168.0.0/24 -p tcp --dport 1:65534 -j DROP
fi
##############################################################################################
if [ "$CONF_BLOKADA_OTWARTE" = "1" ]; then
echo Otwieramy porty:
echo TCP:
for adres in $PORTYODBT
do
    echo $adres
    $IPTABLES -I FORWARD -s 192.168.0.0/24 -p tcp --dport $adres -j ACCEPT
done
echo UDP:
for adres in $PORTYODBU
do
    echo $adres
    $IPTABLES -I FORWARD -s 192.168.0.0/24 -p udp --dport $adres -j ACCEPT
done
fi
##############################################################################################
if [ "$CONF_BLOKADA_BANKI" = "1" ]; then
echo Otwieramy dostep do stron
cat $STRONY | while read domena; do
echo -n $domena,
$IPTABLES -I FORWARD 1 -d 192.168.0.0/24 -s $domena -p tcp --dport 443 -j ACCEPT > /dev/null 2> /dev/null
$IPTABLES -I FORWARD 1 -s 192.168.0.0/24 -d $domena -p tcp --dport 443 -j ACCEPT > /dev/null 2> /dev/null
done
echo #
fi
##############################################################################################
if [ "$CONF_BLOKADA_GG" = "1" ]; then
echo Blokujemy adresy GaduGadu
$IPTABLES -I FORWARD -i eth1 -s 192.168.0.0/24 -p tcp -d 91.197.13.0/24 -j DROP
$IPTABLES -I FORWARD -i eth1 -s 192.168.0.0/24 -p tcp -d 217.17.41.82/28 -j DROP
$IPTABLES -I FORWARD -i eth1 -s 192.168.0.0/24 -p tcp -d 217.17.45.133/27 -j DROP
$IPTABLES -I FORWARD -i eth1 -s 192.168.0.0/24 -p tcp -d 217.17.46.250/24 -j DROP
fi
##############################################################################################

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)