Cyfyngu mewngofnodiadau OpenVPN i un grŵp gyda pholisi PAM
Gall gwasanaeth PAM pwrpasol dderbyn aelodau grŵp VPN yn unig heb gyffwrdd â rheolau mewngofnodi system-gyfan. Cyfeiriwch yr ategyn auth-pam ato a phrofwch y canlyniadau.
Cadwch bob cyfrif yn gallu mewngofnodi fel arfer, ond gadewch i un grŵp yn unig ddefnyddio’r VPN. Gall PAM fynegi’r gwahaniaeth hwnnw heb ail storfa gyfrinair, a gellir cyfeirio ategyn OpenVPN at wasanaeth sy’n cynnwys dim ond y gwiriadau yr ydych yn bwriadu eu cael. Y tric yw adeiladu’r gwasanaeth hwnnw heb etifeddu stac system-gyfan ar ddamwain.
Mae’r daith gerdded hon yn dechrau gydag enw gwasanaeth yr ategyn, yn adeiladu polisi, ac yna’n profi’r tri chanlyniad sy’n bwysig: aelod, allanolyn â chyfrinair dilys, a chredyd gwael.
Pam gwasanaeth PAM ar wahân
Mae ategyn auth-pam yn cymryd enw gwasanaeth fel ei ddadl. Mae’r enw hwnnw’n dewis ffeil o dan /etc/pam.d, a’r stac yn y ffeil honno yw’r hyn sy’n rhedeg yn ystod mewngofnodi VPN. Os byddwch yn pasio’r un enw ag y mae mewngofnodi system-gyfan yn ei ddefnyddio, byddwch yn etifeddu pob penderfyniad yn y stac hwnnw, gan gynnwys y rhai a ychwanegwyd yn ddiweddarach am resymau annibynnol.
Crëwch wasanaeth pwrpasol yn lle hynny. Dechreuwch o stac sy’n gweithio ac sy’n dilysu yn erbyn y backend a fwriadwyd yn barod, fel ffeil gyfrinair leol, SSSD, neu wasanaeth cyfeiriadur, yna ychwanegwch y rheol gymhwyster. Mae copïo dwy linell i ffeil wag yn gamgymeriad cyffredin: gall dod i ben cyfrinair, cloi cyfrif, a gwiriadau eraill fyw yn y stac na chawsoch ei gopïo.
Mae gwahanu’r gwasanaeth hefyd yn cyfyngu ar y difrod. Gall rheol sy’n benodol i VPN mewn stac a rennir wrthod mynediad SSH neu gonsol i bawb, sy’n troi newid mynediad yn amhariad.
Ysgrifennu rheol y grŵp
Mae’r gwirio cymhwyster yn perthyn i’r cam cyfrif, ar ôl i’r credyd gael ei wirio. Mae rheol fel account required pam_succeed_if.so user ingroup vpnusers yn caniatáu i’r prosesu barhau dim ond pan fo’r defnyddiwr dilys yn aelod o’r grŵp hwnnw.
Mae’r llinell honno’n ddarn, nid yn wasanaeth cyflawn. Integreuwch ef lle mae pob llwybr a dderbynnir yn ei gyrraedd, a gwiriwch y baneri rheoli o’i gwmpas. Gall sufficient neu reolaeth naid yn gynharach yn y stac ddod â’r prosesu i ben cyn i’ch rheol redeg, sy’n troi’r cyfyngiad yn awgrym.
Peidiwch ag ychwanegu use_uid o arfer. Hebddi mae’r modiwl yn gwerthuso’r defnyddiwr sy’n cael ei ddilysu; gyda hi mae’r modiwl yn gwerthuso’r cyfrif y mae proses OpenVPN yn rhedeg o dano, sef root neu gyfrif gwasanaeth fel arfer, ac felly nid y person sy’n mewngofnodi.
Daw aelodaeth grŵp o ddatrysiad hunaniaeth y system, nid o enw yr ydych yn ei adnabod. Ar gyfer defnyddwyr cyfeiriadur, cadarnhewch fod yr un backend yn ateb ymholiadau grŵp ar gyfer y defnyddiwr hwnnw, oherwydd mae grŵp lleol ag enw cyfarwydd yn wrthrych gwahanol i grŵp cyfeiriadur o’r un enw.
Trapiau trefn a hunaniaeth
Gosodwch reol y grŵp ar ôl y stac dilysu ac ar ôl unrhyw wiriad sy’n dal i fod yn berthnasol, ond cyn neu ochr yn ochr â’r gwiriadau cyfrif yr ydych yn eu cadw. Mae PAM yn gwerthuso modiwlau yn nhrefn y ffeil, ac mae gwerth rheoli pob llinell yn penderfynu a yw methiant yn derfynol.
Gwyliwch am staciau dyblyg. Patrwm cyffredin yw cynnwys sydd eisoes yn cynnwys rheol cyfrif, wedi’i ddilyn gan eich rheol grŵp eich hun, sy’n cynhyrchu dau benderfyniad lle’r oeddech yn disgwyl un. Darllenwch y ffeil a gynhwyswyd, nid yn unig yr un y gwnaethoch ei golygu. Ffordd gyflym o weld y drefn effeithiol yw darllen y ffeil o’r top i’r gwaelod a nodi pob gwerth rheoli.
Cadwch y gofynion derbyn eraill yn gyfan. Nid yw cyfrinair llwyddiannus yn disodli gwiriadau tystysgrif, ail ffactor, nac awdurdodiad ar ôl cysylltu, ac nid yw’r polisi hwn yn rhodd am unrhyw un ohonynt. Dim ond penderfynu a yw’r cyfrif yn gymwys i’w ystyried ar gyfer mynediad VPN y mae’n ei wneud.
Profi aelodau, allanolion a chyfrineiriau gwael
Profwch dri achos cyn ystyried y polisi’n barod. Mae aelod yn cysylltu’n llwyddiannus. Mae cyfrif dilys y tu allan i’r grŵp yn dilysu ei gyfrinair ond yn cael ei wrthod rhag mynediad VPN. Mae cyfrinair anghywir ar gyfer y naill gyfrif neu’r llall yn cael ei wrthod ar gam dilysu, nid gan reol y grŵp.
Edrychwch ar y gwall sy’n weladwy i’r cleient a log y gweinydd gyda’i gilydd, oherwydd gall y ddau fethiant edrych yn debyg i’r person sy’n cysylltu. Mae’r gwahaniaeth yn bwysig i gefnogaeth: mae angen newid grŵp ar allanolyn â chyfrinair cywir, tra bod cyfrinair anghywir yn gofyn am ailosod credyd.
Cadwch ail sesiwn ar agor wrth olygu PAM, a gwiriwch fewngofnodi SSH arferol ar ôl y newid hefyd. Pwynt y gwasanaeth pwrpasol yw y dylai mewngofnodi system fod heb ei effeithio, a’r unig ffordd i wybod yw ei brofi.
Os bydd rhywbeth yn torri, adferwch y ffeil gwasanaeth flaenorol o gopi. Mae’r rheol yr ydych ei heisiau’n syml i’w datgan: mae aelodaeth yn gwneud cyfrif yn gymwys ar gyfer mynediad VPN, ac mae pob gwiriad gofynnol arall yn dal i fod yn berthnasol.