Atšķirība starp NTLM un Kerberos

IIS integrētais Windows autentifikācijas modulis ievieš divus galvenos autentifikācijas protokolus: NTLM un Kerberos autentifikācijas protokolu. Tas aicina trīs dažādus drošības pakalpojumu sniedzējus (SSP): Kerberos, NTLM un Sarunu. Šīs SSP un autentifikācijas protokoli parasti ir pieejami un tiek izmantoti Windows tīklos. NTLM ievieš NTLM autentifikāciju, un Kerberos ievieš Kerberos v5 autentifikāciju. Sarunu process ir atšķirīgs, jo tas neatbalsta nekādus autentifikācijas protokolus. Tā kā integrētajā Windows autentifikācijā ir iekļauti vairāki autentifikācijas protokoli, tai nepieciešama sarunu fāze, pirms var notikt faktiskā autentifikācija starp Web pārlūku un serveri. Šajā sarunu posmā sarunu SSP nosaka, kuru autentifikācijas protokolu izmantot starp Web pārlūku un serveri.

Abi protokoli ir ārkārtīgi droši un spēj autentificēt klientus, nepārsūtot paroles tīklā nekādā formā, taču tie ir ierobežoti. NTLM autentifikācija nedarbojas starp HTTP starpniekserveriem, jo, lai tā pareizi darbotos, ir nepieciešams tieša savienojums starp Web pārlūku un serveri. Kerberos autentifikācija ir pieejama tikai IE 5.0 pārlūkprogrammās un IIS 5.0 Web serveros vai jaunākā versijā. Tas darbojas tikai mašīnās, kurās darbojas operētājsistēma Windows 2000 vai jaunāka, un ugunsmūriem ir nepieciešami daži papildu porti. NTLM nav tik drošs kā Kerberos, tāpēc Kerberos vienmēr ieteicams izmantot pēc iespējas vairāk. Labi apskatīsim abus.

Kas ir NTLM??

NT LAN pārvaldnieks ir uz izaicinājumu un reakciju balstīts autentifikācijas protokols, ko izmanto Windows datoros, kas nav Active Directory domēna dalībnieki. Klients iniciē autentifikāciju, izmantojot izaicinājumu / atbildes mehānismu, pamatojoties uz trīspusēju rokasspiedienu starp klientu un serveri. Klients sāk saziņu, nosūtot serverim ziņojumu, norādot tā šifrēšanas iespējas un norādot lietotāja konta vārdu. Serveris ģenerē 64 bitu izlases vērtību, ko sauc par nonce, un reaģē uz klienta pieprasījumu, atdodot šo nonce, kurā ir informācija par tā iespējām. Šo reakciju sauc par izaicinājumu. Pēc tam klients izmanto izaicinājuma virkni un paroli, lai aprēķinātu atbildi, kuru tas pārsūta uz serveri. Pēc tam serveris apstiprina no klienta saņemto atbildi un salīdzina to ar NTLM atbildi. Ja abas vērtības ir identiskas, autentifikācija ir veiksmīga.

Kas ir Kerberos?

Kerberos ir biļešu autentifikācijas protokols, kuru izmanto Windows datori, kas ir Active Directory domēna dalībnieki. Kerberos autentifikācija ir labākā metode iekšējām IIS instalācijām. Kerberos v5 autentifikācija tika izstrādāta MIT un tika definēta RFC 1510. Windows 2000 un vēlāk ievieš Kerberos, kad tiek ievietots Active Directory. Vislabākais ir tas, ka tas samazina paroļu skaitu, kas katram lietotājam ir jāiegaumē, lai izmantotu visu tīklu līdz vienai - Kerberos parole. Turklāt tajā ir iekļauta šifrēšana un ziņojumu integritāte, lai nodrošinātu, ka sensitīvie autentifikācijas dati nekad netiek tīklā nosūtīti tīklā. Kerberos sistēma darbojas, izmantojot centralizētu atslēgu izplatīšanas centru jeb KDC komplektu. Katrā KDC ir gan lietotāju, gan Kerberos iespējotu pakalpojumu lietotājvārdu un paroļu datu bāze.

Atšķirība starp NTLM un Kerberos

NTLM un Kerberos protokols

- NTLM ir uz izaicinājumu un reakciju balstīts autentifikācijas protokols, ko izmanto Windows datoros, kas nav Active Directory domēna dalībnieki. Klients iniciē autentifikāciju, izmantojot izaicinājumu / atbildes mehānismu, pamatojoties uz trīspusēju rokasspiedienu starp klientu un serveri. Savukārt Kerberos ir uz biļetēm balstīts autentifikācijas protokols, kas darbojas tikai mašīnās, kurās darbojas Windows 2000 vai jaunāka versija un darbojas Active Directory domēnā. Abu autentifikācijas protokolu pamatā ir simetriska atslēgas kriptogrāfija.

Atbalsts

- Viena no galvenajām atšķirībām starp abiem autentifikācijas protokoliem ir tā, ka Kerberos atbalsta gan uzdošanos par personālu, gan deleģēšanu, savukārt NTLM atbalsta tikai uzdošanos par personālu. Deleģēšana principā ir tāds pats jēdziens kā uzdošanās par personālu, kas ietver tikai darbību veikšanu klienta identitātes vārdā. Tomēr uzdošanās darbojas tikai vienas mašīnas ietvaros, bet deleģēšana darbojas arī tīklā. Tas nozīmē, ka sākotnējā klienta identitātes autentifikācijas biļeti var nodot citam tīkla serverim, ja sākotnēji izmantotajam serverim ir atļauja to darīt..

Drošība

- Lai gan abi autentifikācijas protokoli ir droši, NTLM nav tik drošs kā Kerberos, jo, lai tā pareizi darbotos, ir nepieciešams tieša savienojums starp Web pārlūku un serveri. Kerberos ir drošāks, jo tas nekad skaidri nenodod paroles tīklā. Tā ir unikāla ar biļešu izmantošanu, kas pierāda lietotāja identitāti noteiktā serverī, nenosūtot paroles tīklā vai saglabājot kešatmiņas paroles vietējā lietotāja cietajā diskā. Kerberos autentifikācija ir labākā metode iekšējām IIS instalācijām (vietnes, kuras izmanto tikai domēna klienti).

Autentifikācija

- Viena no Kerberos galvenajām priekšrocībām salīdzinājumā ar NTLM ir tā, ka Kerberos piedāvā savstarpēju autentifikāciju un ir vērsta uz klienta-servera modeli, kas nozīmē gan klienta, gan servera autentiskuma pārbaudi. Tomēr gan pakalpojumam, gan klientam jādarbojas operētājsistēmā Windows 2000 vai jaunākā versijā, pretējā gadījumā autentifikācija neizdosies. Atšķirībā no NTLM, kurā ir iesaistīts tikai IIS7 serveris un klients, Kerberos autentifikācija ietver arī Active Directory domēna kontrolleri..

NTLM pret Kerberos: salīdzināšanas tabula

Kopsavilkums par NTLM Vs. Kerberos

Lai gan abi protokoli ir spējīgi autentificēt klientus, nekādā veidā nenododot paroles tīklā, NTLM autentificē klientus, izmantojot izaicinājumu / atbildes mehānismu, kura pamatā ir trīspusējs rokasspiediens starp klientu un serveri. Savukārt Kerberos ir uz biļetēm balstīts autentifikācijas protokols, kas ir drošāks nekā NTLM un atbalsta savstarpēju autentifikāciju, kas nozīmē, ka tiek pārbaudītas gan klienta, gan servera autentiskums. Turklāt Kerberos atbalsta gan uzdošanos par personālu, gan deleģēšanu, savukārt NTLM atbalsta tikai uzdošanos par citu. NTLM nav tik drošs kā Kerberos, tāpēc Kerberos vienmēr ieteicams izmantot pēc iespējas vairāk.