NTLM ve Kerberos Arasındaki Fark

IIS ile tümleşik Windows kimlik doğrulama modülü iki ana kimlik doğrulama protokolü uygular: NTLM ve Kerberos kimlik doğrulama protokolü. Üç farklı Güvenlik Servis Sağlayıcısını (SSP) çağırır: Kerberos, NTLM ve Anlaşma. Bu SSP'ler ve kimlik doğrulama protokolleri normalde Windows ağlarında bulunur ve kullanılır. NTLM, NTLM kimlik doğrulamasını uygular ve Kerberos Kerberos v5 kimlik doğrulamasını uygular. Anlaşma farklıdır çünkü herhangi bir kimlik doğrulama protokolünü desteklemez. Tümleşik Windows kimlik doğrulaması birkaç kimlik doğrulama protokolü içerdiğinden, Web tarayıcısı ile sunucu arasındaki gerçek kimlik doğrulamasının gerçekleşmesi için bir görüşme aşaması gerekir. Bu görüşme aşamasında, SSP Anlaşması, Web tarayıcısı ile sunucu arasında hangi kimlik doğrulama protokolünün kullanılacağını belirler.

Her iki protokol de son derece güvenlidir ve ağ üzerinden herhangi bir biçimde parola iletmeden istemcilerin kimliğini doğrulayabilir, ancak sınırlıdır. NTLM kimlik doğrulaması HTTP proxy'lerinde çalışmaz, çünkü düzgün çalışması için Web tarayıcısı ile sunucu arasında noktadan noktaya bağlantı gerektirir. Kerberos kimlik doğrulaması yalnızca IE 5.0 tarayıcılarında ve IIS 5.0 Web sunucularında veya daha yenisinde kullanılabilir. Yalnızca Windows 2000 veya daha yeni sürümleri çalıştıran makinelerde çalışır ve güvenlik duvarlarında bazı ek bağlantı noktalarının açık olmasını gerektirir. NTLM, Kerberos kadar güvenli değildir, bu nedenle Kerberos'u her zaman mümkün olduğunca kullanmanız önerilir. İkisine iyi bakalım.

NTLM nedir?

NT LAN Manager, bir Active Directory etki alanının üyesi olmayan Windows bilgisayarlar tarafından kullanılan, yanıt tabanlı bir kimlik doğrulama protokolüdür. İstemci, kimlik doğrulamayı, istemci ve sunucu arasındaki üç yönlü bir el sıkışma temelinde bir sınama / yanıt mekanizması aracılığıyla başlatır. İstemci, sunucuya şifreleme özelliklerini belirten ve kullanıcının hesap adını içeren bir mesaj göndererek iletişimi başlatır. Sunucu, nonce adı verilen 64 bit rasgele bir değer üretir ve kendi yetenekleri hakkında bilgi içeren bu nonce değerini döndürerek istemcinin isteğine yanıt verir. Bu yanıta meydan okuma denir. İstemci daha sonra sunucuya ilettiği bir yanıtı hesaplamak için sınama dizesini ve parolasını kullanır. Sunucu daha sonra istemciden aldığı yanıtı doğrular ve NTLM yanıtıyla karşılaştırır. İki değer aynı ise, kimlik doğrulama başarılı olur.

Kerberos nedir?

Kerberos, bir Active Directory etki alanının üyesi olan Windows bilgisayarlar tarafından kullanılan, bilet tabanlı bir kimlik doğrulama protokolüdür. Kerberos kimlik doğrulaması, dahili IIS yüklemeleri için en iyi yöntemdir. Kerberos v5 kimlik doğrulaması MIT'de tasarlanmış ve RFC 1510'da tanımlanmıştır. Active Directory konuşlandırıldığında Windows 2000 ve sonraki sürümler Kerberos'u uygular. En iyi bölüm, her bir ağın tamamını kullanmak için ezberlemek zorunda olduğu şifre sayısını bir kereye indirir - Kerberos şifresi. Buna ek olarak, hassas kimlik doğrulama verilerinin ağ üzerinden hiçbir zaman net olarak gönderilmemesini sağlamak için şifreleme ve mesaj bütünlüğü içerir. Kerberos sistemi bir dizi merkezi Anahtar Dağıtım Merkezi veya KDC yoluyla çalışır. Her KDC, hem kullanıcılar hem de Kerberos özellikli hizmetler için bir kullanıcı adı ve şifre veritabanı içerir.

NTLM ve Kerberos arasındaki fark

NTLM ve Kerberos Protokolü

- NTLM, bir Active Directory etki alanının üyesi olmayan Windows bilgisayarlar tarafından kullanılan, yanıt tabanlı bir kimlik doğrulama protokolüdür. İstemci, kimlik doğrulamayı, istemci ve sunucu arasındaki üç yönlü bir el sıkışma temelinde bir sınama / yanıt mekanizması aracılığıyla başlatır. Kerberos ise, yalnızca Windows 2000 veya daha üstünü çalıştıran ve bir Active Directory etki alanında çalışan makinelerde çalışan bilet tabanlı bir kimlik doğrulama protokolüdür. Her iki kimlik doğrulama protokolü de simetrik anahtar şifrelemesine dayanır.

Destek

- İki kimlik doğrulama protokolü arasındaki en büyük farklardan biri Kerberos'un hem kimliğe bürünme hem de temsilci seçmeyi desteklemesi, NTLM ise yalnızca kimliğe bürünmeyi desteklemesidir. Delegasyon temel olarak kimliğe bürünme ile aynı kavramdır ve yalnızca müşterinin kimliği adına işlem yapmayı içerir. Bununla birlikte, kimliğe bürünme yalnızca bir makinede kapsam dahilinde çalışırken, temsilci seçme ağ üzerinde de çalışır. Bu, orijinal olarak erişilen sunucunun izin vermesi durumunda, orijinal istemcinin kimliğinin kimlik doğrulama biletinin ağdaki başka bir sunucuya geçirilebileceği anlamına gelir.

Güvenlik

- Her iki kimlik doğrulama protokolü de güvenli olsa da, NTLM Kerberos kadar güvenli değildir, çünkü düzgün çalışması için Web tarayıcısı ile sunucu arasında noktadan noktaya bağlantı gerektirir. Kerberos daha güvenlidir çünkü şifreleri asla ağ üzerinden net olarak aktarmaz. Ağ üzerinden parola göndermeden veya yerel kullanıcının sabit diskindeki parolaları önbelleğe almadan kullanıcının kimliğini belirli bir sunucuya kanıtlayan biletler kullanımında benzersizdir. Kerberos kimlik doğrulaması, dahili IIS yüklemeleri için en iyi yöntemdir (yalnızca etki alanı istemcileri tarafından kullanılan web siteleri).

Kimlik Doğrulama

- Kerberos'un NTLM'ye göre en büyük avantajlarından biri, Kerberos'un karşılıklı kimlik doğrulama sunması ve istemci-sunucu modelini hedef almasıdır; bu da, istemcinin ve sunucunun özgünlüğünün doğrulandığı anlamına gelir. Ancak, hem hizmet hem de istemcinin Windows 2000 veya daha üstü sürümlerde çalışması gerekir, aksi takdirde kimlik doğrulaması başarısız olur. Yalnızca IIS7 sunucusunu ve istemciyi içeren NTLM'den farklı olarak, Kerberos kimlik doğrulaması bir Active Directory etki alanı denetleyicisini de içerir.

NTLM ve Kerberos: Karşılaştırma Çizelgesi

NTLM Vs. Özeti Kerberos

Her iki protokol de herhangi bir biçimde ağ üzerinden parola iletmeden istemcilerin kimliğini doğrulayabilse de, NTLM, istemci ile sunucu arasındaki üç yönlü bir el sıkışmasına dayanan bir sorgulama / yanıt mekanizması aracılığıyla istemcilerin kimliğini doğrular. Öte yandan Kerberos, NTLM'den daha güvenli olan ve karşılıklı kimlik doğrulamayı destekleyen bilet tabanlı bir kimlik doğrulama protokolüdür, bu da istemcinin ve sunucunun özgünlüğünün doğrulandığı anlamına gelir. Buna ek olarak, Kerberos hem kimliğe bürünme hem de yetkilendirmeyi desteklerken, NTLM yalnızca kimliğe bürünme özelliğini destekler. NTLM, Kerberos kadar güvenli değildir, bu nedenle Kerberos'u her zaman mümkün olduğunca kullanmanız önerilir.