Modul PAM ni znan: kateri proces je v resnici spodletel
Sporočilo imenuje deljeni objekt in vstopno točko, ne gesla. Poiščite proces, ki ga je zabeležil, nato preverite nalaganje, simbole in jamstva sklada.
To besedno zvezo berite kot trditev o deljenem objektu in kazalcu na funkcijo, ne o geslu. Iste besede lahko pridejo iz OpenVPN vtičnika, iz sklada PAM, naloženega za eno storitev, ali od znotraj demona RADIUS, in to so tri preiskave. Najprej določite proces.
Spodnja preverjanja predpostavljajo, da je sporočilo nastalo prek integracije Linux-PAM ob prijavi VPN. Če je prišlo iz lastne konfiguracije strežnika RADIUS, začnite z dokazi tega demona.
Poimenujte proces, preden poimenujete paket
Tri komponente imenujemo modul in nobena ni zamenljiva. Vtičnik za preverjanje pristnosti OpenVPN naloži demon VPN in izvaja vmesnik povratnega klica tega demona. Modul PAM je deljeni objekt, ki ga libpam naloži za imenovano storitev, in ki izvaja vstopne točke, kot je pam_sm_authenticate. Modul FreeRADIUS je del lastne konfiguracije tega demona. Sporočilo z enakimi besedami lahko pride od katerega koli od treh, zato je prvo vprašanje, katera vrstica dnevnika ga je ustvarila.
Povežite časovni žig enega neuspelega poskusa med dnevnikom VPN in sistemskim dnevnikom preverjanja pristnosti, nato preberite vrstice pred povzetkom. Konkretno sporočilo nalagalnika je običajno že tam.
Preberite napako nalaganja, nato vstopno točko
PAM poroča o neznanem modulu, ko ne more naložiti izbranega deljenega objekta ali ko naloženi objekt ne zagotavlja funkcije, ki jo zahteva ta vnos sklada. To sta različni popravili: prvo je težava s potjo, pakiranjem ali ABI, drugo pa je neujemajoča se vstopna točka. Vrstica auth potrebuje pam_sm_authenticate medtem ko vrstica računa potrebuje pam_sm_acct_mgmt, in knjižnica, ki izvaja samo eno od tega, bo spodletela pri drugem, kot koda razpošiljatelja kaže. Iskanje datoteke na disku ne dokazuje ne enega ne drugega.
Vzeti knjižnico s podobnim imenom iz druge distribucije ali arhitekture procesorja ni popravilo in lahko pusti proces, ki nalaga modul, ki ni bil nikoli preizkušen z njegovim libpam. Preden karkoli spremenite, preverite paket, ki ima predvideno pot, in dejansko arhitekturo datoteke.
Ohranite jamstva, ki jih je dajal sklad
Najhitrejši način, da to napako utišate, je tudi najslabši: označiti obvezni modul za izbirnega, izbrisati fazo računa, ali vstaviti brezpogojno dovoljenje. Vsako od tega spremeni neuspelo preverjanje v manjkajoče preverjanje in prijava nato uspe iz razlogov, ki jih nihče ni nameraval. Ponastavitev gesel in spremembe skupne skrivnosti prav tako ne zagotovijo manjkajoče funkcije, ker se okvara zgodi, preden katera koli poverilnica doseže backend.
Sklad z več moduli je morda zagnal drug backend pred spodletelim vnosom, zato napaka ne dokazuje, da zahteva RADIUS ni bila poslana.
Preverite prijavo, ne modula
Ko je neskladje popravljeno, preizkusite dejansko pot sprejema. Veljaven račun bi moral uspeti, neveljavne poverilnice bi morale še vedno spodleteti, prepovedan račun pa bi moral biti še vedno zavrnjen. Potrdite tudi, da se zahteva po potrdilu ali dodatnem dejavniku še vedno uveljavlja, ker popravljen sklad, ki preskoči fazo, je s strani odjemalca videti kot uspeh.
Čisto nalaganje modula je napredek, ne dokončan preizkus.
Zapišite, katero ime storitve, katere datoteke pravil in katere vstopne točke so bile vključene, skupaj z edinim poskusom, ki ste ga uporabili kot dokaz. Prav ta zapis naredi naslednji pojav iskanje in ne arheološko vajo.