-
December 7th, 2011, 20:53
#1
عضو انجمن
مشکل iptables به kernel
سلام دوستان
من یه 3 ماهی هست که دنبال راه حل این مشکلم ولی متاسفانه هیچکس نبوده که جواب بده دیتاسنتر هم که قربونش برم سلام هم میدی میگه we are unmanaged ...
مشکل چیه؟
من یه سرور اختصاصی دارم که بر روش Centos 5.7 نصبه.
من طی یه سری حمله های ddos فکر کردم نه این ddos ها قویه که csf بن نمیکنه و package پایین ولی تعداد بالا داره میده و ازین حرفا.
امروز با کامپیوتر خونم یه doshttp به سایت خودم دادم دیدنم نه خیر این اصلا بن نمیکنه.
پی این مشکل به این اطلاعات تو تست csf بر خوردم :
# /etc/csf/csftest.pl
Testing ip_tables/iptable_filter...OK
Testing ipt_LOG...OK
Testing ipt_multiport/xt_multiport...OK
Testing ipt_REJECT...OK
Testing ipt_state/xt_state...OK
Testing ipt_limit/xt_limit...OK
Testing ipt_recent...FAILED [Error: iptables: Unknown error 18446744073709551615] - Required for PORTFLOOD and PORTKNOCKING features
Testing xt_connlimit...FAILED [Error: iptables: Unknown error 18446744073709551615] - Required for CONNLIMIT feature
Testing ipt_owner/xt_owner...FAILED [Error: iptables: Unknown error 18446744073709551615] - Required for SMTP_BLOCK and UID/GID blocking features
Testing iptable_nat/ipt_REDIRECT...OK
Testing iptable_nat/ipt_DNAT...OK
RESULT: csf will function on this server but some features will not work due to some missing iptables modules [3]
هرجا میرم صحبت از اینه که تو vps ها این مشکل به وجود میاد ولی من dedicated داذم.
دیتاسنتر هم که این جواب رو داده :
You only need to enable the IPTABLES required modules on the kernel.
کسی میدونه این با کی کار داره؟ D:
لطفا اگه کسی بلده و میدونه این module های iptables رو چطوری میتونم روشن کنم بگه چون تا امروز من ذر اصل antiddos ی نداشتم 
با تشکر
داداشیان
-
-
December 7th, 2011 20:53
# ADS
-
December 7th, 2011, 21:52
#2
پاسخ : مشکل iptables به kernel
در حال حاضر Iptables بروی سرور شما فعال هست یا استاپ کردید ؟
اگر استارت هست آیا رول خاصی براش تعریف کردید ؟
-
-
December 7th, 2011, 22:26
#3
عضو انجمن
پاسخ : مشکل iptables به kernel
استارت هست ولی rule های خودش رو داره من چیزی اضافه تعریف نکردم.
-
-
December 7th, 2011, 22:35
#4
پاسخ : مشکل iptables به kernel
مگه خودتون سرور رو کانفیگ نکردید ؟ در حاضر دسترسی دارید رول جدید اضافه کنید یا تغییری دهید ؟
در حال حاضر این پیامی که گذاشتید مربوط به ران کردن یکی از ماوژلها در کانفیگ Iptables هست در صورتی که خود ماژول وجود نداره !
اگر اشتباه نکنم cfg پسوند فایل کانفیگ هست . باید دقیقا بررسی بشه .
ویرایش توسط mahosseini : December 7th, 2011 در ساعت 22:38
-
-
December 7th, 2011, 23:44
#5
عضو انجمن
پاسخ : مشکل iptables به kernel
دسترسی دارم ولی بخاطر تازه کار بودن بلد نیستم این کار رو انجام بدم...
باید چیکار کنم؟
-
-
December 8th, 2011, 00:21
#6
پاسخ : مشکل iptables به kernel
خوب من الان بخوام با شما تک تک ماژول ها رو چک کنم و فایل کانفیگ رو با هم چک کنیم خیلی طول می کشه .
یه پیشنهاد سریع !
یه بک آپ از کانفیگ Iptables تهیه کنید و سپس iptables رو به تنظیمات اولیه برگردونید
در این محل می تونید کانفیگ رو بیابید
-
-
December 8th, 2011, 00:50
#7
عضو انجمن
پاسخ : مشکل iptables به kernel
بک آپ گرفتم فقط تنظیمات اولیه رو از کجا تهیه کنم؟ دوباره باید بریزم یا command خاصی داره؟
ویرایش توسط reza_dadashian : December 8th, 2011 در ساعت 00:55
-
-
December 8th, 2011, 01:06
#8
پاسخ : مشکل iptables به kernel
این iptables چقدر گستردس الان یکی دو ساعتی هست دارم برای اینکه جواب شما رو بدم همه داکیومنتا رو می خونم .
لاگ ها رو اول یه چک بکن ببین اروری می بینی ؟
با این صورت
کد PHP:
iptables -A OUTPUT -j LOG iptables -A INPUT -j LOG iptables -A FORWARD -j LOG iptables -A OUTPUT -j DROP iptables -A INPUT -j DROP iptables -A FORWARD -j DROP
این لاگ ها رو در مسیر زیر چک کن
نمونه کانفیگ iptables
کد PHP:
#flush tables /usr/sbin/iptables -F # DUMP /usr/sbin/iptables -N DUMP > /dev/null /usr/sbin/iptables -F DUMP /usr/sbin/iptables -A DUMP -p tcp -j LOG /usr/sbin/iptables -A DUMP -p udp -j LOG /usr/sbin/iptables -A DUMP -p tcp -j REJECT --reject-with tcp-reset /usr/sbin/iptables -A DUMP -p udp -j REJECT --reject-with icmp-port-unreachable /usr/sbin/iptables -A DUMP -j DROP # Stateful table /sbin/iptables -N STATEFUL > /dev/null /sbin/iptables -F STATEFUL /sbin/iptables -I STATEFUL -m state --state ESTABLISHED,RELATED -j ACCEPT /sbin/iptables -A STATEFUL -m state --state NEW -i ! eth0 -j ACCEPT /sbin/iptables -A STATEFUL -j DUMP # loopback rules /sbin/iptables -A INPUT -i lo -j ACCEPT /sbin/iptables -A OUTPUT -o lo -j ACCEPT # drop reserved addresses incoming (these are reserved addresses # but may change soon /sbin/iptables -A INPUT -i eth0 -s 0.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 1.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 2.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 5.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 7.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 10.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 23.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 27.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 31.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 36.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 39.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 41.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 42.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 58.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 59.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 60.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 127.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 169.254.0.0/16 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 172.16.0.0/12 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 192.168.0.0/16 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 197.0.0.0/8 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 224.0.0.0/3 -j DUMP /sbin/iptables -A INPUT -i eth0 -s 240.0.0.0/8 -j DUMP #set iptables to allow everything from my work network /usr/sbin/iptables -A INPUT -i eth1 -p all -s 160.86.0.0/16 -j ACCEPT /usr/sbin/iptables -A INPUT -i eth1 -p all -j DROP # allow certain inbound ICMP types (ping, traceroute..) /sbin/iptables -A INPUT -i eth0 -p icmp --icmp-type destination-unreachable -j ACCEPT /sbin/iptables -A INPUT -i eth0 -p icmp --icmp-type time-exceeded -j ACCEPT /sbin/iptables -A INPUT -i eth0 -p icmp --icmp-type echo-reply -j ACCEPT /sbin/iptables -A INPUT -i eth0 -p icmp --icmp-type echo-request -j ACCEPT # Drop all packets to port 111 except those from localhost /usr/sbin/iptables -A INPUT -s !127.0.0.0/8 -p tcp --dport 111 -j DROP # kill off identd quick /sbin/iptables -A INPUT -p tcp -i eth0 --dport 113 -j REJECT --reject-with tcp-reset # sfs /sbin/iptables -A INPUT -p tcp -i eth0 --dport 4 -j ACCEPT # ftp /sbin/iptables -A INPUT -p tcp -i eth0 --dport 21 -j ACCEPT /sbin/iptables -A INPUT -p udp -i eth0 --dport 21 -j ACCEPT # ssh /sbin/iptables -A INPUT -p tcp -i eth0 --dport 22 -j ACCEPT /sbin/iptables -A INPUT -p udp -i eth0 --dport 22 -j ACCEPT # www /sbin/iptables -A INPUT -p tcp -i eth0 --dport 80 -j ACCEPT /sbin/iptables -A INPUT -p udp -i eth0 --dport 80 -j ACCEPT # https /sbin/iptables -A INPUT -p tcp -i eth0 --dport 443 -j ACCEPT /sbin/iptables -A INPUT -p udp -i eth0 --dport 443 -j ACCEPT # Don't log route packets coming from routers - too much logging /sbin/iptables -A INPUT -p udp -i eth0 --dport 520 -j REJECT # Don't log smb/windows sharing packets - too much logging /sbin/iptables -A INPUT -p tcp -i eth0 --dport 137:139 -j REJECT /sbin/iptables -A INPUT -p udp -i eth0 --dport 137:139 -j REJECT
ویرایش توسط mahosseini : December 8th, 2011 در ساعت 01:10
-
-
December 8th, 2011, 01:17
#9
عضو انجمن
پاسخ : مشکل iptables به kernel
خوب قبل از این که این کار بالا رو انجام بدم باید با کمال تاسف بگم که الان دیگه iptables هم استارت نمیشه.
Flushing firewall rules: [ OK ]
Setting chains to policy ACCEPT: mangle filter nat [ OK ]
Unloading iptables modules: [FAILED]
Applying iptables firewall rules: [ OK ]
Loading additional iptables modules: ip_conntrack_netbios_n[FAILED]
عذر میخوام اینقد دارم وقتتونو میگیرم.
لاگ هم ارور Bad argument `iptables' میده ... منظورتون رو که گفتید در مسیر
/var/log/messages چک کنم نفهمیدم...
-
-
December 8th, 2011, 01:34
#10
پاسخ : مشکل iptables به kernel
خوب مشکل رو پیدا کردیم فکر کنم . نه ما کارمون اینه که مشکل رو پیدا کنیم : )
کد PHP:
Loading additional iptables modules: ip_conntrack_netbios_n[FAILED]
این کار رو انجام بده ، به مسیر زیر برو
کد PHP:
/etc/sysconfig/iptables-config
با nano باز کن و سطر های زیر رو پیدا کن و شکل زیر تغییر بده
کد PHP:
IPTABLES_MODULES="ip_conntrack_netbios_ns" IPTABLES_MODULES_UNLOAD="yes"
به
کد PHP:
IPTABLES_MODULES="" IPTABLES_MODULES_UNLOAD="no"
حالا ری استار کن
کد PHP:
$service iptables restart
-