Moduli ya PAM haijulikani: ni mchakato upi ulishindwa kweli
Ujumbe unataja kitu kinachoshirikiwa na mahali pa kuingia, si nenosiri. Tafuta mchakato ulioiandika, kisha angalia upakiaji, alama na dhamana za rafu.
Soma sentensi hiyo kama tamko kuhusu kitu kinachoshirikiwa na kielekezi cha kazi, si kuhusu nenosiri. Maneno hayo hayo yanaweza kutoka kwenye OpenVPN programu-jalizi, kutoka kwenye rafu ya PAM iliyopakiwa kwa huduma moja au kutoka ndani ya daemon ya RADIUS, na haya ni uchunguzi watatu tofauti. Kwanza tambua mchakato.
Ukaguzi ulio hapa chini unadhani ujumbe ulionekana kupitia muunganisho wa Linux-PAM wakati wa kuingia VPN. Ikiwa ulitoka kwenye usanidi wa seva ya RADIUS yenyewe, anza na ushahidi wa daemon huyo.
Taja mchakato kabla ya kutaja kifurushi
Vipengele vitatu huitwa moduli na hakuna kimoja kinachoweza kubadilishana. Programu-jalizi ya uthibitishaji ya OpenVPN hupakiwa na daemon ya VPN na hutekeleza kiolesura cha mwitiko wa daemon huyo. Moduli ya PAM ni kitu kinachoshirikiwa ambacho libpam huipakia kwa huduma iliyotajwa, na ambacho hutekeleza sehemu za kuingia kama pam_sm_authenticate. Moduli ya FreeRADIUS ni sehemu ya usanidi wa daemon huyo mwenyewe. Ujumbe wenye maneno yaleyale unaweza kutoka kwa yeyote kati ya hao watatu, kwa hivyo swali la kwanza ni mstari gani wa kumbukumbu uliuzalisha.
Oanisha muhuri wa muda wa jaribio moja lililoshindwa kati ya kumbukumbu ya VPN na kumbukumbu ya uthibitishaji ya mfumo, kisha soma mistari kabla ya muhtasari. Ujumbe mahususi wa kipakiaji kwa kawaida huwa tayari upo.
Soma hitilafu ya upakiaji, kisha sehemu ya kuingia
PAM huripoti moduli isiyojulikana wakati haiwezi kupakia kitu kilichochaguliwa kinachoshirikiwa, au wakati kitu kilichopakiwa hakitoli kazi inayohitajika na mstari huo wa rafu. Hizi ni matengenezo tofauti: ya kwanza ni tatizo la njia, ufungashaji au ABI, na ya pili ni sehemu ya kuingia isiyolingana. Mstari wa uthibitishaji unahitaji pam_sm_authenticate ilhali mstari wa akaunti unahitaji pam_sm_acct_mgmt, na maktaba inayotekeleza moja tu itashindwa kwenye nyingine, kama msimbo wa mtumaji unavyoonyesha. Kupata faili kwenye diski hakuthibitishi yote mawili.
Kuchukua maktaba yenye jina linalofanana kutoka usambazaji mwingine au usanifu wa CPU mwingine si matengenezo, na kunaweza kuacha mchakato ukipakia moduli ambayo haijawahi kupimwa dhidi ya libpam yake. Angalia kifurushi kinachomiliki njia inayokusudiwa na usanifu halisi wa faili kabla ya kubadilisha kitu chochote.
Hifadhi dhamana ambazo rafu ilikuwa ikitoa
Njia ya haraka zaidi ya kunyamazisha hitilafu hii pia ni mbaya zaidi: kuweka alama ya moduli inayohitajika kama hiari, kufuta hatua ya akaunti, au kuingiza ruhusa isiyo na masharti. Kila moja ya haya hugeuza ukaguzi ulioshindwa kuwa ukaguzi usiopo, na kuingia hufanikiwa kwa sababu ambazo hakuna aliyekusudia. Kuweka upya nenosiri na kubadilisha siri inayoshirikiwa pia hakutoi kazi inayokosekana, kwa sababu kushindwa hutokea kabla ya kitambulisho chochote kufika kwenye backend.
Rafu yenye moduli nyingi inaweza kuwa ilifanya kazi backend nyingine kabla ya mstari ulioshindwa, kwa hivyo hitilafu haithibitishi kwamba hakuna ombi la RADIUS lililotumwa.
Thibitisha kuingia, si moduli
Baada ya kutolingana kurekebishwa, jaribu njia halisi ya kukubaliwa. Akaunti halali inapaswa kupita, vitambulisho batili vinapaswa bado kushindwa, na akaunti iliyokatazwa inapaswa bado kukataliwa. Thibitisha pia kwamba hitaji lolote la cheti au kipengele cha ziada bado linatumika, kwa sababu rafu iliyotengenezwa inayoruka hatua huonekana kama mafanikio kwa upande wa mteja.
Moduli kupakiwa safi ni maendeleo, si jaribio lililokamilika.
Andika jina la huduma, faili za sera na sehemu za kuingia zilizohusika, pamoja na jaribio moja ulilotumia kama ushahidi. Rekodi hiyo ndiyo inayofanya tukio lijalo kuwa utafutaji badala ya zoezi la akiolojia.