Vill Teamen hunn eng Web-Umeldung, déi funktionéiert, an eng VPN, déi all Passwuert aus der selwechter Tabell refuséiert. D'Webapplikatioun vergläicht en Hash, dee si selwer berechent huet, während den Tunnel de Client freet, de Besëtz vun engem Geheim sou ze beweisen, datt de Server et muss kënnen iwwerpréiwen. Dat sinn ënnerschiddlech Ufuerderungen un de gespäicherte Material. Genau an dëser Lück tëschent deenen zwee bleiwen déi meescht vun dëse Projeten hänken.

Liest d'Method, duerno de Schema

Schreift op, wéi en Noweis déi gewielte Method verlaangt, ier Dir e Schema ukuckt. Eng Challenge-Response-Method brauch Material, aus deem de Server déi erwaart Äntwert ka berechnen, wat an der Praxis d'Passwuert oder eng kompatibel ofgeleet Form bedeit. Eng Method, déi d'Passwuert an engem geschützten Tunnel transportéiert, brauch d'Passwuert selwer beim Iwwerpréifer. Liest d'Dokumentatioun vun der Method wéinst der Ufuerderung un den Iwwerpréifer an net wéinst der Clientkonfiguratioun, well d'Clientufuerderungen normalerweis den einfachen Deel sinn.

En gesalzenen Hash aus engem moderne Web-Framework liwwert weder dat engt nach dat anert. Hie préift eng eenzeg bestëmmte Vergläich an et ass net méiglech, en zeréck an de Geheim ze bréngen, aus deem e koum.

Challenge-Response kann ee gesalzenen Hash net benotzen

MSCHAPv2 ass en Challenge-Response-Austausch, dowéinst kritt de Server d'Passwuert ni a kann eng gespäichert Zeechenketten net vergläichen. Hie muss déi erwaart Äntwert aus Material ofleeden, dat hien schonns huet, an dofir sinn déi kompatibel gespäichert Formen esou enk. En bcrypt- oder Argon2-Wäert mat engem Salz pro Benotzer ass eenzegaarteg an enger Richtung, sou datt den Austausch komplett ausgeschloss ass. D'Tabell hei drënner geet vun der Späicherform aus an net vum Numm vun der Method, well d'Späicherform decidéiert iwwer d'Äntwert.

What the store holdsWhat that material can verifyWhat has to change
A bcrypt or Argon2 value with a per-user saltnothing challenge-response can use, and not the password eitherre-enrol the users, or place a verifying service in front
An unsalted NT-hashMSCHAPv2, and inner PAP through a TLS tunnelnothing, as long as that store is the verifier
A client certificate with a revocation listEAP-TLS onlymove enrolment and revocation to the PKI owner

D'Dokumentatioun vum SQL-Plug-in fir strongSwan definéiert en eegene Schema fir Konfiguratioun a Benotzerdaten, an de Projet markéiert dee Plug-in nach ëmmer als experimentell. Näischt dran passt sech un d'Benotzertabell vun enger Applikatioun un oder rodet, wéi en Hashverfahren e gespäicherte Wäert erstallt huet. Déi realistesch Optioune sinn dofir eng Migratioun op e Späicher, deen de Gateway ka benotzen, oder een Authentifikatiounsservice virum bestehende Späicher, deen den Austausch ka maachen. Alles anescht ass e Verbinder mat enger verstoppter Annahm dobannen.

RADIUS verréckelt d'Aarbecht, net d'Ufuerderung

EAP un e RADIUS-Server ze delegéieren ännert, wou d'Iwwerpréiwung geschitt, a verbessert normalerweis d'Auditspur. Et gewënnt keen Passwuert aus engem Eenzweeghash zréck, dofir brauch den Authentifikatiounsservice nach ëmmer Material, dat zu der Method passt, déi hien terminéiert. D'Teamë fannen dat eraus, nodeems si de RADIUS-Wee gebaut hunn an um aneren Enn op déi selwecht Mauer stoussen.

Wou de RADIUS-Server en Dossier mat kompatibelen Umeldungsdaten liese kann, funktionéiert den Design an de VPN-Gateway bleift einfach. Wou hien dat net kann, ass déi éierlech Äntwert eng Ännerung vun der Aschreiwung an net nach e Verbinder. D'Bereetstellung an de Widderruff gehéieren deem, deen d'Identitéit besëtzt, dofir ass eng kopéiert Tabell ouni ënnerstëtzte Synchronisatiounsprozess en zweeten Zyklus vun Umeldungsdaten an net eng eenzeg Umeldung. Et drift deen éischte Kéier, wou een e Passwuert nëmmen op enger Plaz zrécksetzt, an d'Drift ass roueg, bis sech en Kont, deen an de béide Systemer existéiert, an all eenem anescht behëlleft.

Limitéiert de Kont, deen den Dossier liest, op just déi Liesung, a haalt e getrennt vum Kont, deen de Gateway fir seng eege Konfiguratioun benotzt. En gedeelten Administratiounskont mécht aus engem Nëmme-Lies-Design e vill méi breeden Auswierkungsradius.

Wou de Kont solle wunnen

Wann d'Materialfro gekläert ass, bleiwen zwou Architekturen. De Gateway kann e klenge Späicher fir Umeldungsdaten besëtzen, deen nëmmen hien liest, oder un een Authentifikatiounsservice delegéieren, deen virum Firmendossier steet.

Déi éischt ass méi einfach ze duerchdenken an déi schlechtst fir de Benotzer, deen um Enn en zweet Passwuert ze pflege huet. Déi zweet behält eng Identitéit a füügt eng Ofhängegkeet vun engem Service dobäi, deen elo muss lafen, ier sech een ka verbannen. Keng vun deenen zwee ass falsch, awer d'Wiel sollt niewent der Gatewaykonfiguratioun festgehale ginn, well soss unhëlt den nächsten Ingenieur, et wier déi aner gewielt ginn. Wat Dir och wielt, déi zwou Kommandoen hei drënner sinn déi, déi den aktuellen Zoustand weisen, ier Dir en ännert.

mysql -N -e "SELECT id, username FROM vpn_users WHERE active = 1 LIMIT 5" vpn
swanctl --list-conns

Kontauthentifikatioun kläert och d'Autorisatioun net. Gruppememberschaft, den Zoustand vum Apparat an d'Netzwierkermechtegung brauchen nach ëmmer eng explizit Zueuerdnung, nodeems de Benotzer d'gefuerdert Identitéit bewisen huet. Eng Verbindung, déi perfekt authentifizéiert an näischt autoriséiert, ass en Resultat vun der Politick an net e Feeler an der Method.

Ähnlech Artikelen