vpn serveringizga icmp trafigini rad eting. Yong'in yoyi. Biz o'zimizni IPTABLES, IPFW va PF yordamida xakerlardan himoya qilamiz. Yadro parametrlari bilan pingni bloklash


Linux tizimidagi xavfsizlik devori iptables dasturi (ipv4 uchun) va ip6tables (ipv6 uchun) tomonidan boshqariladi. Ushbu aldash varaqasi o'z tizimini xakerlardan himoya qilmoqchi bo'lganlar yoki shunchaki sozlashni tushunmoqchi bo'lganlar uchun iptablesdan foydalanishning eng keng tarqalgan usullarini qamrab oladi.

# belgisi buyruqning ildiz sifatida bajarilishini bildiradi. Oldindan ildiz huquqlariga ega konsolni oching - Debian-ga asoslangan tizimlarda sudo -i yoki boshqalarda su.

1. Holatni ko'rsatish.

# iptables -L -n -v

Faolsiz xavfsizlik devori uchun buyruq chiqishi namunasi:

Chain INPUT (siyosat ACCEPT 0 paket, 0 bayt) pkts bayt maqsadli manba manba manzilini rad etish Chain FORWARD (siyosat ACCEPT 0 paket, 0 bayt) pkts bayt maqsad prot o'chirish manba manzili Chain OUTPUT (siyosat ACCEPT 0) paketlar, 0 bayt ) pkts baytlar maqsadli prot manba manzilidan voz kechish

Faol xavfsizlik devori uchun:

Zanjirli INPUT (siyosat DROP 0 paket, 0 bayt) pkts bayt maqsadli prot manba manzilini o'chirish 0 0 DROP hammasi -- * * 0.0.0.0/0 0.0.0.0/0 holat YANGILIK 394 43586 Hammasini QABUL ET -- * * 0.0. 0.0/0 0.0.0.0/0 holat BOGʻLIK, TUZILGAN 93 17292 Hammasini QABUL BERISH -- br0 * 0.0.0.0/0 0.0.0.0/0 1 142 Hammasini QABUL BERISH -- lo * 0.0.0.0/0/0. FORWARD zanjiri (siyosat DROP 0 paket, 0 bayt) pkts bayt maqsadli prot manba manzilini o'chirish 0 0 hammasini QABUL QILING -- br0 br0 0.0.0.0/0 0.0.0.0/0 0 0 DROP hammasini -- * * 0.0. 0.0/0 0.0 .0.0/0 holati NOVALID 0 0 TCPMSS tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp bayroqlari: PMTU ga 0x06/0x02 TCPMSS qisqichi 0 0 * Hammasini QABUL QILAMAN -0.0 *0.0. 0 0.0.0.0 /0 holat BOG'LIK, TURQILGAN 0 0 wanin hammasi -- vlan2 * 0.0.0.0/0 0.0.0.0/0 0 0 wanout hammasi -- * vlan2 0.0.0.0/0 0.0.0.0/0 0 hammasi 0 QABUL QILING -- br0 * 0.0.0.0/0 0.0.0.0/0 Chain OUTPUT (siyosat ACCEPT 425 paket, 113K bayt) pkts bayt maqsad prot o'chirish manba manzili Zanjir wanin (1 ta havola) pkts bayt maqsadli kirish manba manzili Chain wanout (1 ta havola) pkts bayt maqsadli prot

Qayerda:
-L: Qoidalar ro'yxatini ko'rsatish.
-v: Qo'shimcha ma'lumotlarni ko'rsatish. Ushbu parametr interfeys nomini, variantlarni, TOS maskalarini ko'rsatadi. Shuningdek, "K", "M" yoki "G" qo'shimchalarini ko'rsatadi.
-n: IP-manzil va portni raqamlar sifatida ko'rsatish (nomlarni hal qilish uchun DNS-serverlardan foydalanmasdan. Bu displeyni tezlashtiradi).

2. Satr raqamlari bilan qoidalar ro'yxatini ko'rsatish.

# iptables -n -L -v --satr raqamlari

Chiqish namunasi:

Chain INPUT (siyosat DROP) num maqsadli prot tanlagan manba manzili 1 TO'CHIRISH hammasi -- 0.0.0.0/0 0.0.0.0/0 holati YANGILIK 2 hammasini QABUL QILISh -- 0.0.0.0/0 0.0.0.0/0 holat BOG'LIK, O'RNATISH 3 Hammasini QABUL ET -- 0.0.0.0/0 0.0.0.0/0 4 Hammasini QABUL ET -- 0.0.0.0/0 0.0.0.0/0 Chain FORWARD (Siyosat DROP) num maqsadli prot opt-source destination 1 Hammasini QABUL ET -- 0,0 .0.0/0 0.0.0.0/0 2 TO'CHIRISH -- 0.0.0.0/0 0.0.0.0/0 holat YANGILIK 3 TCPMSS tcp -- 0.0.0.0/0 0.0.0.0/0 tcp bayroqlari: 0x02TCPMSSx PMTU 4 QABUL QABUL QILADI -- 0.0.0.0/0 0.0.0.0/0 holat BAĞLI, O'RNAGAN 5 vanin hammasi -- 0.0.0.0/0 0.0.0.0/0 6 wanout hammasi -- 0.0.0.0/0 0.0.0.0/0/0. 7 Hammasini QABUL QILISh - - 0.0.0.0/0 0.0.0.0/0 Chain OUTPUT (QABUL QABUL QILISh siyosati) num maqsadli himoyalangan manba manzili Chain wanin (1 ta havola) num maqsadli himoyalangan manba manzili Chain wanout (1 ta havola) num maqsadli prot opt'manba manzili

Yangi qoidalar qo'shish uchun qator raqamlaridan foydalanishingiz mumkin.

3. INPUT yoki OUTPUT qoida zanjirini ko'rsating.

# iptables -L INPUT -n -v
# iptables -L OUTPUT -n -v --line-raqamlar

4. Xavfsizlik devorini to'xtating, ishga tushiring, qayta ishga tushiring.

Tizimning o'zi kuchlari bilan:
# xizmat ufw to'xtaydi
# xizmat ufw ishga tushirildi

Xavfsizlik devorini to'xtatish va barcha qoidalarni olib tashlash uchun iptables buyruqlaridan ham foydalanishingiz mumkin:
# iptables -F
# iptables -X
# iptables -t nat -F
# iptables -t nat -X
# iptables -t mangle -F
# iptables -t mangle -X
# iptables -P KIRISH QABUL
# iptables -P OUTPUT QABUL
# iptables -P OLIB QABUL QILISh

Qayerda:
-F: Barcha qoidalarni yuving.
-X: zanjirni o'chirish.
-t table_name: Jadvalni tanlang (nat yoki mangle) va barcha qoidalarni olib tashlang.
-P: Standart amallarni tanlang (masalan, TOSHLASH, REDD ET yoki QABUL QILMA).

5. Faervol qoidalarini o'chirish.

Satr raqamini mavjud qoidalar bilan ko'rsatish uchun:

# iptables -L OUTPUT -n --satr raqamlari
# iptables -L OUTPUT -n --line-raqamlar | Ozroq
# iptables -L OUTPUT -n --line-raqamlar | grep 202.54.1.1

Keling, IP manzillar ro'yxatini olaylik. Faqat chapdagi raqamga qarang va tegishli qatorni o'chiring. Masalan, 3-raqam uchun:
# iptables -D INPUT 3

Yoki manba IP manzilini toping (202.54.1.1) va uni qoidadan olib tashlang:
# iptables -D INPUT -s 202.54.1.1 -j DROP

Qayerda:
-D: Bir yoki bir nechta qoidalarni zanjirdan olib tashlang.

6. Xavfsizlik devoriga qoida qo'shing.

Zanjirga bir yoki bir nechta qoidalar qo'shish uchun avval ro'yxatni qator raqamlari yordamida ko'rsatamiz:
# iptables -L INPUT -n --satr raqamlari

Chiqish namunasi:

Chain INPUT (policy DROP) num target prot opt’mans destination 1 DROP all -- 202.54.1.1 0.0.0.0/0 2 Hammasini QABUL OLING -- 0.0.0.0/0 0.0.0.0/0 holat YANGI, TUZILGAN

1 va 2 qatorlar orasiga qoida kiritish uchun:
# iptables -I INPUT 2 -s 202.54.1.2 -j DROP

Keling, qoida yangilanganligini tekshirib ko'ramiz:
# iptables -L INPUT -n --satr raqamlari

Chiqish quyidagicha bo'ladi:

Chain INPUT (policy DROP) num target prot opt’manbai destination 1 DROP all -- 202.54.1.1 0.0.0.0/0 2 TOSHIRISH -- 202.54.1.2 0.0.0.0/0 3 Hammasini QABUL QILISh -- 0/00. 0.0.0.0/0 holat YANGI, TURQILGAN

7. Xavfsizlik devori qoidalarini saqlang.

iptables-saqlash orqali:
# iptables-save > /etc/iptables.rules

8. Qoidalarni tiklash.

iptables-restore orqali
# iptables-tiklash

9. Standart siyosatlarni o'rnating.

Barcha trafikni tiklash uchun:
# iptables -P INPUT DROP
# iptables -P OUTPUT DROP
# iptables -P FORWARD DOP
# iptables -L -v -n

Yuqoridagi buyruqlardan so'ng, bitta paket bu xostni tark etmaydi.
# ping google.com

10. Faqat kiruvchi ulanishlarni bloklash.

Siz boshlamagan barcha kiruvchi paketlarni olib tashlash, lekin chiquvchi trafikka ruxsat berish uchun:
# iptables -P INPUT DROP
# iptables -P FORWARD DOP
# iptables -P OUTPUT QABUL
# iptables -A INPUT -m holati --holat YANGI, TUZILGAN -j QABUL ET
# iptables -L -v -n

Chiquvchi paketlar va belgilangan seanslarda eslab qolingan paketlarga ruxsat beriladi.
# ping google.com

11. Umumiy tarmoqdagi izolyatsiyalangan tarmoqlar manzillarini tiklash.

# iptables -A INPUT -i eth1 -s 192.168.0.0/24 -j DROP

Izolyatsiya qilingan tarmoqlar uchun IP manzillar ro'yxati:
10.0.0.0/8 -j (A)
172.16.0.0/12 (B)
192.168.0.0/16 (C)
224.0.0.0/4 (MULTICAST D)
240.0.0.0/5 (E)
127.0.0.0/8 (QAYTA QILISH)

12. Muayyan IP-manzilni bloklash.

1.2.3.4 tajovuzkor manzilini bloklash uchun:
# iptables -A INPUT -s 1.2.3.4 -j DROP
# iptables -A INPUT -s 192.168.0.0/24 -j DROP

13. Kiruvchi port so'rovlarini bloklash.

80-portdagi barcha kiruvchi so'rovlarni bloklash uchun:
# iptables -A INPUT -p tcp --dport 80 -j DROP
# iptables -A INPUT -i eth1 -p tcp --dport 80 -j DROP

1.2.3.4 manzilidan 80-port so'rovini bloklash uchun:
# iptables -A INPUT -p tcp -s 1.2.3.4 --dport 80 -j DROP
# iptables -A INPUT -i eth1 -p tcp -s 192.168.1.0/24 --dport 80 -j DROP

14. Chiquvchi IP-manzilga so'rovlarni bloklash.

Muayyan domenni bloklash uchun uning manzilini bilib oling:
#xost -t a facebook.com

Xulosa: facebook.com 69.171.228.40 manziliga ega

69.171.228.40 uchun CIDR ni topamiz:
#kim 69.171.228.40 | grep CIDR

Xulosa:
CIDR: 69.171.224.0/19

69.171.224.0/19 ga kirishni bloklaylik:
# iptables -A OUTPUT -p tcp -d 69.171.224.0/19 -j DROP

Bloklash uchun domendan ham foydalanishingiz mumkin:
# iptables -A OUTPUT -p tcp -d www.facebook.com -j DROP
# iptables -A OUTPUT -p tcp -d facebook.com -j DROP

15. Hodisani yozib oling va qayta o'rnating.

Qayta tiklashdan oldin paketlar harakatini qayd qilish uchun qoida qo'shing:

# iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j LOG --log-prefiks "IP_SPOOF A:"
# iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j DROP

Jurnalni tekshiramiz (sukut bo'yicha /var/log/messages):
# tail -f /var/log/messages
# grep -i --color "IP SPOOF" /var/log/messages

16. Hodisani yozib oling va qayta o'rnating (yozuvlar soni chegarasi bilan).

Bo'limni shishgan jurnal bilan to'ldirmaslik uchun biz -m yordamida yozuvlar sonini cheklaymiz. Masalan, har 5 daqiqada maksimal 7 qatorni yozish uchun:
# iptables -A INPUT -i eth1 -s 10.0.0.0/8 -m limit --chegara 5/m --limit-burst 7 -j LOG --log-prefiks "IP_SPOOF A:"
# iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j DROP

16. Muayyan MAC manzillaridan trafikni tiklash yoki ruxsat berish.

# iptables -A INPUT -m mac --mac-source 00:0F:EA:91:04:08 -j DROP
## *faqat 00:0F:EA:91:04:07 mac manzilidan # 8080 TCP portiga ruxsat berish * ##
# iptables -A INPUT -p tcp --destination-port 22 -m mac --mac-source 00:0F:EA:91:04:07 -j QABUL QILING

17. ICMP Ping so'rovlariga ruxsat berish yoki rad etish.

Pingni o'chirish uchun:
# iptables -A INPUT -p icmp --icmp-turi echo-so'rov -j DROP
# iptables -A INPUT -i eth1 -p icmp --icmp tipidagi echo-so'rov -j DROP

Muayyan tarmoqlar/xostlar uchun ruxsat bering:
# iptables -A INPUT -s 192.168.1.0/24 -p icmp --icmp-type echo-request -j QABUL ET

ICMP so'rovlarining faqat bir qismiga ruxsat bering:
### ** standart kiruvchi siyosatlar DROP ga o‘rnatilgan deb faraz qilinadi ** ###
# iptables -A INPUT -p icmp --icmp-turi echo-reply -j QABUL ET
# iptables -A INPUT -p icmp --icmp-turi manzilga etib bo'lmaydi -j QABUL QILING
# iptables -A INPUT -p icmp --icmp-turi vaqtdan oshib ketdi -j QABUL ET
## ** so'rovga javob berishga ruxsat bering ** ##
# iptables -A INPUT -p icmp --icmp-turi echo-so'rov -j QABUL QILING

18. Bir qator portlarni oching.

# iptables -A INPUT -m holati --holat YANGI -m tcp -p tcp --dport 7000:7010 -j QABUL ET

19. Manzillar qatorini oching.

## Agar manzil 192.168.1.100 dan 192.168.1.200 gacha bo'lsa, 80 (Apache) portiga ulanishga ruxsat bering ##
# iptables -A INPUT -p tcp --destination-port 80 -m iprange --src-diapazoni 192.168.1.100-192.168.1.200 -j QABUL QILING

## nat ## uchun misol
# iptables -t nat -A POSTROUTING -j SNAT --to-source 192.168.1.20-192.168.1.25

20. Standart portlarni yoping yoki oching.

Portni blokirovka qilish uchun ACCEPT ni DROP bilan almashtiring.

## ssh tcp porti 22 ##
iptables -A INPUT -m holati --holat YANGI -m tcp -p tcp --dport 22 -j QABUL QILING
iptables -A INPUT -s 192.168.1.0/24 -m holat --holat YANGI -p tcp --dport 22 -j QABUL QILING

## stakan (chop etish xizmati) mahalliy tarmoq uchun udp/tcp port 631 ##
iptables -A INPUT -s 192.168.1.0/24 -p udp -m udp --dport 631 -j QABUL QILING
iptables -A INPUT -s 192.168.1.0/24 -p tcp -m tcp --dport 631 -j QABUL QILING

## mahalliy tarmoq uchun NTP orqali vaqtni sinxronlash (udp port 123) ##
iptables -A INPUT -s 192.168.1.0/24 -m holat --holat YANGI -p udp --dport 123 -j QABUL QILING

## tcp port 25 (smtp) ##
iptables -A INPUT -m holati --holat YANGI -p tcp --dport 25 -j QABUL QILING

# dns server portlari ##
iptables -A INPUT -m holati --holat YANGI -p udp --dport 53 -j QABUL QILING
iptables -A INPUT -m holati --holat YANGI -p tcp --dport 53 -j QABUL QILING

## http/https www server port ##
iptables -A INPUT -m holati --holat YANGI -p tcp --dport 80 -j QABUL QILING
iptables -A INPUT -m holati --holat YANGI -p tcp --dport 443 -j QABUL QILING

## tcp port 110 (pop3) ##
iptables -A INPUT -m holati --holat YANGI -p tcp --dport 110 -j QABUL QILING

## tcp port 143 (imap) ##
iptables -A INPUT -m holati --holat YANGI -p tcp --dport 143 -j QABUL QILING

## Mahalliy tarmoq uchun Samba fayl serveri ##
iptables -A INPUT -s 192.168.1.0/24 -m holat --holat YANGI -p tcp --dport 137 -j QABUL ET
iptables -A INPUT -s 192.168.1.0/24 -m holat --holat YANGI -p tcp --dport 138 -j QABUL QILING
iptables -A INPUT -s 192.168.1.0/24 -m holat --holat YANGI -p tcp --dport 139 -j QABUL ET
iptables -A INPUT -s 192.168.1.0/24 -m holat --holat YANGI -p tcp --dport 445 -j QABUL ET

## mahalliy tarmoq uchun proksi-server ##
iptables -A INPUT -s 192.168.1.0/24 -m holat --holat YANGI -p tcp --dport 3128 -j QABUL QILING

## mahalliy tarmoq uchun mysql server ##
iptables -I INPUT -p tcp --dport 3306 -j QABUL ET

21. Bitta manzil uchun serverga parallel ulanishlar sonini cheklang.

Cheklovlar uchun connlimit moduli ishlatiladi. Har bir mijoz uchun faqat 3 ta ssh ulanishiga ruxsat berish uchun:
# iptables -A INPUT -p tcp --syn --dport 22 -m connlimit --connlimit-yuqori 3 -j RAD ET

HTTP so'rovlari sonini 20 ga o'rnating:
# iptables -p tcp --syn --dport 80 -m connlimit --connlimit-yuqori 20 --connlimit-mask 24 -j DROP

Qayerda:
--connlimit-above 3: Qoida faqat ulanishlar soni 3 dan oshsa amal qilishini bildiradi.
--connlimit-mask 24: Tarmoq niqobini belgilaydi.

Iptables bilan yordam.

Iptables bo'yicha yordam topish uchun mandan foydalaning:
$ man iptables

Muayyan buyruqlar va maqsadlar bo'yicha yordamni ko'rish uchun:
# iptables -j DROP -h

Iptables qoidasini tekshirish.

Ochiq/yopiq portlarni tekshirish:
# netstat -tulpn

Muayyan portning ochiq/yopiqligini tekshiramiz:
# netstat -tulpn | grep: 80

Keling, iptables 80-portga ulanishga ruxsat berishini tekshiramiz:
# iptables -L INPUT -v -n | grep 80

Aks holda, keling, uni hamma uchun ochamiz:
# iptables -A INPUT -m holati --holat YANGI -p tcp --dport 80 -j QABUL ET

Telnet yordamida tekshiring
$ telnet ya.ru 80

Tekshirish uchun nmap dan foydalanishingiz mumkin:
$ nmap -sS -p 80 ya.ru

Iptables administrator qo'lida ajoyib vositadir. Agar siz Ubuntu ish stolida o'zingizni osongina va sodda tarzda himoya qilishingiz kerak bo'lsa, unda UFW deb nomlangan iptables uchun qulay konsol qo'shimchasi mavjudligini bilishingiz kerak va buning uchun GUFW grafik dasturi mavjud. Video material Ubuntu-ni yanada xavfsizroq qilishga yordam beradi.

MikroTikni qanday sozlashni ushbu ishlab chiqaruvchining uskunalari bo'yicha onlayn kursida o'rganishingiz mumkin. Kurs muallifi - sertifikatlangan MikroTik treneri. Batafsil maqolaning oxirida o'qishingiz mumkin.

Maqolada ICMP trafigini blokirovka qilish qanchalik xavfli ekanligi haqidagi savolga javob beriladi.

ICMP - bu tortishuv suyagi

Ko'pgina tarmoq ma'murlari Internet boshqaruv xabari protokoli (ICMP) xavfsizlikka xavf tug'diradi va shuning uchun har doim bloklanishi kerak, deb hisoblashadi.To'g'ri, protokolda xavfsizlik bilan bog'liq ba'zi muammolar mavjud va ba'zi so'rovlar bloklanishi kerak. Lekin bu sabab emas. barcha ICMP trafigini bloklash uchun!

ICMP trafigi juda ko'p muhim funktsiyalarga ega; Ulardan ba'zilari muammolarni bartaraf etish uchun foydalidir, boshqalari esa tarmoqning to'g'ri ishlashi uchun zarurdir. Quyida siz bilishingiz kerak bo'lgan ICMP protokolining ba'zi muhim qismlari keltirilgan. Siz ularni tarmog'ingiz orqali qanday qilib eng yaxshi yo'naltirishni o'ylab ko'rishingiz kerak.

Echo so'rovi va va Echo javobi

IPv4 - aks-sado so'rovi (8-toifa, Code0) va aks-sado javobi (Type0, Code0)
IPv6 - Echo so'rovi (Type128, Code0) va Echo-javob (Type129, Code0)

Biz hammamiz yaxshi bilamizki, ping muammolarni bartaraf etishning birinchi vositalaridan biridir. Ha, agar siz uskunangizda ICMP paketlarini qayta ishlashni yoqsangiz, bu sizning xostingiz endi aniqlanishi mumkinligini anglatadi, lekin sizniki allaqachon 80-portni tinglab, mijoz so'rovlariga javoblar yubormayaptimi? Albatta, agar siz DMZ-ni tarmoqning chekkasida bo'lishini istasangiz, ushbu so'rovlarni ham bloklang. Ammo tarmog'ingizdagi ICMP trafigini blokirovka qilish orqali siz o'z xavfsizligingizni kuchaytirmaysiz, aksincha, keraksiz murakkab muammolarni bartaraf etish jarayoniga ega bo'lgan tizimga ega bo'lasiz ("Iltimos, shlyuz tarmoq so'rovlariga javob beradimi?", "Yo'q, lekin bu meni umuman xafa qilmaydi, chunki men bunga ahamiyat bermayman. "Hech narsa demayman!").

Esingizda bo'lsin, siz so'rovlarning ma'lum bir yo'nalishda ketishiga ham ruxsat berishingiz mumkin; masalan, uskunani shunday sozlangki, sizning tarmog'ingizdan Echo so'rovlari Internetga o'tadi va Internetdan Echo javoblari sizning tarmog'ingizga boradi, lekin aksincha emas.

Paket parchalanishi kerak (IPv4) / Paket juda katta (IPv6)

IPv4 - (3-toifa, Code4)
IPv6 - (2-toifa, Code0)

ICMP protokolining ushbu komponentlari juda muhim, chunki ular TCP protokolining ajralmas qismi bo'lgan Path MTU Discovery (PMTUD) ning muhim komponentidir. Ikki xostga TCP maksimal segment oʻlchami (MSS) qiymatini ikkita manzil oʻrtasidagi aloqa yoʻli boʻylab eng kichik MTUga mos keladigan qiymatga moslashtirishga ruxsat beradi. Agar paketlar yo'lida jo'natuvchi yoki qabul qiluvchiga qaraganda kichikroq Maksimal uzatish birligi bo'lgan tugun mavjud bo'lsa va ular bu to'qnashuvni aniqlash vositalariga ega bo'lmasa, u holda trafik jimgina yo'q qilinadi. Va siz aloqa kanali bilan nima sodir bo'layotganini tushunmaysiz; boshqacha qilib aytganda, "siz uchun quvnoq kunlar keladi".

Fragment qilmang - ICMP o'tmaydi!

Interfeys orqali uzatish uchun juda katta bo'lgan IPv4 paketlarini Fragment qilmang bit to'plami (ularning ko'pchiligi!) yoki IPv6 paketlari (IPv6 da marshrutizatorlar tomonidan parchalanish yo'qligini unutmang) yo'riqnoma paketdan voz kechishiga olib keladi. va quyidagi ICMP xatolari bilan uzatish manbasiga javob hosil qiling: Fragmentatsiya talab qilinadi ( Parchalanish talab qilinadi) yoki Paket juda katta ( Paket ham Katta). Agar ushbu xatolarga ega bo'lgan javoblarni jo'natuvchiga qaytarib bo'lmasa, u ACK paketlarini etkazib berish to'g'risida tasdiqlovchi javoblarning yo'qligini izohlaydi ( Tasdiqlash) tiqilib qolish/yo'qotish sifatida qabul qiluvchidan va paketlarni qayta uzatish manbasi sifatida, ular ham tashlanadi.

Bunday muammoning sababini aniqlash va uni tezda hal qilish qiyin; TCP qo'l siqish jarayoni yaxshi ishlaydi, chunki u kichik paketlarni o'z ichiga oladi, lekin ommaviy ma'lumotlarni uzatish sodir bo'lishi bilanoq, uzatish seansi muzlatib qo'yadi, chunki uzatish manbai emas. xato xabarlarini qabul qilish.

Paketlarni etkazib berish yo'lini o'rganish

RFC 4821 tarmoq trafigi ishtirokchilariga paket yo'lini tekshirish yordamida ushbu muammoni hal qilishda yordam berish uchun ishlab chiqilgan (MTU kashfiyoti (PLPMTUD). Standart ma'lumotlarning maksimal miqdorini aniqlash imkonini beradi (Maksimal uzatish birligi (MTU), foydali ma'lumotlar blokining maksimal hajmini asta-sekin oshirib, bir iteratsiyada protokol orqali uzatilishi mumkin (Maksimal segment hajmi (MSS), paketni uzatuvchidan qabul qiluvchigacha bo'lgan yo'l bo'ylab qismlarga ajratmasdan maksimal mumkin bo'lgan hajmini topish uchun. Bu funksiya Internet boshqaruv xabari protokoli (ICMP) orqali xatoliklarga javoblarni oʻz vaqtida olishga bogʻliqlikni kamaytiradi va koʻpgina tarmoq qurilmalari steklari va mijoz operatsion tizimlarida mavjud.Afsuski, u maksimal mumkin boʻlgan oʻlcham haqida toʻgʻridan-toʻgʻri maʼlumotlarni olish kabi samarali emas. Iltimos, ushbu ICMP xabarlarining uzatish manbasiga qaytishiga ruxsat bering, shundaymi?

Paketni uzatish vaqti oshib ketdi

IPv4 - (11-toifa, Code0)
IPv6 - (3-toifa, Code0)

Traceroute - bu sayohatning har bir bosqichini batafsil ko'rsatadigan ikkita xost o'rtasidagi tarmoq ulanishlaridagi muammolarni bartaraf etish uchun juda foydali vosita.


IP protokoli uchun ma'lumotlar paketining ishlash muddati bo'lgan paketni yuboradi (Yashash vaqti (TTL) teng 1 birinchi marshrutizator paket ishlash muddatidan oshib ketganligi haqida xato xabarini (shu jumladan o'z IP-manzilini) yuborishi uchun. Keyin u TTL 2 va boshqalar bilan paketni yuboradi. Ushbu protsedura paket yo'li bo'ylab har bir tugunni aniqlash uchun kerak.

NDP va SLAAC (IPv6)

Router so'rovi (RS) (Type133, Code0)
Router reklamasi (RA) (Type134, Code0)
Qo'shni so'rovi (NS) (135-toifa, Code0)
Qo'shni reklama (NA) (Type136, Code0)
Qayta yo'naltirish (Type137, Code0)

IPv4 OSI tarmoq modelining 2 va 3 qatlamlarini xaritalash uchun Adres Resolution Protocol (ARP) dan foydalangan bo'lsa, IPv6 Neighbor Discovery Protocol (NDP) ko'rinishida boshqa yondashuvdan foydalanadi. NDP ko'plab xususiyatlarni taqdim etadi, jumladan marshrutizatorni aniqlash, prefiksni aniqlash, manzilni aniqlash va boshqalar. NDP-ga qo'shimcha ravishda, Stateless Address AutoConfiguration (SLAAC) sizga tarmoqdagi xostni dinamik ravishda sozlash imkonini beradi, bu DHCP kontseptsiyasiga o'xshaydi (garchi DHCPv6 yanada batafsil nazorat qilish uchun mo'ljallangan).

IP ma'lumotlarni uzatish protokoli to'g'ri ishlashi uchun ushbu besh turdagi ICMP xabarlari tarmoq ichida bloklanmasligi kerak (tashqi perimetrga e'tibor bermaslik).

ICMP turini raqamlash

Internet boshqaruv xabari protokoli (ICMP) "turi" maydoni bilan aniqlangan ko'plab xabarlarni o'z ichiga oladi.

Turi Ism Spetsifikatsiya
0 Echo javob
1 Tayinlanmagan
2 Tayinlanmagan
3 Manzil mavjud emas
4 Manbani o'chirish (eskirgan)
5 Qayta yo'naltirish
6 Muqobil xost manzili (eskirgan)
7 Tayinlanmagan
8 Echo
9 Router reklama
10 Router so'rovi
11 Vaqt o'tdi
12 Parametr muammosi
13 Vaqt tamg'asi
14 Vaqt tamg'asi javobi
15 Ma'lumot so'rovi (eskirgan)
16 Axborotga javob (eskirgan)
17 Manzil niqobi soʻrovi (eskirgan)
18 Manzil niqobiga javob (eskirgan)
19 Zaxiralangan (Xavfsizlik uchun) Yakkaxon
20-29 Zaxiralangan (mustahkamlik tajribasi uchun) ZSu
30 Traceroute (eskirgan)
31 Datagram konvertatsiyasi xatosi (eskirgan)
32 Mobil xostni qayta yo‘naltirish (eskirgan) David_Jonson
33 IPv6 qayerdasiz (eskirgan)
34 IPv6 Men shu yerdaman (eskirgan)
35 Mobil roʻyxatdan oʻtish soʻrovi (eskirgan)
36 Mobil registratsiya javobi (eskirgan)
37 Domen nomini so'rash (eskirgan)
38 Domen nomiga javob (eskirgan)
39 SKIP (eskirgan)
40 Fotosuratlar
41 Seamoby kabi eksperimental mobillik protokollari tomonidan foydalaniladigan ICMP xabarlari
42 Kengaytirilgan echo so'rovi
43 Kengaytirilgan aks-sado javobi
44-252 Tayinlanmagan
253 RFC3692 uslubidagi tajriba 1
254 RFC3692 uslubidagi tajriba 2
255 Zaxiralangan

Tezlik chegaralari haqida bir necha so'z

Ushbu maqolada tasvirlanganlarga o'xshash ICMP xabarlari juda foydali bo'lishi mumkin bo'lsa-da, ushbu xabarlarning barchasini yaratish marshrutizatorlarda CPU vaqtini olishini va trafikni hosil qilishini unutmang. Oddiy holatda xavfsizlik devori orqali soniyasiga 1000 ta ping olishingizni chindan ham kutyapsizmi? Bu oddiy trafik deb hisoblanadimi? Balki yo'q. Ushbu turdagi ICMP trafiklari uchun tarmoq o'tkazish qobiliyatini o'zingizga mos ravishda cheklang; bu qadam tarmoqni himoya qilishga yordam beradi.

O'qing, tadqiq qiling va tushuning

ICMP paketlarini "bloklash yoki bloklamaslik" mavzusini muhokama qilish har doim chalkashliklar, tortishuvlar va kelishmovchiliklarga olib kelishini hisobga olib, men ushbu mavzuni mustaqil ravishda o'rganishni davom ettirishni taklif qilaman. Men ushbu sahifada ko'plab havolalarni taqdim etdim; Menimcha, muammolarni to'liqroq tushunish uchun siz ularni o'qishga vaqt sarflashingiz kerak. Tarmog'ingiz uchun eng yaxshisi haqida ma'lumotli tanlov qiling.

MikroTik: uni ishlashi uchun qaerga bosish kerak?
MikroTik mahsulotlarining barcha afzalliklariga qaramay, bitta kamchilik bor - uning konfiguratsiyasi haqida juda ko'p tarqoq va har doim ham ishonchli ma'lumotlar mavjud. Biz rus tilidagi ishonchli manbani tavsiya qilamiz, unda hamma narsa mantiqiy va tuzilgan - video kurs " MikroTik uskunasini sozlash" Kurs 162 ta videodars, 45 ta laboratoriya ishi, o'z-o'zini tekshirish savollari va eslatmalarni o'z ichiga oladi. Barcha materiallar siz bilan cheksiz qoladi. Kurs sahifasida so'rov qoldirib, kursning boshlanishini bepul tomosha qilishingiz mumkin. Kurs muallifi - sertifikatlangan MikroTik treneri.

Xavfsizlik devori har qanday server uchun birinchi mudofaa chizig'i bo'lib, uning to'g'ri konfiguratsiyasi tajovuzkorning tizimga kirishga urinishlarida oldinga siljishi mumkinligini aniqlaydi. Zamonaviy o't o'chirish dasturlari ko'plab xavfsizlik mexanizmlarini taklif etadi, ularning yordamida siz 99% tajovuzkorlarni pastadirdan saqlay olasiz. Va bularning barchasi qimmatbaho uskunalar va tijorat dasturiy ta'minotini sotib olishning hojati yo'q.

Barcha xakerlarning asosiy maqsadi serverning buyruq tarjimoni imkoniyatlaridan o'z manfaati yo'lida foydalanish uchun unga kirishdir. Ko'pincha "muqaddaslar muqaddasiga" kirish xizmatlardagi teshiklar yordamida yoki ulardan biriga (masalan, ssh) parolni aniqlash (qo'pol kuch) orqali amalga oshiriladi.

Port skanerlash

Mashinada zaif xizmatlar mavjudligini aniqlash uchun tajovuzkor port skaneri va turli xil zaifliklarni aniqlash tizimlari yordamida razvedka ishlarini amalga oshiradi. Odatda, nmap port skaneri sifatida ishlatiladi, u o'nlab turli usullarda skanerlash imkoniyatiga ega va ba'zi hollarda OT versiyalari va xizmatlarini aniqlay oladi. Bu yerda tajovuzkorlar tomonidan qo'llaniladigan mashhur nmap bayroqlari ro'yxati:

Skanerlash paytida ishlatiladigan Nmap bayroqlari

  • -sT - belgilangan portga ulanishni ochish va uni tugatish orqali oddiy TCP skanerlash;
  • -sS - SYN/ACK skanerlash, ulanishni ochish so'roviga javob berilgandan so'ng darhol aloqa uzildi;
  • -sU - UDP skanerlash;
  • -sF - FIN bayrog'i o'rnatilgan paketlarda skanerlash;
  • -sX - FIN, PSH va URG bayroqlari o'rnatilgan paketlar bilan skanerlash;
  • -sN - o'rnatilgan bayroqlarsiz paketlarni skanerlash.

Anti-skanerlash usuli oddiy va har qanday tizim ma'muriga ma'lum. Bu tashqi tarmoqdan ko'rinmasligi kerak bo'lgan barcha xizmatlarni shunchaki yopishdan iborat. Masalan, agar mashina ssh, samba va apache xizmatlarini ishlatsa va tashqi dunyodan faqat korporativ veb-sahifaga ega veb-server ko'rinadigan bo'lsa, xavfsizlik devori quyidagicha sozlanishi mumkin:

Dastlabki iptables sozlamalari

outif="eth1"
iptables -F
iptables -i $outif -A INPUT \
-m conntrack\
--ctstate TUZILGAN, BOG'LIQ \
-j QABUL
iptables -i $outif -A INPUT -p tcp \
--dport 80 -j QABUL QILING
iptables -i $outif -P INPUT DROP
iptables -i $outif -P OUTPUT QABUL

Dastlabki ipfw sozlamalari

outif="rl0"
ipfw qo'shish ipni istalgandan istalganiga ruxsat berish \
lo0 orqali
ipfw qo'shish mendan IP-ga ruxsat bering
$outif orqali
ipfw qo'shish menga har qanday tcp ruxsat berish \
$outif orqali tashkil etilgan
ipfw add har qanday 80 dan tcp ruxsat berish \
menga $outif orqali
ipfw inkor qilish ipini istalgandan istalganiga qo'shing \
$outif orqali

Dastlabki pf sozlash

outif="rl0"
o'tkazib yuborishni lo0 ga o'rnating
hammasini bloklash
$outif dan $outif \ o'tib ketdi
har qanday saqlash holatiga
$outif proto-ni istalgan \ dan o'tkazing
$outif 80 portiga

Barcha uchta qoidalar to'plami bir xil ishni bajaradi - ular har qanday trafikni orqaga qaytish interfeysi orqali o'tkazishga imkon beradi, allaqachon o'rnatilgan ulanishlardan paketlarni qabul qilishga imkon beradi (masalan, brauzer uzoq serverga so'rovga javob olishi uchun). ), 80-portga qo'ng'iroqlarga ruxsat berish, qolganlarini blokirovka qilish va tashqaridan har qanday ulanishga ruxsat berish. E'tibor bering, agar iptables va ipfw misollarida biz allaqachon o'rnatilgan ulanishlardan paketlarni qabul qilishga ruxsat berish qoidalarini aniq belgilab qo'ygan bo'lsak, pf holatida har qanday chiquvchi ulanishlarga ruxsat beruvchi qoidalar to'plamida "holatni saqlash" ni belgilash kifoya edi.

Umuman olganda, tarmoq xizmatlarini skanerlash va kirishdan himoya qilishning ushbu sxemasi juda yaxshi ishlaydi, ammo biz ba'zi bir skanerlash turlarini umuman amalga oshirib bo'lmaydigan tarzda xavfsizlik devorini sozlashimiz mumkin. Texnik jihatdan biz buni oddiy skanerlar uchun (nmap bayroqlari "-sT", "-sS" va "-sU") amalga oshira olmaymiz, chunki bunda jinoiy narsa yo'q, lekin "-sN" "-sF kabi nostandart skanerlash turlari. " va "-sX" qonuniy ilovalar tomonidan yaratilishi mumkin bo'lmagan paketlarni yaratadi.

Shuning uchun, hech qanday shubhasiz, biz bunday aloqalarni rad etamiz.

Skanerlashning ekzotik turlariga qarshi kurash usullari

# FIN skanerlashni o'chiring
Linux> iptables -A INPUT –p tcp\
–m tcp\
--tcp-bayroqlari FIN,ACK FIN -j DROP
FreeBSD>
o'rnatilmagan tcpflags fin
# X-skanerlashni o'chiring
Linux>
--tcp-bayroqlari FIN, SYN, RST, PSH, ACK, URG
FIN,SYN,RST,PSH,ACK,URG\
–j DROP
FreeBSD> ipfw tcp ni istalgandan istalganiga qo'shish \
tcpflags fin, syn, rst, psh, ack, urg'u
# N-skanerlashni o'chiring
Linux> iptables -A INPUT –p tcp –m tcp\
--tcp-bayroqlari FIN,SYN,RST,PSH,ACK,URG NONE –j DROP
FreeBSD> ipfw tcp ni istalgandan istalganiga qo'shish \
tcpflags !fin, !syn, !rst, !psh, !ack, !urg
OpenBSD-da bu satrlarning barchasi boshida oddiy yozuv bilan almashtirilishi mumkin
/etc/pf.conf:
hammasini tozalang

Skrab direktivasi paketlarni normallashtirish mexanizmini ishga tushiradi, unda parchalangan paketlar qayta birlashtiriladi va noto'g'ri bayroq kombinatsiyasi bo'lgan paketlar o'chiriladi. Skrabning ekzotik turlariga qo'shimcha ravishda, skrab o'zingizni aldashlarni aniqlash tizimlaridan (juda parchalangan paketlarni yuborish) va DoS hujumlarining ayrim turlaridan himoya qilish imkonini beradi.

nmap "-sS" bayrog'i yordamida boshlangan SYN/ACK skanerlashdan himoya qilish uchun biz pf va iptables/netfilter xavfsizlik devorlarida mavjud bo'lgan passiv OS barmoq izi usulidan foydalanishimiz mumkin (1.4.6 versiyasidan beri). Muntazam skanerlash vaqtida ("-st" bayrog'i) nmap standart operatsion tizim soket interfeysidan foydalanadi, shuning uchun bunday skanerlash oddiy paketlar oqimidan deyarli farq qilmaydi (biz uning ba'zi farqlarini quyida ko'rib chiqamiz), ammo , SYN/ACK skanerlash paytida nmap paketlarni o'zi ishlab chiqaradi, shuning uchun ular o'z manbalarini beradigan ba'zi xususiyatlarga ega. Passiv operatsion tizimni aniqlash usuli standart xavfsizlik devori qoidalaridan foydalangan holda ushbu paketlarni aniqlash va ularni yo'q qilish imkonini beradi:

OpenBSD> istalgan NMAP operatsion tizimidan tezda bloklanadi
Linux> iptables -I INPUT -p tcp -m osf --janr NMAP \
-j DROP

Iptables/netfilter xavfsizlik devori osf moduli OpenBSD ishlab chiquvchilari (/etc/pf.os) tomonidan tuzilgan va yangilangan barmoq izlari ma'lumotlar bazasidan foydalanadi, shuning uchun ikkala qoidalar ham bir xil natijalarni berishi kerak. Bundan tashqari, ular nmap yordam dasturining ("-O" bayrog'i) OTni aniqlash funksiyasiga samarali qarshi turishi qiziq.

Endi biz standart va ahmoqona "-sT" dan tashqari deyarli barcha skanerlash turlaridan himoyalanganmiz. U bilan nima qilish kerak? Bu aslida oddiy. Portni skanerlash faktini xavfsizlik devori jurnallarini tahlil qilish orqali aniqlash oson. Agar qisqa vaqt ichida turli portlarga ko'plab ulanishlar bo'lsa, bu bizni skanerdan o'tkazganimizni anglatadi. Qolgan narsa bu fikrni xavfsizlik devori qoidalariga o'tkazishdir. Ishlamaydigan portlarni taqillatishda qat'iy bo'lgan har bir kishini bloklaydigan iptables uchun ajoyib retsept mavjud:

Iptables bilan skanerlash bilan kurashish

# Ishlamaydigan portlarning taqillatilishini tekshiring (soatiga 10 ta)

--soniya 3600 --hitcount 10 --rttl -j QAYTISH
# Ishlamaydigan portlarni taqillatish uchun ikkinchi tekshirish (daqiqada 2)
iptables -A INPUT -m so'nggi --rcheck \
--soniya 60 --hitcount 2 --rttl -j QAYTISH
# Biz taqillatganlarning manzillarini ro'yxatga kiritamiz
iptables -A INPUT -m so'nggi --set
# Limitdan oshib ketganlarning barchasidan paketlarni tashlang
ulanishlar soni
iptables -P INPUT -j DROP

Patch-omatic loyihasining ishlanmalarini o'z ichiga olgan xtables-addons paketini o'rnatish orqali biz scanlogd demonining tasviri va o'xshashligida amalga oshirilgan PSD (Port Scan Detect) moduliga kirish imkoniyatiga ega bo'lamiz. Oldingi barcha qatorlarni oddiy qoida bilan osongina almashtirish mumkin:

# iptables -A INPUT -m psd -j DROP

Afsuski, ipfw va pf paket filtrlarida bunday narsa yo'q, lekin bu muammo emas, chunki PortSentry demoni va scanlogd portni skanerlash orqali yaxshi qarshi turadi.

Icmp xabarlarini taqiqlash

Xost haqida qo'shimcha ma'lumotlarni ochib beradigan yoki turli zararli harakatlarni (masalan, marshrutlash jadvalini o'zgartirish) amalga oshirish uchun ishlatilishi mumkin bo'lgan ICMP xabarlarini taqiqlash ham yaxshi amaliyotdir. Quyida mumkin bo'lgan ICMP xabar turlari ro'yxati keltirilgan:

ICMP xabarlarining turlari

  • 0 - aks-sado javobi (echo javobi, ping)
  • 3 - manzilga etib bo'lmaydi (adresga etib bo'lmaydi)
  • 4 - manbani o'chirish (manbani bostirish, paketlarni sekinroq yuboring)
  • 5 - qayta yo'naltirish
  • 8 - aks-sado so'rovi (echo so'rovi, ping)
  • 9 - yo'riqnoma reklamasi
  • 10 - yo'riqnoma so'rovi
  • 11 - ishlash muddati o'tdi (paketning amal qilish muddati)
  • 12 - IP sarlavhasi noto'g'ri (noto'g'ri IP paket sarlavhasi)
  • 13 - vaqt tamg'asi so'rovi (vaqt hisoblagich qiymatini so'rash)
  • 14 - vaqt tamg'asi javobi (vaqt hisoblagich qiymati so'roviga javob)
  • 15 - ma'lumot so'rovi
  • 16 - ma'lumotga javob (ma'lumot so'roviga javob)
  • 17 - manzil maskasi so'rovi (tarmoq niqobi so'rovi)
  • 18 - manzil niqobiga javob (tarmoq maskasi so'roviga javob)

Ko'rib turganingizdek, ba'zi ICMP xabarlariga javob berish ba'zi xost ma'lumotlarining oshkor etilishiga olib kelishi mumkin, boshqalari esa marshrutlash jadvalining o'zgarishiga olib kelishi mumkin, shuning uchun ularni o'chirib qo'yish kerak.

Odatda, ICMP xabarlarining 0, 3, 4, 11 va 12 tashqi dunyoga chiqishiga ruxsat beriladi, shu bilan birga faqat 3, 8 va 12 kirish sifatida qabul qilinadi.Bu turli xil xavfsizlik devorlarida qanday amalga oshiriladi:

Xavfli ICMP xabarlarini taqiqlash

Linux> iptables -A INPUT -p icmp\
-icmp-turi 3,8,12 -j QABUL QILING
Linux> iptables -A OUTPUT -p icmp\
-icmp-turi 0,3,4,11,12 -j QABUL
FreeBSD> ipfw qo'shish ruxsat icmp \
har qanday dan $outifgacha \ da
$outif icmptype 3,8,12 orqali
FreeBSD> ipfw qo'shish ruxsat icmp \
$outif dan har qanday tashqariga \
$outif icmptype 0,3,4,11,12 orqali
OpenBSD> inet proto icmp ga o'tish \
har qanday dan $outif \
icmp turi (3, 8, 12) holatini saqlaydi
OpenBSD> inet proto icmp \ o'tkazib yuboring
$outifdan istalgan \gacha
icmp turi (0, 3, 4, 11, 12)\
holatni saqlash

Agar xohlasangiz, barcha ICMP trafigini, shu jumladan ping so'rovlarini bloklashingiz mumkin, ammo bu tarmoqning to'g'ri ishlashiga ta'sir qilishi mumkin.

Qo'pol kuch

Ochiq portlar va operatsion tizimlar haqidagi ma'lumotlarni o'rganib chiqqandan so'ng, tajovuzkor tizimga kirishga harakat qiladi, bu xizmatlardagi teshiklardan foydalanish yoki parollarni topishga asoslangan bo'lishi mumkin. Xavfsizlik devori bizga xizmatlarni buzish ehtimolini oldini olishga yordam bermaydi, lekin parollarni shafqatsiz ravishda majburlash jarayonini sekinlashtirish oson. Buning uchun qobiliyatlar bitta IP manzildan mashinaga keladigan paketlar sonini cheklash uchun ishlatiladi. Buni iptables yordamida qanday qilish kerak:

Iptables yordamida qo'pol kuch himoyasi

# Ulanishlarni tekshirish uchun zanjir
iptables -N brute_check
# Agar 60 dan oshgan bo'lsa, manzilni bloklang
soniyada u 2 dan ortiq ulanishni boshladi

--yangilash --soniya 60\
--hitcount 3 -j DROP
# Agar yo'q bo'lsa, ulanishga ruxsat bering va
manzilni ro'yxatga qo'shing
iptables -A brute_check -m yaqinda\
--set -j QABUL QILING
# INPUT zanjirini tozalang
iptables -F INPUT
# Zanjirga brute_chek yuboring
ulanishga harakat qiladigan har bir kishi
22-port

--ctstate NEW -p tcp \
--dport 22 -j brute_check
iptables -P INPUT DROP

Xuddi shu narsa pf yordamida amalga oshirilishi mumkin:

Pf yordamida qo'pol kuch himoyasi

# Shafqatsiz kuchlar uchun jadval yarating
stol davom eting
# Unga kirgan barchani bloklang
dan tezda blokirovka qiling
# Daqiqada 22-portda ikkitadan ortiq ulanishni boshlagan har bir kishini shafqatsizlar jadvaliga joylashtiring
$ext_if inet proto tcp ni $outif \ ga o'tkazing
port 22 bayroqlari S/SA holatini saqlaydi \
(max-src-conn-rate 60/2, \ortiqcha yuk yuvish)

Ipfw xavfsizlik devori shafqatsiz kuchlarga qarshi samarali kurashish uchun etarli funksiyaga ega emas, shuning uchun uning foydalanuvchilari maxsus PAM modullari, hujumni aniqlash tizimlari va sshguard kabi dasturlar kabi yuqori darajadagi vositalardan foydalanishlari kerak.

Spoofing

Spoofing (paketning manba manzilini aldash) DoS hujumlarini amalga oshirish yoki xavfsizlik devorini chetlab o'tish uchun ishlatilishi mumkin. Birinchi holda, firibgarlik tajovuzkorga katta afzallik beradi, chunki u hujumga javob berishni sezilarli darajada murakkablashtiradi (butunlay boshqa jo'natuvchi manzillari bilan kelgan paketlarni tasniflash va bloklash unchalik oson emas) va yangi ulanishlarni yopish jarayonini kechiktiradi (odatda soxta manzilga etib bo'lmaydi, shuning uchun ulanish faqat kutish vaqti tugaganidan keyin yopiladi). Xavfsizlik tizimlarini chetlab o'tish uchun amalga oshiriladigan firibgarlik kamroq xavfli va ko'p hollarda nazorat qilinishi mumkin.

Ko'pincha, xostning tashqi tarmoq xizmatlarini blokirovka qilganda, tizim ma'murlari ularni ma'lum bir manzillar oralig'ida (masalan, uy mashinasidan ulanish uchun) ochiq qoldiradilar. Ushbu manzillardan birini aniqlagandan so'ng, tajovuzkor ushbu manzildan qaytish manzili sifatida paket yaratishi va shu bilan xavfsizlik devori orqali "o'tishi" mumkin. Keyin u TCP paketlarining tartib raqamlarini taxmin qilishi va qaytish manziliga ishonadigan xizmat kerakli amalni bajarishiga ishonch hosil qilishi mumkin. Bu amalga oshirish juda qiyin hujum bo'lib, uni baribir vakolatli mutaxassis amalga oshirishi mumkin va agar biz UDP protokoli haqida gapiradigan bo'lsak, buni hatto xaker ham qila oladi.

Yaxshiyamki, bu hujumlardan o'zingizni himoya qilish oson. Himoyalanmagan xizmatlarning portlarini tashqi dunyoga ochmaslik kifoya va shoshilinch zarurat tug'ilganda xizmatlarning xavfsizlik tizimlaridan (masalan, ssh sertifikatlari) yoki "portni taqillatish" mexanizmidan foydalaning (oxirida muhokama qilinadi). maqola).

Ichki va tashqi tarmoqni (yoki ikkita mahalliy tarmoqni) ajratib turadigan tarmoq ko'prigi haqida gap ketganda, vaziyat yanada murakkablashadi. Mahalliy tarmoq ichidagi ishonchli munosabatlar odatiy holdir. Xizmatlar hamma uchun mavjud, autentifikatsiya, shifrlash va boshqalar yo'q. - o'g'ri uchun shunchaki mazali luqma. Tashqi tarmoqda bo'lgan holda, u ichki tarmoqning tarmoq niqobini bilib olishi va tegishli qaytish manziliga ega paketlarni yaratishi mumkin, bu esa barcha mahalliy resurslarga kirishga olib keladi. Bu haqiqatan ham xavfli holat, ammo uni to'g'ri xavfsizlik devori yoki OS konfiguratsiyasi bilan osongina oldini olish mumkin.

Buning uchun qaytish manzillari ichki tarmoqda ishlatiladiganlarga mos keladigan paketlarning tashqi interfeysdan o'tishini taqiqlash kifoya:

Linux> iptables -A INPUT -i $outif \
-s 192.168.1.0/24 -j INDOR
FreeBSD> ipfw qo'shish inkor IP dan \
$outif orqali istalganiga 192.168.1.0/24
OpenBSD> $outif dan \ blokiga kirish
192.168.1.0/24 istalganiga

Muqobil yoki qo'shimcha xavfsizlik chorasi sifatida siz maxsus ipfw va pf direktivalari va Linux yadro sozlamalaridan foydalanishingiz mumkin (va hatto kerak bo'ladi):

Linux> echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter
FreeBSD> ipfw har qanday dan antispoof bo'lmagan har biriga inkor ipni qo'shing
$ext_if uchun OpenBSD> antispoof

Ushbu uchta buyruq bir xil natijalarni beradi. Qaytish manzillari boshqa interfeysning tarmoq niqobiga mos keladigan barcha paketlar o'chiriladi.

IPTABLES ning afzalliklari

Maqolaning oxirida biz IPtables/netfilterning bir nechta qiziqarli xususiyatlarini ko'rib chiqamiz, ular serveringizni hujumlardan himoya qilishda foydali bo'lishi mumkin. Keling, "portni taqillatish" deb nomlangan xavfsizlik devorini masofadan boshqarish mexanizmidan boshlaylik. Uning mohiyati xavfsizlik devorini ma'lum bir portga ulangandan so'ng muayyan harakatlarni bajarishga majbur qilishdir. Quyida 27520 portni taqillatgandan keyin SSH portini 10 soniya davomida ochadigan qoidalar misoli keltirilgan:

iptables va portni taqillatish
# Himoyalangan portga ulanishlarni tekshirish zanjiri
iptables - N knock
# Agar oxirgi marta taqillatgan bo'lsa, ulanishga ruxsat bering
10 soniya
iptables -A knock -m so'nggi --rcheck --seconds 10\
-j QABUL
# INPUTni tozalash
iptables -F INPUT
# O'rnatilgan ulanishlar bilan bog'liq hamma narsaga ruxsat bering
iptables -A INPUT -m conntrack\
--ctstate TURQILDI, BOG'LIQ -j QABUL
# 22-portga ulanishni ochish uchun barcha urinishlar yuboriladi
taqillatish zanjirida tekshirish uchun

-p tcp --dport 22 -j knock
# Ro'yxatga 27520 portni taqillatgan shaxsning manzilini qo'shing
iptables -A INPUT -m conntrack --ctstate NEW \
-p tcp --dport 27520 -m yaqinda --set
# Qo'shni portlarni taqillatganda, manzilni ro'yxatdan olib tashlang
iptables -A INPUT -m conntrack --ctstate NEW -p tcp \
-m multiport --dport 27519,27521 -m yaqinda --olib tashlash
# Hamma narsani taqiqlash
iptables -P INPUT DROP

Oxiridan uchinchi qoida ro'yxatga taqillatgan shaxsning manzilini qo'shadi. Agar xuddi shu mashina taqillatgandan keyin 10 soniya ichida 22-portga kirsa, ulanish o'rnatiladi. Oxirgi qoida - bu "qo'pol kuch taqillatish" dan himoya. Agar tajovuzkor ulardan biri 22-portni ochadi degan umidda barcha portlarni ketma-ket taqillatishga harakat qilsa, bu qoida ishlaydi va uning manzili urilgandan so'ng darhol ro'yxatdan o'chiriladi.

Ikkinchi iptables yordam dasturi xtables-addons (patch-o-matic) paketida tarqatiladi va TARPIT deb ataladi. Bu tajovuzkorning uni yopishiga yo'l qo'ymaydigan, ulanishni "to'xtatib qo'yadigan" harakat (QABUL QILMA yoki REKD qilish bilan bir xil). Paketlari TARPIT-ga tushadigan ulanish muvaffaqiyatli o'rnatiladi, lekin oyna o'lchami nolga teng bo'ladi, buning natijasida masofaviy mashina ma'lumotlarni yubora olmaydi, resurslarini behuda sarflaydi va ulanish faqat vaqt tugashi bilan yopiladi. TARPIT favqulodda holatlarda DoS dan himoya qilish uchun ishlatilishi mumkin:

# iptables -A INPUT -p tcp -m tcp -dport 80 -j TARPIT

Yoki tajovuzkorni yo'ldan ozdirish va skanerlarga qarshi kurashish
portlar (faqat oddiy TCP skanerlash, "-sT"):

# iptables -A INPUT -p tcp -m tcp --dport 80 -j QABUL QILING
# iptables -A INPUT -p tcp -m tcp --dport 25 -j QABUL QILING
# iptables -A INPUT -p tcp -m tcp -j TARPIT

Ushbu qoidalar barcha portlar ochiq bo'lgan tizim ko'rinishini yaratadi, ammo agar siz ulardan biron biriga ulanishga harakat qilsangiz (80 va 25 dan tashqari), ulanishlar muzlab qoladi. Xuddi shu natijaga, lekin ulanishlar pasaymasdan, barcha ulanishni boshlash urinishlariga to'g'ri javob beradigan, lekin boshqa barcha paketlarga javob sifatida RST paketini yuboradigan DELUDE harakati yordamida erishish mumkin. Buzg'unchini yanada chalkashtirib yuborish uchun siz yuqorida tavsiflangan ikkita harakatdan birini tasodifiy faollashtiradigan CHAOS harakatidan foydalanishingiz mumkin.

xulosalar

Etarli bilim va hujjatlarni puxta o'qib chiqish bilan siz juda kuchli poydevor yaratishingiz mumkin, unga yaqinlashish unchalik oson bo'lmaydi. Zamonaviy xavfsizlik devorlari, ayniqsa pf va iptables, siz mutlaqo bepul olishingiz mumkin bo'lgan chaqirilmagan mehmonlarga qarshi ko'plab himoyalarni taklif qiladi.

Havolalar

  • sf.net/projects/sentrytools - PortSentry
  • www.openwall.com/scanlogd - scanlogd

Resurs oqishiga qarshi kurash

TARPIT harakatidan foydalanganda, konfiguratsiyaga quyidagi qoidani qo'shganingizga ishonch hosil qiling, aks holda "sagging" ulanishlar conntrack quyi tizimi tomonidan ishlov berilganda resurslarni iste'mol qiladi:

# iptables -t raw -I PREROUTING -p tcp --dport 25 -j NOTRACK

Foydalanuvchilarni ko'pincha Internetning sekinligi bezovta qiladi. Bu, ayniqsa, onlayn o'yinlar muxlislarining katta armiyasiga tegishli. Ping funksiyasini o'chirib qo'yish orqali mumkin bo'lgan kechikishlarni kamaytirishingiz mumkin.

Sizga kerak bo'ladi

  • - Windows operatsion tizimi o'rnatilgan kompyuter;
  • - Internetga ulanish.

Ko'rsatmalar

  • Vazifalar panelining chap burchagidagi tegishli tugmani bosish orqali Windows operatsion tizimining Boshlash menyusiga kiring. Ba'zi kiritish qurilmalarida Windows logotipi tugmachasi mavjud bo'lib, siz klaviaturadan to'g'ridan-to'g'ri operatsion tizimning asosiy menyusiga kirish uchun bosishingiz mumkin.
  • "Boshqarish paneli" bo'limini oching, "Windows xavfsizlik devori" menyusini faollashtiring va dialog oynasida "Kengaytirilgan" yorlig'iga o'ting. ICMP sozlamalari tugmasini bosing va tegishli menyu bandini olib tashlash orqali "Kiruvchi aks-sado so'roviga ruxsat berish" opsiyasini bekor qiling. "Ok" tugmasini bosish orqali sozlamalarga kiritilgan o'zgarishlarni saqlang.
  • Kiruvchi va chiquvchi ping paketlarini bloklash uchun o'rnatilgan IPSec ilovasidan foydalaning. "Ishga tushirish" tugmasini bosing va agar siz Windows 7 operatsion tizimidan foydalanayotgan bo'lsangiz, qidiruv satriga mmc kiriting. Agar sizda Windows XP operatsion tizimida ishlaydigan kompyuterlar bo'lsa, "Ishga tushirish" qatoriga bir xil qiymatni kiriting. "Ochish" bandini bosing yoki Enter tugmasini bosing.
  • Tanlovingizni tasdiqlang va ilovalar oynasida Fayl menyusiga o'ting. "Qo'shish/o'chirish" funksiyasini tanlang va "IP xavfsizligi va siyosatini boshqarish" yordam dasturini yoqing. "Mahalliy kompyuter" katagiga belgi qo'ying va Yopish tugmasini bosish orqali sehrgarni bajaring.
  • Manipulyatorning o'ng tugmachasini bosing va kontekst menyusiga qo'ng'iroq qiling. "IP filtr ro'yxatlarini va filtrlash amallarini boshqarish" buyrug'ini belgilang va "Barcha ICMP trafik" bandini faollashtiring. "Filtrni boshqarish" bo'limiga o'ting, "Keyingi" tugmasini bosing va "Bloklash" katagiga belgi qo'ying. Sozlamalaringizni tasdiqlang va dialog oynasini yoping.
  • "IP xavfsizlik siyosati" kontekst menyusida "IP xavfsizlik siyosatini yaratish" buyrug'ini faollashtiring. Ochilgan siyosat yaratish ustasining tegishli maydonida "Pingni bloklash" bandini belgilang. "Standart javob qoidasini faollashtirish" yonidagi katakchani olib tashlang va "Xususiyatlar tahrirlash" bandini tanlang. Sozlamalarni saqlang va sehrgar oynasini yoping.
  • Maslahat qo'shildi, 2012 yil 25 yanvar 2-maslahat: pingni qanday o'chirish mumkin Ping funksiyasi foydalanilayotgan xostga ma'lum o'lchamdagi paketni yuborish orqali Internet resurslarining mavjudligini tekshirish uchun ishlatiladi. Bu ulanish tezligini aniqlash uchun ma'lumotlarni qaytarish vaqtini o'lchaydi. Bu xususiyat kechikish vaqtini kamaytirish uchun onlayn o'yinlar muxlislari tomonidan o'chirib qo'yilgan.

    Ko'rsatmalar

  • Windows Start menyusini oching, tugma vazifalar panelining chap burchagida joylashgan. Shuningdek, ba'zi klaviaturalarda Windows oynasining rasmi bo'lgan tugma mavjud bo'lib, uni bosish orqali asosiy menyuni ishga tushirishingiz mumkin. "Boshqarish paneli" bo'limiga o'ting va "Windows xavfsizlik devori" menyusiga o'ting. Ochilgan muloqot oynasidagi "Kengaytirilgan" yorlig'ini bosing.
  • ICMP sozlamalari tugmachasini toping va ustiga bosing, so'ng "Kiruvchi aks-sado so'roviga ruxsat berish" yonidagi katakchani olib tashlang. Shundan so'ng, belgilangan sozlamalarni saqlash uchun oynaning pastki qismidagi "Ok" tugmasini bosing. Shundan so'ng siz kiruvchi va chiquvchi ping-paketlarni bloklash uchun o'rnatilgan IPSec dasturidan foydalanishingiz kerak.
  • "Ishga tushirish" tugmasini bosing va qidiruv paneliga (Windows 7 uchun) yoki "Ishga tushirish" qatoriga (Windows XP uchun) mmc kiriting. Ochish tugmasi yoki Enter tugmachasini bosing.Buyruqni tasdiqlang va Ilovalar oynasida Fayl menyusini oching. "Qo'shish/o'chirish" funksiyasini tanlang va "IP xavfsizligi va siyosatini boshqarish" yordam dasturini qo'shing. Sehrgarni bajarish uchun "Mahalliy kompyuter" katagiga Yopish tugmasini bosing.
  • Kontekst menyusini ochish uchun "IP xavfsizlik siyosati" qatorini o'ng tugmasini bosing. "IP-filtr ro'yxatlarini va filtrlash amallarini boshqarish" buyrug'ini tanlang va "Barcha ICMP trafik" katagiga belgi qo'ying. Shundan so'ng, "Filtrni boshqarish" bo'limiga o'ting. Keyingi tugmasini bosing va "Bloklash" yonidagi katakchani belgilang. Sozlamani tasdiqlang va dialog oynasini yoping.
  • "IP xavfsizlik siyosati" kontekst menyusidan "IP xavfsizlik siyosatini yaratish" buyrug'ini tanlang. Siyosat yaratish ustasi ochiladi, unda tegishli maydonda "Blok Ping" ni belgilang. "Birlamchi javob qoidasini faollashtirish" yonidagi katakchalarni olib tashlang va "Xususiyatlar tahrirlash" yonidagi katakchalarni belgilang. Sozlamalarni saqlang va sehrgar oynasini yoping.
  • Pingni qanday o'chirish mumkin - chop etiladigan versiya

    Shunday qilib, keling, ACL bilan ishlashni davom ettiramiz. Bu safar biz ACLlarni kengaytirdik. Biz oldingi maqoladan topologiyani olamiz, umid qilamanki, siz uni yaxshilab o'rgandingiz. Agar bunday bo'lmasa, men ushbu maqoladagi materiallar tushunarli bo'lishi uchun uni o'qishni tavsiya qilaman.

    Avvalo, men kengaytirilgan ACL nima ekanligidan boshlayman. Kengaytirilgan ACLlar manba manziliga qo'shimcha ravishda protokol, maqsad manzili va portlarni ko'rsatishga imkon beradi. Shuningdek, ma'lum bir protokolning maxsus parametrlari. Misollardan o'rganish yaxshidir, shuning uchun oldingi vazifani murakkablashtirib, yangi vazifa yarataylik. Aytgancha, kimdir bundan keyin trafikni ustuvorlik bo'yicha taqsimlash masalalari bilan shug'ullanishga qiziqishi mumkin; Men QoS tasnifi va markirovkasini ingliz tilida bo'lsa ham yaxshi maqolani tavsiya qilaman. Xo'sh, hozir vazifamizga qaytaylik:

    Vazifa.

    1. 192.168.0.0/24 tarmog'idagi xostlardan serverga echo so'rovlariga ruxsat bering.
    2. Serverdan - ichki tarmoqqa echo so'rovlarini taqiqlash.
    3. 192.168.0.11 tugunidan serverga WEB kirishiga ruxsat bering.
    4. 192.168.0.13 xostidan serverga FTP kirishiga ruxsat bering.

    Murakkab vazifa. Uni ham har tomonlama hal qilamiz. Avvalo, kengaytirilgan ACL dan foydalanish sintaksisini ko'rib chiqaman.

    Kengaytirilgan ACL imkoniyatlari

    <номер от 100 до 199> <действие permit, deny> <протокол> <источник> <порт> <назначение> <порт> <опции>

    Albatta, port raqamlari faqat TCP / UDP protokollari uchun ko'rsatilgan. Prefikslar ham bo'lishi mumkin ek(port raqami belgilanganiga teng), gt/lt(port raqami belgilanganidan kattaroq/kichikroq), neq(port raqami belgilangan raqamga teng emas), diapazon(port diapazoni).

    Nomlangan ACLlar

    Aytgancha, kirish ro'yxatlarini nafaqat raqamlash, balki nomlash ham mumkin! Ehtimol, bu usul sizga qulayroq ko'rinadi. Bu safar biz aynan shunday qilamiz. Ushbu buyruqlar global konfiguratsiya kontekstida bajariladi va sintaksis:

    Router(config)#ip kirish ro'yxati kengaytirildi<имя>

    Shunday qilib, qoidalarni shakllantirishni boshlaylik.

    1. Tarmoqdagi pinglarga ruxsat berish 192.168.0.0/24 serverga. Shunday qilib, aks-sado-so'rovlar protokol hisoblanadi ICMP, biz quyi tarmoqni manba manzili sifatida, server manzilini maqsad manzil sifatida, xabar turini - kiruvchi interfeysda tanlaymiz aks-sado, chiqishda - echo-javob. Router(config)#ip kirish roʻyxati kengaytirildi INT_IN Router(config-ext-nacl)#permit icmp 192.168.0.0 0.0.0.255 xost 10.0.0.100 echo Voy, quyi tarmoq maskasida nima boʻldi? Ha, bu hiyla ACL. Deb nomlangan Wildcard- niqob. U odatdagidan teskari niqob sifatida hisoblanadi. Bular. 255.255.255.255 - Subnet maskasi. Bizning holatda, pastki tarmoq 255.255.255.0 , ayirishdan keyin qolgan narsa shunchaki 0.0.0.255 .Menimcha, bu qoida tushuntirishga muhtoj emasmi? Protokol icmp, manba manzili - pastki tarmoq 192.168.0.0/24 , maqsad manzili – xost 10.0.0.100, xabar turi - aks-sado(so'rov). Aytgancha, buni sezish oson xost 10.0.0.100 ekvivalent 10.0.0.100 0.0.0.0 .Biz ushbu qoidani interfeysga qo'llaymiz. Router(config)#int fa0/0
      Router(config-if)#ip access-group INT_IN ichida Xo'sh, shunga o'xshash narsa. Endi, agar siz pinglarni tekshirsangiz, hamma narsa yaxshi ishlayotganini ko'rish oson. Biroq, bu erda bizni bir syurpriz kutmoqda, u birozdan keyin paydo bo'ladi. Men buni hali oshkor qilmayman. Kim taxmin qildi - yaxshi!
    2. Serverdan - biz ichki tarmoqqa barcha echo so'rovlarini taqiqlaymiz (192.168.0.0/24). Biz INT_OUT nomli yangi ro'yxatni aniqlaymiz va uni serverga eng yaqin interfeysga biriktiramiz.
      Router(config)#ip kirish roʻyxati kengaytirilgan INT_OUT
      Router(config-ext-nacl)#deny icmp host 10.0.0.100 192.168.0.0 0.0.0.255 echo
      Router(config-ext-nacl)#chiqish
      Router(config)#int fa0/1
      Router(config-if)#ip kirish guruhi INT_OUT in
      Keling, nima qilganimizni tushuntiraman. INT_OUT nomli kengaytirilgan kirish roʻyxati yaratildi, undagi protokolni oʻchirib qoʻydi icmp turi bilan aks-sado xostdan 10.0.0.100 pastki tarmoq uchun 192.168.0.0/24 va interfeys kiritishiga qo'llaniladi fa0/1, ya'ni. serverga eng yaqin. Biz yuborishga harakat qilamiz ping serverdan.
      SERVER>ping 192.168.0.11
      32 bayt ma'lumot bilan 192.168.0.11 ping:

      10.0.0.1 dan javob: Mo‘ljal xostiga kirish imkoni yo‘q.
      10.0.0.1 dan javob: Mo‘ljal xostiga kirish imkoni yo‘q.
      10.0.0.1 dan javob: Mo‘ljal xostiga kirish imkoni yo‘q.
      192.168.0.11 uchun ping statistikasi:
      Paketlar: Yuborilgan = 4, Qabul qilingan = 0, Yo'qolgan = 4 (100% yo'qotish)
      Xo'sh, bu kerak bo'lganidek ishlaganday tuyuldi. Pinglarni qanday yuborishni bilmaganlar uchun bizni qiziqtirgan tugunni bosing, masalan, server. Ish stoli yorlig'iga o'ting, u erda Buyruqlar satri va endi, va'da qilingan hazil. Birinchi nuqtada bo'lgani kabi xostdan ping yuborishga harakat qiling. Kompyuter>ping 10.0.0.100
      32 bayt ma'lumot bilan 10.0.0.100 ping:
      So‘rov muddati tugadi.
      So‘rov muddati tugadi.
      So‘rov muddati tugadi.
      So‘rov muddati tugadi.

      Mana siz uchun bitta. Hammasi shunchaki ishladi! Nega to'xtadi? Bu va'da qilingan syurpriz. Muammo nima ekanligini tushuntiraman. Ha, birinchi qoida yo'qolmadi. Bu echo so'rovini server tuguniga yuborish imkonini beradi. Ammo aks-sadolarni yuborishga ruxsat qayerda? U yoq! Biz so'rov yuboramiz, ammo javobni qabul qila olmaymiz! Nima uchun hamma narsa oldin ishlagan? O'sha paytda bizda interfeysda ACL yo'q edi. fa0/1. Va ACL yo'qligi sababli, hamma narsaga ruxsat beriladi. Siz icmp javoblarini qabul qilishga ruxsat berish uchun qoida yaratishingiz kerak bo'ladi.

      INT_OUT ro'yxatiga qo'shing

      Keling, xuddi shu narsani INT_IN ro'yxatiga qo'shamiz.

      Router(config-ext-nacl)#permit icmp host 10.0.0.100 192.168.0.0 0.0.0.255 echo-reply

      Endi shikoyat qilmang. Hammasi ajoyib ketmoqda!

    3. Biz WEB-ga serverga *.11 tugunidan ruxsat beramiz.Biz ham shunday qilamiz! Biroq, bu erda siz 4-qatlam protokollari (TCP, UDP) orqali qo'ng'iroqlar qanday sodir bo'lishi haqida bir oz ma'lumotga ega bo'lishingiz kerak. Mijoz porti o'zboshimchalik bilan > 1024 tanlanadi va server porti xizmatga mos ravishda tanlanadi. WEB uchun bu port 80 (http protokoli) WEB server haqida nima deyish mumkin? Odatiy bo'lib, WEB xizmati allaqachon serverda o'rnatilgan, siz uni tugun sozlamalarida ko'rishingiz mumkin. Tekshirish belgisi mavjudligiga ishonch hosil qiling. Va istalgan tugunning "Ish stoli" da "Veb-brauzer" yorlig'ini tanlab serverga ulanishingiz mumkin. Albatta, endi kirish imkoni bo'lmaydi. Chunki bizda yo'riqnoma interfeyslarida ACL mavjud va ularda kirish uchun ruxsat berish qoidalari yo'q. Keling, INT_IN kirish ro'yxatini yarataylik (u interfeysda fa0/0) qoidani qo'shing: Router(config-ext-nacl)#permit tcp host 192.168.0.11 gt 1024 host 10.0.0.100 eq 80 Ya'ni, biz server manziliga xostimizdan TCP protokoliga ruxsat beramiz (ixtiyoriy port, > 1024) , HTTP porti.

      Va, albatta, qarama-qarshi qoida INT_OUT ro'yxatida (bu interfeysda fa0/1):

      Router(config-ext-nacl)#permit tcp host 10.0.0.100 eq 80 host 192.168.0.11 oʻrnatildi

      Ya'ni, biz ruxsat beramiz TCP portdan 80 har bir xost uchun serverlar *.11 , va ulanish allaqachon o'rnatilgan bo'lishi kerak! Balki o'rniga tashkil etilgan xuddi shunday ko'rsating GT 1024, xuddi shunday ishlaydi. Ammo ma'nosi biroz boshqacha.

      Izohlarda javob bering, nima xavfsizroq?

    4. Biz FTP ga *.13 tugunidan serverga kirishga ruxsat beramiz.Bu ham mutlaqo murakkab emas!FTP protokoli orqali o‘zaro aloqa qanday sodir bo‘lishini ko‘rib chiqamiz. Kelajakda men bir qator maqolalarni turli xil protokollar ishiga bag'ishlashni rejalashtirmoqdaman, chunki bu aniq (snayper) ACL qoidalarini yaratishda juda foydali. Xo'sh, hozircha: Server va mijoz harakatlari:+ Mijoz ulanish o'rnatishga harakat qiladi va paketni (u passiv rejimda ishlashini ko'rsatadi) serverning X portidan (X > 1024, bepul port) 21 portiga yuboradi + Server javob yuboradi va Y (Y > 1024) kanal ma’lumotlarini yaratish uchun o‘z port raqamini TCP paket sarlavhasidan olingan X mijoz portiga xabar qiladi.+ Mijoz X+1 portidagi ma’lumotlarni Y server portiga (sarlavhadan olingan) o‘tkazish uchun aloqani boshlaydi. oldingi bitim). Shunga o'xshash narsa. Bu biroz murakkab tuyuladi, lekin siz buni tushunishingiz kerak! INT_IN roʻyxatiga qoidalarni qoʻshing:

      ruxsat tcp xost 192.168.0.13 gt 1024 xost 10.0.0.100 ekv 21
      ruxsat tcp xost 192.168.0.13 gt 1024 xost 10.0.0.100 gt 1024

      Va INT_OUT ro'yxatiga qoidalar qo'shing:

      ruxsat tcp xost 10.0.0.100 ekv ftp xost 192.168.0.13 gt 1024
      ruxsat tcp xost 10.0.0.100 gt 1024 xost 192.168.0.13 gt 1024

      Biz buyruq satridan buyruq bilan tekshiramiz ftp 10.0.0.100, bu erda biz hisob ma'lumotlarimizdan foydalanib tizimga kiramiz cisco: cisco(server sozlamalaridan olingan), u erda buyruqni kiriting rej va biz ma'lumotlar, shuningdek, buyruqlar muvaffaqiyatli uzatilganligini ko'ramiz.

    Bu kengaytirilgan kirish ro'yxatiga tegishli barcha narsalar.

    Shunday qilib, keling, qoidalarimizni ko'rib chiqaylik:

    Router#sh kirish
    Kengaytirilgan IP kirish roʻyxati INT_IN
    ruxsat icmp 192.168.0.0 0.0.0.255 xost 10.0.0.100 echo (17 ta oʻyin)
    ruxsat icmp xost 10.0.0.100 192.168.0.0 0.0.0.255 echo-javob
    ruxsat tcp xost 192.168.0.11 gt 1024 xost 10.0.0.100 ekv www (36 ta mos(lar))
    ruxsat tcp xost 192.168.0.13 gt 1024 xost 10.0.0.100 ekv ftp (40 ta mos(lar))
    ruxsat tcp xost 192.168.0.13 gt 1024 xost 10.0.0.100 gt 1024 (4 oʻyin(lar))
    Kengaytirilgan IP kirish roʻyxati INT_OUT
    icmp xostini rad etish 10.0.0.100 192.168.0.0 0.0.0.255 echo (4 ta moslik)
    ruxsat icmp xost 10.0.0.100 192.168.0.0 0.0.0.255 aks-sado-javob (4 ta moslik)
    ruxsat tcp xost 10.0.0.100 eq www xost 192.168.0.11 oʻrnatilgan (3 ta oʻyin(lar))
    ruxsat tcp xost 10.0.0.100 ekv ftp xost 192.168.0.13 gt 1024 (16 ta oʻyin(lar))
    ruxsat tcp xost 10.0.0.100 gt 1024 xost 192.168.0.13 gt 1024 (3 ta oʻyin(lar))

    Sizga maqola yoqdimi? Do'stlaringizga ulashing: