Je možný radiusu nařídit, aby cleartext heslo z peap zašifroval nebo udělal z něho hash a až poté porovnal s ldapem?
Mám veliký odpor držet hesla v ldape v cleartextu.
Znáte nějakou implementaci nt hashe v php nebo pythonu?
Řešil jsem to kdysi dávno, takže si už úplně nepamatuju detaily, tak mě pls úplně neber za slovo (a kolegové kdyžtak snad případný omyly opraví).
Za prvé: je to všechno děsně překombinovanej bordel a je opruz to řešit.
Za druhé: PEAP sám o sobě IIRC definuje jenom "obálku" a protokol uvnitř může být všelijaký. V MS světě je/byl myslím nejobvyklejší EAP/MSCHAPv2. Takže pokud bys chtěl nějak porovnávat hashe, musel bys mít v LDAPu uložený ten konkrétní hash, který klient použije (a to ještě za předpokladu, že to není protokol challenge-response). A když daný protokol přetane být bezpečný (což už třeba ten MSCHAPv2 není), tak klienty nijak na nový protokol nepřeklopíš (pokud by ten hash nebyl natolik nebezpečný, že by sis ho louskl sám).
Za třetí: kdybys od klienta dostal cleartext passwdord, tak to neimplikuje, že bys musel mít cleartext v LDAPu. Pro přihlašování do systému přes normální login se taky používá cleartext heslo a podle toho, co je v LDAPu za hash, se heslo zahashuje stejně a pak teprve porovnává.
Za čtvrté: co si tak matně pamatuju, tak se mi ale nedařilo Windows klienty donutit, aby posílali cleartext heslo. Možná to ale bylo daný nějakými dalšími omezeními, co jsem tam měl. Takže neříkám, že to je úplně nemožný, jenom, že mně se to z nějakýho důvodu tenkrát nepodařilo rozjet. Detaily už nevím.
Kdyby se ti podařilo nějaký řešení vymyslet a zprovoznit a byl bys ochotný se o něj podělit, byl bych ti extrémně vděčný, protože tuhle věc bych rád rozchodil taky.