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!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam
Napisałem takiego firewalla:
#!/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
fiPlik "/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




Moderator Mamut
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, ...)
Offline
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:
#!/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