Помогите с iptables

1 234
mower
На сайте с 01.12.2009
Offline
63
#21

За рабочее решение плачу 10 баксов первому составившему правило:

ТЗ такое:

в порт (25, 53, 110, 972 - главное, не в 80) долбят 10000 ботов. Нужно от них закрыться.

Нужно правило iptables ограничивающее подключения к портам допустим с 5 разных ip в минуту. Т.о. на работоспособность это не повлияет т.к. порты используются очень редко, а в случае ддос этот ограничитель будет отсеивать весь трафик, пропуская только 5 ип в минуту.

Решений типа блокировать всех не предлагать.

M
На сайте с 01.12.2009
Offline
235
#22


/sbin/iptables -F INPUT
/sbin/iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A INPUT -m conntrack --ctstate NEW -p tcp --dport 25 -m hashlimit 15/min --hashlimit-mode srcip --hashlimit-name hash -j ACCEPT
/sbin/iptables -A INPUT -m conntrack --ctstate NEW -p tcp --dport 53 -m hashlimit 15/min --hashlimit-mode srcip --hashlimit-name hash -j ACCEPT
/sbin/iptables -A INPUT -m conntrack --ctstate NEW -p udp --dport 53 -m hashlimit 15/min --hashlimit-mode srcip --hashlimit-name hash -j ACCEPT
/sbin/iptables -A INPUT -m conntrack --ctstate NEW -p tcp --dport 110 -m hashlimit 15/min --hashlimit-mode srcip --hashlimit-name hash -j ACCEPT
/sbin/iptables -A INPUT -m conntrack --ctstate NEW -p tcp --dport 972 -m hashlimit 15/min --hashlimit-mode srcip --hashlimit-name hash -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 25 -j DROP
/sbin/iptables -A INPUT -p tcp --dport 53 -j DROP
/sbin/iptables -A INPUT -p udp --dport 53 -j DROP
/sbin/iptables -A INPUT -p tcp --dport 110 -j DROP
/sbin/iptables -A INPUT -p tcp --dport 972 -j DROP

Убрал upto - эти паравела на Centos - в полне возможно не сходятся с Debian =)

Администратор Linux,Freebsd. построения крупных проектов.
mower
На сайте с 01.12.2009
Offline
63
#23

Вот это уже интересно. Сейчас поставлю , если защитит от доса -тогда все правильно работает

mower добавил 27.04.2011 в 18:21

[root@server ~]# iptables -I ddos3 -m conntrack --ctstate NEW -p tcp --dport 53 -m hashlimit --hashlimit-upto 5/min --hashlimit-mode srcip --hashlimit-name hash -j ACCEPT

iptables v1.3.5: Unknown arg `--hashlimit-upto'

Try `iptables -h' or 'iptables --help' for more information.

вот выписка из man

hashlimit
This patch adds a new match called Б─≥hashlimitБ─≥. The idea is to have something like Б─≥limitБ─≥, but either per destination-ip or per
(destip,destport) tuple.

It gives you the ability to express

Б─≥1000 packets per second for every host in 192.168.0.0/16Б─≥

Б─≥100 packets per second for every service of 192.168.1.1Б─≥

with a single iptables rule.

--hashlimit rate
A rate just like the limit match

--hashlimit-burst num
Burst value, just like limit match

--hashlimit-mode destip | destip-destport
Limit per IP or per port

--hashlimit-name foo
The name for the /proc/net/ipt_hashlimit/foo entry

--hashlimit-htable-size num
The number of buckets of the hash table

--hashlimit-htable-max num
Maximum entries in the hash

--hashlimit-htable-expire num
After how many miliseconds do hash entries expire

--hashlimit-htable-gcinterval num
How many miliseconds between garbage collection intervals

mower добавил 27.04.2011 в 18:30

[root@server ~]# iptables -A ddos3 -m conntrack --ctstate NEW -p tcp --dport 53 -m hashlimit 15/min --hashlimit-mode srcip --hashlimit-name hash -j ACCEPT Bad argument `15/min'

видимо у меня старая версия iptables, если его обновить это ведь безболезненно будет?

mower добавил 27.04.2011 в 18:41

Linux 2.6.18-194.32.1.el5 #1 SMP Wed Jan 5 17:52:25 EST 2011 x86_64 x86_64 x86_64 GNU/Linux

iptables v1.3.5:

mower добавил 27.04.2011 в 19:00

сделал yum update -y, ребутнул - ничего не обновлиось, iptables тот же версии 1.3

R
На сайте с 14.02.2010
Offline
77
#24
mower:
Bad argument `15/min'

-m hashlimit --hashlimit 15/min

mower:
сделал yum update -y, ребутнул

тихий ужас...

M
На сайте с 01.12.2009
Offline
235
#25

Я почемуто подумал что у вас debian плохой с меня телепат.

mower
На сайте с 01.12.2009
Offline
63
#26

ок, я попробую завтра седня уже голова не варит, спасибо

пс. это не тихий ужас, лучше бы написали как этот айпитейблс обновить до 1.4, у меня 1.3

пс2. операционка центос

M
На сайте с 01.12.2009
Offline
235
#27

iptables -v

cat /etc/issue

uname -a

mower
На сайте с 01.12.2009
Offline
63
#28

[root@server ~]# iptables -F ddos3

[root@server ~]# iptables -A ddos3 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

[root@server ~]# iptables -A ddos3 -m conntrack --ctstate NEW -p tcp --dport 53 -m hashlimit --hashlimit 15/min --hashlimit-mode srcip --hashlimit-name hash -j ACCEPT

[root@server ~]# iptables -A ddos3 -m conntrack --ctstate NEW -p udp --dport 53 -m hashlimit --hashlimit 15/min --hashlimit-mode srcip --hashlimit-name hash -j ACCEPT

[root@server ~]# iptables -A ddos3 -p tcp --dport 53 -j DROP

[root@server ~]# iptables -A ddos3 -p udp --dport 53 -j DROP

Вроде добавилось, теперь когда человек один на связь выйдет попрошупроверить защиту порта 53, до этого сервер валился в момент

============================

[root@server ~]# iptables -v

iptables v1.3.5: no command specified

Try `iptables -h' or 'iptables --help' for more information.

[root@server ~]# cat /etc/issue

CentOS release 5.5 (Final)

Kernel \r on an \m

[root@server ~]# uname -a

Linux === 2.6.18-194.32.1.el5 #1 SMP Wed Jan 5 17:52:25 EST 2011 x86_64 x86_64 x86_64 GNU/Linux

iamsens
На сайте с 26.08.2009
Offline
115
#29
madoff:
Нету слов....

ТЗ такое:
в порт (25, 53, 110, 972 - главное, не в 80) долбят 10000 ботов. Нужно от них закрыться.

человек немного в танке, он не понимает что лишних портов открыто быть не должно

п.с. два раза уже в топике намекал

а если сервер падает "в момент" от запросов на 53-й порт, то наверно дело не в ДДОСе

Raistlin
На сайте с 01.02.2010
Offline
247
#30

iamsens, не немного, а наглухо.

HostAce - Асы в своем деле (http://hostace.ru)
1 234

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий