Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: zax в Jul 01, 2005, 09:03



Титла: Питане за $[IPTABLES]
Публикувано от: zax в Jul 01, 2005, 09:03
Моля да ми помогнете малко със синтаксиса на правилата, защото и идея си нямам къде бъркам ...

Попринцип това :

iptables -A INPUT -p ! TCP -j DROP

трябва да реже всички връски бес TCP, включително и ICMP.

Идеята ми е текава как мога да направя тека, че да дропва всички TCP, UDP портове и аз да задам само тези които трябва да бъдат отворени.

iptables -A INPUT -p ! TCP -j DROP
iptables -A INPUT -p ! UDP -j DROP
iptables -A INPUT -p 22 -j ACCEPT
iptables -A  -p 80 -j ACCEPT

или да заместя последните 2 реда с това
iptables -A INPUT ( FORWARD ) -p udp --sport 22 -j ACCEPT

и другите 3 реда си следват после пак нестава ....


Титла: Питане за $[IPTABLES]
Публикувано от: JOKe в Jul 01, 2005, 09:47
Несъм много наясно с иптеибълс ама мисля че тия 2 реда iptables -A INPUT -p 22 -j ACCEPT
iptables -A  -p 80 -j ACCEPT
 трябва да са първи щото то нали търси от горе надоло и незнам дали изобщо стига да търси тях..


Титла: Питане за $[IPTABLES]
Публикувано от: laskov в Jul 01, 2005, 10:08
Много добра статия


Титла: Питане за $[IPTABLES]
Публикувано от: vENZi в Jul 01, 2005, 11:57
pravish default pocicata da e DROP:

iptables -t mangle -P PREROUTING DROP

i posle davasj -j ACCEPT na portove ili tam kakvoto iskash i shte minava samo tova koeto si opisal izrichno


Титла: Питане за $[IPTABLES]
Публикувано от: ivanatora в Jul 03, 2005, 10:43
Цитат (vENZi @ Юли 01 2005,11:57)
pravish default pocicata da e DROP:

А дефаулт подупето какво трябва да е?  :D


Титла: Питане за $[IPTABLES]
Публикувано от: voyager в Jul 08, 2005, 21:40
Цитат (zax @ Юли 01 2005,10:03)
Моля да ми помогнете малко със синтаксиса на правилата, защото и идея си нямам къде бъркам ...

Попринцип това :

iptables -A INPUT -p ! TCP -j DROP

трябва да реже всички връски бес TCP, включително и ICMP.

Идеята ми е текава как мога да направя тека, че да дропва всички TCP, UDP портове и аз да задам само тези които трябва да бъдат отворени.

iptables -A INPUT -p ! TCP -j DROP
iptables -A INPUT -p ! UDP -j DROP
iptables -A INPUT -p 22 -j ACCEPT
iptables -A  -p 80 -j ACCEPT

или да заместя последните 2 реда с това
iptables -A INPUT ( FORWARD ) -p udp --sport 22 -j ACCEPT

и другите 3 реда си следват после пак нестава ....

виж на netfilter.org документацията.
Иначе.... толкова зле правила може би писах в началото, докато ми се изяснят нещата. Проблема ти е, че като кажеш простотия от сорта на iptables -A INPUT -p !tcp -j DROP и то си те слуша като маймунка... от тука нататък е смислено да филтрираш само tcp трафика. До другите правила така и така нищо не стига. А иначе... dns си върви на tcp/udp порт 53. И затова трябва да е отворен... т.е. правилото за accept на този порт да е преди това за !tcp...

Бе най-хубу скивай тоя скрипт като за набързо:
# Clear previous rules
ipt -F
ipt -Z
ipt -X
ipt -F -t nat
ipt -Z -t nat
ipt -X -t nat
ipt -F -t mangle
ipt -Z -t mangle
ipt -X -t mangle
### DEFAULT POLICY ###
ipt -P INPUT DROP
ipt -P FORWARD DROP
ipt -P OUTPUT DROP
### rules
###### LOOPBACK!!! ######
ipt -A INPUT -i lo -j ACCEPT
ipt -A OUTPUT -o lo -j ACCEPT
########################## extraterestrials #
### Default rulez ###
ipt -A INPUT --destination $MYIP -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
ipt -A INPUT --destination $MYIP -p udp --sport 53 -j ACCEPT
ipt -A OUTPUT --source $MYIP -p tcp -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
ipt -A OUTPUT --source $MYIP -p udp -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

... засега толкова, че бързам :)