IIS o'rnatilgan Windows autentifikatsiya moduli ikkita asosiy autentifikatsiya protokollarini amalga oshiradi: NTLM va Kerberos autentifikatsiya protokoli. U uchta turli xil xavfsizlik xizmatlarini etkazib beruvchilarni (SSP) chaqiradi: Kerberos, NTLM va Muzokaralar. Ushbu SSP va autentifikatsiya protokollari odatda mavjud va Windows tarmoqlarida ishlatiladi. NTLM NTLM autentifikatsiyasini va Kerberos Kerberos v5 autentifikatsiyani amalga oshiradi. Muzokara boshqacha, chunki u hech qanday autentifikatsiya protokollarini qo'llab quvvatlamaydi. Integrated Windows autentifikatsiyasi bir nechta autentifikatsiya protokollarini o'z ichiga olganligi sababli, veb-brauzer va server o'rtasida haqiqiy autentifikatsiyani amalga oshirishdan oldin u muzokara bosqichini talab qiladi. Ushbu muzokara davrida, Sozdat SSP veb-brauzer va server o'rtasida qaysi autentifikatsiya protokoli ishlatilishini belgilaydi.

Ikkala protokollar ham juda xavfsizdir va ular har qanday shaklda tarmoq orqali parollarni uzatmasdan mijozlarni tasdiqlash imkoniyatiga ega, ammo ular cheklangan. NTLM autentifikatsiyasi HTTP proksi-serverlarida ishlamaydi, chunki u to'g'ri ishlashi uchun veb-brauzer va server o'rtasida nuqta-nuqta ulanishni talab qiladi. Kerberos autentifikatsiyasi faqat IE 5.0 va IIS 5.0 veb-serverlarida yoki undan keyingi versiyalarda mavjud. U faqat Windows 2000 yoki undan yuqori versiyalarda ishlaydigan mashinalarda ishlaydi va xavfsizlik devorlarida ba'zi qo'shimcha portlarning ochilishini talab qiladi. NTLM Kerberos kabi xavfsiz emas, shuning uchun har doim Kerberosdan iloji boricha ko'proq foydalanish tavsiya etiladi. Keling, ikkalasini batafsil ko'rib chiqaylik.

NTLM nima?

NT LAN Manager - bu Active Directory domeniga kirmaydigan Windows kompyuterlari tomonidan ishlatiladigan savol-javobga asoslangan autentifikatsiya protokoli. Mijoz autentifikatsiyani mijoz va server o'rtasidagi uch tomonlama aloqaga asoslangan holda chaqiruv / javob mexanizmi orqali amalga oshiradi. Mijoz aloqani serverga uning shifrlash imkoniyatlari ko'rsatilgan va foydalanuvchining hisob qaydnomasi nomini ko'rsatgan holda xabar yuborish bilan boshlaydi. Server noce deb nomlangan 64-bitli tasodifiy qiymatni yaratadi va mijozning talabiga javob beradi va o'z qobiliyati haqida ma'lumotni o'z ichiga olgan ushbu nonni qaytaradi. Bu javob chaqiruv deb ataladi. Keyinchalik mijoz javobni hisoblash uchun qiyinchilik satri va uning parolidan foydalanadi va uni serverga uzatadi. Keyin server mijozdan olingan javobni tekshiradi va NTLM javobi bilan taqqoslaydi. Agar ikkita qiymat bir xil bo'lsa, autentifikatsiya muvaffaqiyatli bo'ladi.

Kerberos nima?

Kerberos - bu Active Directory domenining a'zolari bo'lgan Windows kompyuterlari tomonidan ishlatiladigan chipta asosida tasdiqlash protokoli. Kerberos autentifikatsiyasi - IIS ichki o'rnatmalari uchun eng yaxshi usul. Kerberos v5 autentifikatsiyasi MIT-da ishlab chiqilgan va RFC 1510-da belgilangan. Windows 2000 va keyinchalik Active Directory o'rnatilganda Kerberos-ni ishlatadi. Eng yaxshi tomoni, u butun bir tarmoqdan bitta foydalanishni yodlashi kerak bo'lgan har bir foydalanuvchi eslab qoladigan parollar sonini kamaytiradi - Kerberos paroli. Bundan tashqari, maxfiy shifrlash va xabarlarning yaxlitligini o'z ichiga oladi, bu autentifikatsiya ma'lumotlarining hech qachon tarmoq orqali aniq uzatilmasligini ta'minlaydi. Kerberos tizimi markazlashtirilgan kalitlarni tarqatish markazlari yoki KDClar orqali ishlaydi. Har bir KDC ikkala foydalanuvchi va Kerberos tomonidan yoqilgan xizmatlar uchun foydalanuvchi nomlari va parollarining ma'lumotlar bazasini o'z ichiga oladi.

NTLM va Kerberos o'rtasidagi farq

NTLM va Kerberos protokoli

- NTLM - bu Active Directory domeniga kirmaydigan Windows kompyuterlari tomonidan ishlatiladigan savol-javobga asoslangan autentifikatsiya protokoli. Mijoz autentifikatsiyani mijoz va server o'rtasidagi uch tomonlama aloqaga asoslangan holda chaqiruv / javob mexanizmi orqali amalga oshiradi. Boshqa tomondan, Kerberos - bu faqat Windows 2000 yoki undan yuqori va Active Directory domenida ishlaydigan mashinalarda ishlaydigan chiptaga asoslangan autentifikatsiya protokoli. Autentifikatsiya protokollarining ikkalasi nosimmetrik kalit kriptografiyasiga asoslangan.

Qo'llab-quvvatlash

- Ikki autentifikatsiya protokoli o'rtasidagi asosiy farqlardan biri shundaki, Kerberos o'z nomidan ish olib borish va delegatsiyani qo'llab-quvvatlaydi, NTLM esa faqat o'zlashtirilishini qo'llab-quvvatlaydi. Delegatsiya - bu shaxsni o'zlashtirish bilan bir xil tushuncha, bu shunchaki mijozning identifikatori nomidan harakatlarni bajarishni o'z ichiga oladi. Shunga qaramay, nomunosiblik faqat bitta mashinada ishlaydi, delegatsiya ham tarmoq bo'ylab ishlaydi. Agar asl mijozning identifikatsiya guvohnomasini autentifikatsiya qilish chiptasi, agar unga kirishga ruxsat berilgan bo'lsa, tarmoqdagi boshqa serverga o'tkazilishi mumkin.

Xavfsizlik

 - Ikkala autentifikatsiya protokoli xavfsiz bo'lsa ham, NTLM Kerberos kabi xavfsiz emas, chunki u to'g'ri ishlashi uchun veb-brauzer va server o'rtasida nuqta-nuqta ulanishni talab qiladi. Kerberos yanada xavfsizroq, chunki u hech qachon parollarni tarmoq orqali aniq ravishda uzatmaydi. U tarmoq orqali parollarni yubormasdan yoki parollarni mahalliy foydalanuvchi qattiq diskida keshlamasdan foydalanuvchi serverini identifikatsiyalaydigan chiptalarni ishlatishda noyobdir. Kerberos autentifikatsiyasi - bu IIS ichki o'rnatmalari uchun eng yaxshi usul (faqat domen mijozlari foydalanadigan veb-saytlar).

Haqiqiylikni tekshirish

- Kerberosning NTLM-dan ustunliklaridan biri shundaki, Kerberos o'zaro autentifikatsiyani taklif qiladi va mijoz-server modeliga yo'naltirilgan, ya'ni mijozning o'zi va serverning haqiqiyligi ikkala tasdiqlangan. Biroq, xizmat ham, mijoz ham Windows 2000 yoki undan yuqori versiyalarda ishlaydigan bo'lishi kerak, aks holda autentifikatsiya muvaffaqiyatsiz bo'ladi. Faqatgina IIS7 serveri va mijozni o'z ichiga oladigan NTLMdan farqli o'laroq, Kerberos autentifikatsiyasi Active Directory domen boshqaruvchisini ham o'z ichiga oladi.

NTLM va Kerberos: taqqoslash jadvali

NTLM va boshqalar haqida qisqacha ma'lumot. Kerberos

Ikkala protokollar har qanday shaklda tarmoq orqali parollarni uzatmasdan mijozlarni autentifikatsiya qilishga qodir bo'lsa-da, NTLM mijozlar va server o'rtasidagi uch tomonlama aloqaga asoslangan chaqiruv / javob mexanizmi bo'lsa ham mijozlarni autentifikatsiya qiladi. Boshqa tomondan, Kerberos - bu chiptalarga asoslangan autentifikatsiya protokoli, NTLM-ga qaraganda xavfsizroq va o'zaro autentifikatsiyani qo'llab-quvvatlaydi, ya'ni mijoz va serverning haqiqiyligi ikkalasi ham tekshiriladi. Bunga qo'shimcha ravishda, Kerberos boshqa shaxsni ham, delegatsiyani ham qo'llab-quvvatlaydi, NTLM esa faqat boshqa shaxsni qo'llab-quvvatlaydi. NTLM Kerberos kabi xavfsiz emas, shuning uchun har doim Kerberosdan iloji boricha ko'proq foydalanish tavsiya etiladi.

Adabiyotlar

  • Tasvir krediti: https://upload.wikimedia.org/wikipedia/commons/thumb/4/4e/Kerberos.svg/500px-Kerberos.svg.png
  • Tasvir krediti: https://commons.wikimedia.org/wiki/Fayl:Metasploit-27-cainsuccesshalflm.png
  • LeBlanc, Devid va Maykl Xovard. Xavfsiz kodni yozish. London, Buyuk Britaniya: Pearson Education, 2002. Chop etish
  • Makdonald, Metyu va Mario Shpushta. Pro Asp.Net 2.0 C # 2005. Xoboken, Nyu-Jersi: Jon Uili va Sons, 2005. Bosib chiqarish
  • Klerk, Jan De. Windows Server 2003 xavfsizlik infratuzilmasi: Asosiy xavfsizlik xususiyatlari. Amsterdam, Gollandiya: Elsevier, 2004. Chop etish