L-awtentikatur juri kodiċi ġdid ta’ sitt ċifri, il-VPN jirrifjutah, u l-istess kodiċi jiġi vverifikat tajjeb meta ttestjah mix-shell tiegħek stess. Dan id-distakk huwa l-istorja kollha. Modulu PAM li ma jistax jiftaħ is-sigriet tar-reġistrazzjoni jirritorna falliment li jidher identiku għal kodiċi żbaljat, u l-ambjent tas-servizz li jaħbi d-direttorji tad-dar huwa raġuni komuni. Qabel ma ttaffi kwalunkwe permess, iddeċiedi f’liema minn tliet sitwazzjonijiet int.

Liema minn tliet fallimenti huwa dan?

L-ewwel huwa sigriet li l-modulu ma jistax jaqra xejn. It-tieni huwa sigriet li jista’ jaqra iżda ma jistax jaġġorna. It-tielet huwa kodiċi li verament huwa żbaljat, normalment minħabba drift tal-arloġġ jew valur milgħub mill-ġdid.

Firrahom billi taqra l-ġurnal tas-servizz u l-log tal-awtentikazzjoni tas-sistema għal tentattiv fallut wieħed, imbagħad ikkonferma liema servizz PAM jgħabbi l-plugin u liema linja tal-modulu juża dak is-servizz. Messaġġ ġeneriku ta’ falliment tal-awtentikazzjoni ma jiddistingwihomx, u lanqas test manwali b’suċċess, għax is-shell tiegħek mhuwiex l-ambjent tas-servizz.

Il-veduta tas-sistema tal-fajls tal-unit hija l-ħati tas-soltu meta jonqos biss is-servizz.

systemctl show -p ProtectHome -p ProtectSystem -p ReadWritePaths [email protected]
ls -l /var/lib/vpn-otp/*/.google_authenticator 2>/dev/null | head -n 20

Għażla A: neħħi s-sigriet mid-dar

Meta s-servizz jaħbi /home u int tippreferi żżomm dik il-protezzjoni, aħżen is-sigriet f’post fejn jista’ jarah. Il-modulu jaċċetta mogħdija secret= u kont user= li jwettaq l-operazzjonijiet tal-fajls, li jippermetti maħżen ċentrali jaqdi ħafna identitajiet.

Din hija l-għażla nadifa, u hija dik li teħtieġ l-aktar attenzjoni, għax maħżen maqsum jagħmel direttorju wieħed il-fruntiera tas-sigurtà għal kull kont.

auth required pam_google_authenticator.so secret=/var/lib/vpn-otp/${USER}/.google_authenticator user=vpn-otp

Iċċekkja tliet affarijiet qabel ma tafdah: il-kont jeżisti, il-proċess tax-xogħol tal-modulu jista’ jaqleb għalih, u l-fajls huma tiegħu b’modi restrittivi. Tużax ~ jew mogħdija b’varjabbli tad-dar flimkien ma’ user=, u tiddiżattivax il-kontrolli tas-sjieda tal-modulu biex tagħmel mogħdija taħdem. Żomm il-fażi tal-password u l-bqija tal-munzell intatti.

Għażla B: ħalli l-fajl u iftaħ mogħdija

Jekk is-sigriet irid jibqa’ fid-direttorju tad-dar tal-utent, l-unit teħtieġ veduta li tinkludi dik id-direttorju waħedha mingħajr ma tesponi kull dar fuq il-host. Drop-in jista’ jżid mount bind ristrett ħafna taħt dar fis-sandbox.

Dan iżomm is-sjieda għal kull utent bħala mudell, bi prezz ta’ bidla fl-unit li trid tiġi riveduta kull darba li jinbidel is-sandbox.

Żewġ limiti huma faċli li jinqabdu. Mogħdija biss għall-qari miżjuda taħt direttorju li s-sandbox jaħbi ma tesponihx, għax il-ġenitur sempliċement mhuwiex hemm. U l-mount irid ikun jista’ jinkiteb jekk il-modulu jrid jaġġorna l-istat, li jdaħħal l-għażla li jmiss fil-logħba. Ikteb id-drop-in bħala fajl separat minflok ma teditja l-unit ippakkjata taħt /usr/lib, sabiex aġġornament tal-pakkett ma jreġġax lura bil-kwiet.

Għażla C: żomm is-sandbox u sewwi l-kitbiet tal-istat

Il-qari tas-sigriet huwa biss nofs l-awtentikazzjoni. Il-modulu jista’ jerġa’ jikteb informazzjoni dwar id-differenza fil-ħin, protezzjoni mill-milgħub mill-ġdid jew counter, u fajl li jgħaddi mill-verifika tal-qari xorta jista’ jonqos fil-kitba.

Dak il-falliment jidher bħal kodiċi ħażin fit-tentattiv li jmiss u mhux f’dan, u għalhekk jiġi konfuż mad-drift tal-arloġġ.

Agħtih direttorju tiegħu li jista’ jinkiteb u indika l-mogħdija tas-sigriet hemmhekk, minflok ma tagħmel id-dar kollha tista’ tinkiteb. Ikkonferma s-sid tad-direttorju, l-ispazju liberu tas-sistema tal-fajls u jekk l-unit tirrestrinġix kitbiet band’oħra. Imbagħad ipprova żewġ logins konsekuttivi, għax it-tieni jipprova l-mogħdija tal-kitba u l-ewwel biss il-qari.

Ivverifika bħas-servizz, mhux bħalek innifsek

Kull verifika li timporta trid taħdem ġewwa s-sandbox tal-unit bl-identità tal-unit.

Kmand li jirnexxi bħala root jgħidlek li l-fajl jeżisti u xejn aktar. Login permezz tas-servizz reali jgħidlek jekk il-modulu jistax jaqra s-sigriet, jużah u jerġa’ jikteb dak li jeħtieġ.

Fl-aħħar, żomm ir-rekwiżit intatt. Iż-żieda ta’ għażla ta’ password nulla, l-aċċettazzjoni ta’ fallimenti tal-qari biss jew it-tneħħija tas-sandbox kollha jneħħu s-sintomu billi tinbidel il-politika. Utent li jrid jippreżenta kodiċi xorta għandu jiġi rrifjutat meta s-sigriet ma jkunx jista’ jintlaħaq.

Artikli relatati