Eftir lækkun réttinda: hvaða OpenVPN skrár virka enn?
Lýsingar sem opnaðar voru fyrir lækkunina virka áfram; slóðir sem opnaðar eru aftur síðar gera það ekki. Ákveðið hvaða þriggja keyrsluskráa uppsetningin ykkar þarf að opna aftur.
Löng keyrslutími sannar aðeins að ræsingin hafi tekist með þeim réttindum sem púkinn hafði á þeirri stundu. Biluðu ferlarnir sem skipta máli hér koma síðar: nýr biðlari tengist, afturköllunarlisti er skipt út, hjálparskrift þarf að skrifa skrá. Hvert þeirra er ný opnun sem reikningurinn án réttinda framkvæmir, með eigin heimildarspurningu og eigin villuboðum. Þrjár ákvarðanir aðskilja uppsetningu sem heldur áfram að virka frá þeirri sem bregst við næsta atburði.
Aðskiljið það sem hlaðið var snemma frá því sem opnast síðar
Lýsing er handfang á opinni skráarlýsingu, og aðgangshamurinn var festur þegar lýsingin var búin til. Að skipta um notanda ferlisins síðar lokar ekki handfanginu, þess vegna virkar lykilskrá sem lesin var sem root áfram eftir lækkunina. Hamurinn breytist heldur ekki: handfang sem opnað er til lestrar verður ekki skrifanlegt, og skrifanlegt handfang er ekki afturkallað bara af því að reikningurinn missti réttindi sín á slóðinni. Þessar tvær staðreyndir útskýra mestan hluta hins óvænta atferlis í þessum skýrslum.
Hinn helmingurinn er minni. Púki getur þáttað skírteini, haldið þáttaða efninu og lokað skránni; það sem er í notkun eru gögn, ekki opin skrá. Því sannar áframhaldandi umferð hvorki að lýsing sé opin né að slóðarheitið sé aðgengilegt. Hún sannar aðeins að efnið sem þarf fyrir núverandi lotu hafi fengist fyrr.
Seinni opnun er önnur færsla. Hún keyrir undir núverandi skilríkjum, núverandi öryggissamhengi og núverandi skoðun á uppsetningu, svo slóð sem var læsileg við ræsingu getur verið hafnað við næstu tengingu. Snúningur bætir við gildru: að skrifa nýja skrá yfir sama slóðarheiti lætur fyrirliggjandi handfang vera bundið við gamla hlutinn, svo endurhleðsla getur virst heppnast meðan púkinn notar enn fyrra innihaldið. Berið saman inode sem ferlið heldur og það sem er á disknum áður en þið trúið því að snúningurinn hafi tekið gildi.
Nefnið þrjár keyrslulestrana og hvenær hver þeirra á sér stað
Þrjár auðlindir eru venjulega opnaðar löngu eftir frumstillingu, og þær bregðast á mismunandi augnablikum. Uppsetningarskrá tiltekins biðlara er lesin þegar sá biðlari tengist, svo hún getur brotnað fyrir einn notanda meðan aðrir halda áfram. Afturköllunargögn eru skoðuð við auðkenningu jafnings og aftur þegar skránni er skipt út. Tímabundin mappa er aðeins snert þegar skrift eða viðbót skrifar eitthvað.
Ekkert þeirra þriggja tilheyrir ræsingarslóðinni, þess vegna getur þjónn sem hefur verið heill í vikur brugðist við næstu tengingu. Flokkurinn nefnir líka eiganda lagfæringarinnar: fyrstu tvö eru lestrarréttindi á uppsetningu undir reikningi púkans, og þriðja er skrifanlegur staður með þröngum tilgangi.
| Path reopened later | What triggers the open | First sign when it fails |
|---|---|---|
| Client configuration file | A connection for that client identity | One client rejected while others connect |
| Revocation data | Peer authentication, including after replacement | Revoked and valid peers both refused |
| Script or plugin temporary directory | A helper needs to create a file | The helper exits with a path error |
persist-key svarar þrengri spurningu en flestir gera ráð fyrir. Það heldur lykilskránni opinni í gegnum skjalfestu SIGUSR1 og ping-restart endurstillingarnar, og það gerir ekkert fyrir CCD skrár, afturköllunargögn, hjálparforrit eða fulla endurræsingu ferlisins. Þau fylgja enn eigin opnunarslóðum, undir hvaða reikningi sem er í gangi á þeirri stundu.
Staðfestið reikninginn og þá sýn sem hann hefur í raun
Spyrjið gangandi púkann hvaða reikning hann notar í stað þess að treysta unit-skránni, og berið svo svarið saman við það sem unitin setur. Misræmi er fyrsta málið sem leysa þarf, því hver síðari heimildaprófun keyrir sem sá sem ferlið er í raun. Gangið svo slóðina í gegnum hluta fyrir hluta; gegnumferð er metin á hverju stigi, svo læsileg skrá í mappa sem ekki er hægt að fara í gegnum er áfram ólæsileg. Lokahamur skrárinnar er síðasta spurningin, ekki sú fyrsta.
Nafnrými og sandkassar þjónustunnar bæta við mörkum sem eignarhald og hamurbitar lýsa ekki. Slóð sem sést í skelinni ykkar getur vantað eða verið skrifvarin inni í chroot, uppsetningarnafnrými eða unit sem felur heimamöppur. Öryggiseiningar bæta við einu lagi, svo skrá sem virðist læsileg getur samt verið hafnað þegar hún er opnuð.
ps -o user:12,pid,args -C openvpn
systemctl show -p User -p Group -p ProtectHome -p RootDirectory [email protected]
sudo -u openvpn namei -l /etc/openvpn/ccd/aliceÁrangursrík lestur í skel stjórnandans prófar ekkert af þessum samsettu skilyrðum. Keyrið prófunina sem reikningur púkans, með sama nafnrými og sama sandkassa, eða samþykkið að niðurstaðan lýsi skelinni ykkar en ekki þjóninum. Þriðja skipunin er ódýra útgáfan af þeirri prófun: hún prentar ham hvers hluta og bregst á þeim fyrsta sem reikningur púkans kemst ekki í gegnum.
Gefið keyrsluskrifinu eigin möppu
Lestur er aðeins helmingur skrárinnar. Hjálparskrift kann að þurfa að búa til stöðuskrá, viðbót kann að þurfa að skrifa stöðu við hlið uppsetningarinnar, og þessi skrif eru ekki þakin með því að gera uppsetningartréð skrifanlegt. Gefið tiltekinni möppu skrifheimildina sem starfsemi hennar krefst, með eiganda og ham sem þið getið útskýrt. Veljið frekar lesaðgang fyrir allt sem aðeins er lesið.
Haldið heimildum einkalykilsins aðskildum frá stefnuskrám. Lykill sem þarf að lesa aftur eftir endurstillingu hefur aðra kröfu en biðlaraskrá sem lesin er við hverja tengingu, og ein væg heimild fyrir bæði veitir meiri aðgang en vandamálið biður um. Sérhæfður púkareikningur með þröngu eignarhaldi er auðveldari í endurskoðun en breiður hópur. Þegar lykillinn verður að lifa af endurstillingar, persist-key fjarlægir það endurlesturinn í stað þess að víkka möppuna.
Ákveðið út frá atburðinum sem þið getið endurtekið
Lifandi göng sanna eina slóð í gegnum kóðann. Atburðurinn sem þarf skrána er eina prófunin sem nær yfir opnunina sem ykkur varðar, hvort sem það er ný biðlaratenging, útskipt afturköllunarskrá, leyfð mild endurstilling eða fyrirhuguð endurræsing. Veljið atburðinn, keyrið hann og haldið fyrstu villunni frekar en þeirri síðustu.
Við milda endurstillingu sýna eitt merki og logg unitarinnar hvort lykillinn var lesinn aftur. Sendið merkið og lesið svo síðustu línurnar sem unitin skrifaði:
systemctl kill -s SIGUSR1 [email protected]
journalctl -u [email protected] -n 40 --no-pagerÁlyktið ekki að spilltur púki geti ekki lengur breytt skrám bara af því að réttindin voru lækkuð. Hvað hann getur enn fer eftir þeim skilríkjum sem eftir eru, getu hans, möppunum sem hann getur skrifað í og hverju skrifanlegu handfangi sem hann heldur enn. Réttindalækkun þrengir valdið, og skráin yfir keyrsluopnanir sýnir hversu mikið. Skrifið þessi mörk við uppsetninguna svo næsta manneskja þurfi ekki að uppgötva þau aftur.