Strona 2 z 2

: 12 kwietnia 2009, 13:06
autor: grzesiek
UDP jest potrzebne dla serwera, jeżeli jesteś tylko klientem wystarczy tylko TCP.

: 14 kwietnia 2009, 13:36
autor: Andros
Jeżeli UDP jest tylko potrzebne dla serwera to zablokuj sobie w iptables UDP i spróbuj otworzyć jakąś stronę www.

: 14 kwietnia 2009, 15:17
autor: cassius7
Nie, no nie ma opcji sprawdzałem i jako zwykły klient tylko tcp potrzebne. Pytałem jeszcze kolegi po fachu i mnie wyśmiał...

: 14 kwietnia 2009, 16:51
autor: grzesiek
Działa, działa, poza tym strona stronie nie równa, ale jeżeli chodzi o czysty protokół http to TCP 80 (docelowy) jako klient.

: 23 kwietnia 2009, 21:43
autor: szmergiell
Odświeżając temat:
Zmodyfikowałem powyższy skrypt do ogniomurka. Wygląda następująco:

Kod: Zaznacz cały

#!/bin/sh
#########################################       
#sudo chmod 700 firewall.sh        #
#sudo cp firewall.sh /etc/init.d/    #
#sudo update-rc.d firewall.sh defaults     #
#########################################

#czyszczenie firewalla
iptables -F

echo "Konfiguracja firewalla rozpoczeta"
MOJEIP=`/sbin/ifconfig | grep 'inet addr' | grep Bcast | awk '{print $2}' | awk -F: '{print $2}'`
echo "moje IP: $MOJEIP"

# blokujemy #
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

# ustawienia wstepne #
#~~~~~~~~~~~~~
# ochrona przed atakiem typu Smurf
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

# nie akceptujemy pakietow "source route" (zmieniaja tablice routingu)
echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route

# nie przyjmujemy pakietow ICMP redirect, ktore moga zmienic nasza tablice routingu
echo 0 > /proc/sys/net/ipv4/conf/all/accept_redirects

# wlaczamy ochrone przed blednymi pakietami ICMP error
echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses

# ochrona przed spoofingiem -kazdy interfejs sieciowy bedzie przyjmowal
# tylko te pakiety ktore znajduja sie w tablicy routingu
echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter

# wlacza logowanie dziwnych (spoofed, source routed, redirects) pakietow
echo 1 > /proc/sys/net/ipv4/conf/all/log_martians

#Blokada przed atakami typu SYN FLOODING
echo 1 > /proc/sys/net/ipv4/tcp_syncookies

#### wlaczenie loopback
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT

# Dodanie do tablicy INPUT reguł wpuszczających pakiety należące do
#już nawiązanych (ESTABLISHED) połączeń.
iptables -A INPUT -p tcp -j ACCEPT -m state --state ESTABLISHED
iptables -A INPUT -p udp -j ACCEPT -m state --state ESTABLISHED
iptables -A INPUT -p icmp -j ACCEPT -m state --state ESTABLISHED
iptables -A INPUT -p icmp -j ACCEPT -m state --state RELATED

# ssh
#iptables -A INPUT -p tcp --dport 22 -j ACCEPT
#iptables -A INPUT -p udp --dport 22 -j ACCEPT

echo "Konfiguracja firewalla zakonczona"
Z powyższego usunąłem wszelkie INPUT-y ponieważ komputer jest tylko "odbiorcą" Internetu i nie posiada żadnego serwera FTP, WWW itp. Pozostawiłem jedynie SSH, ponieważ będę kombinował z łączeniem się przez niego.
To, co zostało to wszelkie ESTABLISHED, gdyż połączenia wywołane z komputera mogą do niego wracać.

Powyższy skrypt działa dobrze. Z początku był jakiś problem z BitTorrentem (wolne pobieranie pliku, ale już działa OK). Mam również problem z pobieraniem aktualizacji poprzez apt, gdyż bardzo wolno to działa (chociaż niekoniecznie jest to problem z firewallem, gdyż bez niego jest podobnie).

Czy powyższy skrypt może być, drodzy koledzy?

: 23 kwietnia 2009, 22:35
autor: z3d
Cześć
Myślę że spokojnie może być.
Jedno co bym zmienił to port dla ssh i ewentualnie logowanie na port z przydzielonego IP (dla bezpieczeństwa - paranoja :) )
Gdzieś ostatnio wkleiłem swojego firewalla,
siedziałem nad nim trochę czasu, możesz spróbować coś z nim zrobić.
Tylko jedna rzecz, mój firewall pisany był pod serwer, delikatne zmiany i wszystko będzie cacy :)

: 24 maja 2009, 00:07
autor: pure_linux
Hej dziewczyny i chłopaki!
Wszystko fajnie ale niestety to nie jest dynamiczny firewall:

Kod: Zaznacz cały

###################################################
###################################################
###################################################
###########				###########
###########				###########
###########	rc.firewall		###########
###########				###########
###################################################
###################################################
###################################################
###################################################

ip=123.123.123.123
################################################
##############################
iptables -F
#################################################
#### polityka DROP dla INPUT
 iptables -P INPUT DROP
#################################################
#### polityka DROP dla OUTPUT
 iptables -P OUTPUT DROP
###################################################
#### polityka ACCEPT dla FORWARD
 iptables -P FORWARD ACCEPT

#### wlaczenie loopback
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT 



#####################################################################
####### WWW  & DNS ##################################################

iptables -A OUTPUT -p tcp  --syn -s $ip  --dport 80 -j ACCEPT -m state --state NEW
iptables -A OUTPUT -p udp  -s $ip  --dport 53 -j ACCEPT -m state --state NEW

#####################################################################
####### kadu ########################################################

iptables -A OUTPUT -p tcp -s 0/0 --dport 8074 -j ACCEPT -m state --state NEW

####################################################################
###### ssh -1/min- #################################

iptables -A INPUT -p tcp --dport 22 -m hashlimit --hashlimit 1/min --hashlimit-mode srcip --hashlimit-name ssh -m state --state NEW -j ACCEPT
iptables -A OUTPUT -p tcp --dport 22 -j ACCEPT -m state --state NEW

####################################################################
##### auth #########################################################

iptables -A INPUT -p tcp --source-port 113 -j ACCEPT

#####################################################################
#### ftp  ###########################################################

#iptables -A INPUT -p tcp ! --syn --sport 20:21 -d $ip --dport 1024:65535 -j ACCEPT
iptables -A OUTPUT -p tcp -s $ip --sport 1024:65535 --dport 20:21 -j ACCEPT -m state --state NEW

######################################################################
#### Zabezpieczenie przed powodzia SYN (Syn-flood):###################

iptables -A INPUT -p tcp --syn -m limit --limit 1/s -j ACCEPT

######################################################################
#### Ping of death: ##################################################

iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT

#####################################################################
#### Wlaczenie przekazywania IP######################################

#echo 1 > /proc/sys/net/ipv4/ip_forward
echo 0 > /proc/sys/net/ipv4/ip_forward
#####################################################################
#### Wlaczenie blokady komunikatow echo (ping) jesli : 0 --true  , 1 --false

echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all

#####################################################################
#### Blokada przed atakami typu SYN FLOODING

echo 1 > /proc/sys/net/ipv4/tcp_syncookies

#####################################################################
# Weryfikacja adresu zrodlowego na poziomie kernela
# zeby zdalne hosty nie mogly sie podszyc pod moj komputer
#####################################################################

echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter

################################################
#PING
iptables -A INPUT -p icmp -s 0/0 -d 0/0 -j DROP

####################################################################
#### połączenia https, skype ######################################

iptables -A OUTPUT -p tcp -s $ip --sport 1024:65535 --dport 443 -j ACCEPT -m state --state NEW

#############################################################################

iptables -A OUTPUT  -p tcp -s $ip -d 0/0 --dport 1024:65535 -j ACCEPT -m state --state NEW

#############################################################################
#############################################################################

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -p tcp -m state --state ESTABLISHED -j ACCEPT

iptables -A INPUT -m state --state INVALID -j DROP

I teraz porównajcie sobie, polecam sprawdzić. Ile rzeczy mam na ,,INPUT ='' ile mam zagrożeń.