Iptables boshlovchilar uchun

IPTABLES — bu linix OT'ini firewall'i hisoblanadi. IPTABLES tarmoqda kelayotgan paketlarni filtratsiya qilib beradi.
Umuman iptables haqida ko’p narsa deyish mumkin. Men bu maqolada qisqacha ma’lumot beraman. Keyin takliflarga qarab boshqa maqola yozaman.

Iptables ni ishga tushirish, to’xtatish va qayta ishga tushirish:
/etc/init.d/iptables start
/etc/init.d/iptables stop
/etc/init.d/iptables restart


Yoki
service iptables start
service iptables stop
service iptables restart


iptables’da 3 ta jadval (table) mavjud. Ularga FILTER, MANGLE va NAT jadvallari kiradi.
Kelayotgan paketlar ketma-ketlik bilan jadvaldagi ustunlar bilan tekshiriladi, yani paket filtrlanadi. Agar paket bironta ustundagi qoidaga mos tushsa o’sha qoida kerakli ishini qilib beradi.
Har bir jadvalni o’zining zanjir (chain)lari mavjud.
FILTER jadvali kelayotgan paketni filtrlab beradi.
— input
— output
— forward
NAT jadvalida biz adresslarni translyatsiya qilsak bo’ladi.
— prerouting
— postrouting
MANGLE jadvali kelayotgan paketni header’ini o’zgartirib beradi. Yani TOS (Type Of Service), TTL (Time To Live) qismlarini o’zgartirishimiz mumkin. Undan tashqari paketlarga MARK qo’yishimiz mumin.
Iptables da target (maqsad) lar mavjud, yani kelgan paket bilan nima qilish kerakligi. Yani maqsadiz nima degani desa to’g’ri bo’ladiyov :)
— accept
— drop
— log
— reject
— dnat
— snat
— masquerade

iptablesni asosiy buyruqlari.
-t jadval — agar jadval ko’rsatilmasa kiritilayotgan qoida filter jadvaliga tushadi. Agar qoidani nat jadvaliga tushurmoqchi bo’lsak –t nat qilib ko’rsatishimiz kerak.
-j maqsad — agar bironta paket qaysidir qoidaga mos kelsa maqsad ishlatiladi. Masalan: -j ACCEPT – bu erda qoidaga mos tushgan paketni qabul qil demoqchi.
-A – (APPEND) qoidani chain ni ohirgi qatoriga qo’sh degani. Masalan: -A INPUT bulsa INPUT bog’ni ohirgi qatoriga qush. A bu Append.
-L – (LIST) jadvaldagi qoidalarni ko’rish. Nat jadvalidagi qoidalarni ko’rish uchun: -t nat –L. Qoidalarni ketma-ket nomerini ko’rish uchun. –L –t nat --line-numbers
-D – (DELETE) jadvaldagi qoidalarni o’chirish. Qoidagi tartib raqamini bilsak u qoidani quyidagi ko’rinishda o’chirishimiz mumkin. –D –t nat 1 – nat jadvalidagi 1 chi qoida o’chadi.
-R – (REPLACE) qoidagi o’zgartirish uchun kerak.
-N – (New CHAIN) yangi zanjir yasaydi. Masalan: -N bad-sources
-X – Chainlarni o’chiradi.
-F – ko’rsatilgan jadvaldagi hamma qoidalarni o’chiradi. Masalan: -F –t nat – nat jadvalidagi xamma qoidalar o’chadi. Agar –F qilsak Filter jadvalidagi qoidalar o’chadi.
-p protokol-turi — Protokol turini ko’rsatishimiz mumkin. Masala –p tcp
-s ip-manzil — source ip manzil (o’zbechasiga tarjima qilomadim uzr)
-d ip-manzil — destination ip manzil (o’zbechasiga tarjima qilomadim uzr)
-i tarmoq-karta-nomi — paket kirayotgan tarmoq kartasi.
-o tarmoq-karta-nomi — paket chiqib ketayotgan tarmoq kartasi.
--dport port-nomeri – destination port
--sport port-nomeri – source port

Oddiy qoidalar yozishdan boshlaymiz.
iptables -A INPUT --dport 80 -j DROP

# 80 portga kelayotgan paketlarni o’ldiramiza.

iptables -A INPUT -t tcp --dport 22 -j ACCEPT

#22 portga kelayotgan paketlar tcp protokolga tegishli bo’lsa qabul qilamiza.

iptables -A INPUT -p tcp --dport 110 -j DROP

# 110 portga kelayotgan paketlarni o’ldiramiz.

iptables -A INPUT -p tcp --dport 80 -s 192.168.0.10 -j DROP

#192.168.0.10 moshina uchun 80 portga kirishni taqiqlab qo’ydik.

Yangi zanjir yaratish.
iptables -N yomon-moshinalar
iptables -A yomon-moshinalar -s 192.168.0.0/24 -j DROP
iptables -A yomon-moshinalar -s 192.168.4.1 -j DROP
iptables -A yomon-moshinalar -s 172.168.0.0/16 -j DROP
iptables -A INPUT -i eth0 -j yomon-moshinalar


Agar serverda ftp firewall orqasida bo'lsa firewall ga quyidagi qoidani yozish kerak.
iptables -A INPUT -p tcp -mmultiport --dports 49152:65534 -j ACCEPT


SSH ga aniq bir moshinaga huquq ochish uchun
iptables -A INPUT -p tcp --dport 22 -s 89.xxx.xxx.xxx -j ACCEPT


89.xxx.xxx.xxx — uydagi moshinani ip adresi. Staic bulishi kerak

Bu yerda ko'p qoidalar yozishim mumkin. Aniq savollar bersangizlar men bitta maqola yozib chiqarar edim.
Agar maqolada kamchilik yoki xatoliklar o'tgan bo'lsa bir og'iz aytib o'tinglar.

Eski OpenNet.Uz saytidan.

1 комментарий

sultonsanjar
Shu asosda VPN server ko`tarib, post yozgin, Fedora yoki RedHatda!
0