OpenVPN PAM: l-argument tal-login huwa servizz, mhux utent
Il-kelma wara l-mogħdija tal-plugin auth-pam tagħżel munzell PAM. Aqra dak il-munzell, sib is-sors tal-kontijiet tiegħu, imbagħad ittestjah b’pamtester qabel ma tibdel il-profili.
Utent ġie miżjud fuq is-server, il-password ittajpjata sew, u l-konnessjoni xorta tispiċċa b’AUTH_FAILED. Il-linja tal-plugin normalment tispjega għala: il-kelma wara l-mogħdija tal-plugin hija isem ta’ servizz PAM, u hija tiddeċiedi liema munzell ta’ moduli jwieġeb il-mistoqsija. Mhix isem tal-utent, u mhix pointer għal fajl tal-passwords li OpenVPN jaqra hu stess.
X’tagħżel it-tieni kelma
Il-linja tal-konfigurazzjoni tieħu mogħdija tal-plugin u argument wieħed:
plugin /usr/lib/openvpn/plugins/openvpn-plugin-auth-pam.so openvpnDak l-argument jiġi mgħoddi lill-librerija PAM bħala l-isem tas-servizz, u b’hekk il-munzell f’/etc/pam.d/openvpn ikun dak li jopera. Ikteb login hemmhekk u minflok tikseb il-politika tal-login interattiv, bil-moduli li dik il-politika tinkludi fid-distribuzzjoni tiegħek.
Uża l-mogħdija tal-plugin li tipprovdi l-pakkett installat, mhux mogħdija kkupjata minn host ieħor. L-isem tal-fajl u d-direttorju jvarjaw bejn distribuzzjonijiet, u mogħdija żbaljata tfalli fil-bidu bi żball tat-tagħbija tal-plugin, mhux fl-awtentikazzjoni.
Minn fejn il-munzell tassew jaqra l-kontijiet
PAM huwa dispatching. Il-fajl tas-servizz jelenka l-moduli fl-ordni, u l-ewwel wieħed li jista’ jwieġeb jiddeċiedi r-riżultat. Munzell li jsejjaħ pam_unix jaqra kontijiet lokali; munzell li jsejjaħ modulu LDAP jew RADIUS jibgħat il-kredenzjali xi mkien ieħor għal kollox.
Aqra l-fajl li għalih l-isem tas-servizz jiġi riżolt, inkluż kull ma jinkludi:
cat /etc/pam.d/openvpn
grep -H pam_ /etc/pam.d/openvpn /etc/pam.d/common-authJekk il-munzell jiddelega lil direttorju, iż-żieda ta’ kont lokali ma tbiddel xejn. Jekk jaqra kontijiet lokali, il-ħolqien tal-utent fid-direttorju lanqas ma jbiddel xejn. Il-kont irid jeżisti fejn iħares il-munzell, u dik hija d-dijanjosi kollha f’ħafna minn dawn ir-rapporti.
Tentattiv wieħed, żewġ logs
Ikkorrella konnessjoni waħda falluta fuq iż-żewġ naħat. Il-log ta’ OpenVPN juri r-riżultat tal-plugin u r-rifjut tal-klijent; il-log tal-awtentikazzjoni tas-sistema juri liema modulu tħaddem u x’iddeċieda. Li taqrahom fl-istess tieqa ta’ żmien huwa dak li jifred fajl tas-servizz nieqes minn timeout tal-backend. Voit fil-log tal-awtentikazzjoni jfisser li l-munzell qatt ma ntlaħaq.
journalctl -u openvpn-server@server --since "-2 min"
journalctl -t sshd -t sudo --since "-2 min"Ittestja s-servizz direttament b’għodda li titkellem PAM, sabiex ma tkunx qed tinnaviga l-VPN u l-munzell fl-istess ħin. Test dirett li jirnexxi bl-istess isem tas-servizz u kont jiddejjaq il-problema għal kif id-daemon jgħaddi l-kredenzjali, mhux għall-kont innifsu.
pamtester openvpn alice authenticateJekk it-test dirett ifalli bl-istess kredenzjali li jaħdmu fuq console, il-munzell mhux qed jaqra s-sors tal-kontijiet li assumejt. Jekk jirnexxi, ħares lejn il-konversazzjoni li jmexxi l-plugin u lejn dak li l-klijent fil-fatt bagħat. Mexxih darba wkoll b’password żbaljata apposta, sabiex tara d-differenza bejn rifjut u żball ta’ modulu. Dawk iż-żewġ riżultati jidhru identiċi fil-log tal-VPN u kompletament differenti hawn.
Servizz dedikat aħjar milli tibdel il-login
Agħti lill-VPN il-fajl tas-servizz tiegħu stess meta l-ħtiġijiet tiegħu jvarjaw mill-login interattiv, kif normalment jagħmlu. Li tibdel login jew common-auth ibiddel il-politika għal kull programm li jinkludihom, u l-persuna li jmiss li tinnaviga problema tal-login mhux relatata se tirtira l-bidla tiegħek.
Ikkupja l-moduli li għandek bżonn fi fajl tas-servizz żgħir, żomm l-ordni espliċita, u nnota min hu s-sid. Dak il-fajl huwa dak li għandu jiġi ċċekkjat meta reset tal-password jidher li m’għandux effett.
X’jibgħat il-klijent, u x’ma jibgħatx
Il-klijent jipprovdi isem tal-utent u password permezz tal-prompt jew il-fajl tiegħu appoġġjat. Il-plugin tas-server jgħaddi dawk il-valuri fil-konversazzjoni PAM; ma jaqrahomx mill-konfigurazzjoni tas-server. Linja fuq in-naħa tas-server li tidher li tiddefinixxi password mhijiex tagħmel dan, u l-ebda bidla fil-profil mhi ser toħloq kont.
Isem tal-utent u password jistgħu jeżistu flimkien maċ-ċertifikati tal-klijent, u li tippermetti PAM mhijiex raġuni biex tieqaf tiverifika ċ-ċertifikati. Żomm is-saffi li d-deployment kien beħsiebu u sewwi biss is-sors tal-kontijiet.
L-aċċettazzjoni hija f’żewġ direzzjonijiet: il-kont intenzjonat jirnexxi, u kont li għandu jiġi miċħud xorta jfalli. Il-fajl README tal-plugin auth-pam jiddokumenta l-argument tas-servizz u l-backends li jista’ jservi, u dak huwa l-post biex tikkonferma l-arranġament li qed tipprova tibni.