Nid yw dwy rysáit o leiafswm braint wedi'u pastio at ei gilydd yn cynhyrchu defnydd mwy caeth. Mae un model yn gadael i'r daemon ddechrau gyda braint a disgyn i gyfrif heb fraint ar ôl y cychwyn; mae'r llall yn gadael i'r rheolwr gwasanaeth ei lansio o dan hunaniaeth gyfyngedig o'r cyfarwyddyd cyntaf. Mae pob un yn gweithio ar ei ben ei hun, ac mae'r cyfuniad yn aml yn cynhyrchu gwasanaeth na all wneud y naill na'r llall o'r ddau waith yn lân. Mae gweddill hyn yn cerdded y penderfyniad yn ei drefn.

Dau fodel, un perchennog y newid

Mae'r model cyntaf yn perthyn i'r daemon. Mae opsiynau OpenVPN y gymuned user a group yn newid hunaniaeth ar ôl i'r twndwl a'r allweddi gael eu gosod, ac mae persist-key ynghyd â persist-tun yn cadw'r adnoddau hynny'n ddefnyddiadwy wedyn.

Mae'r ail fodel yn perthyn i'r rheolwr gwasanaeth. Mae gosodiad systemd User= neu Group= yn penderfynu'r hunaniaeth y mae'r broses yn dechrau o dani, ac mae cyfarwyddiadau gallu yn penderfynu beth y caiff ei ddal. Mater pecynnu yw dewis rhwng y modelau cyn iddo fod yn fater diogelwch, ac mae cynhaliwr y pecyn eisoes wedi ateb hynny. Eich gwaith chi yw dod o hyd i'r ateb hwnnw yn hytrach na dyfeisio trydydd opsiwn.

Mae'r ddau yn gyfreithlon. Y camgymeriad yw eu trin fel haenau o un dyluniad, oherwydd gall yr ail fodel wneud newid hunaniaeth y cyntaf yn weithred nad yw'r broses mwyach yn cael ei chyflawni.

Penderfynwch ble mae'r hunaniaeth yn newid

Os yw'r uned eisoes yn dechrau fel cyfrif pwrpasol, mae ychwanegu cyfarwyddyd daemon i ddod yn gyfrif arall yn gofyn am drawsnewid setuid na fwriadwyd i wasanaeth caled ei wneud erioed. Mae'r methiant yn ymddangos fel gwall caniatâd wrth ddechrau yn hytrach nag fel neges polisi glir. Mae'n darllen fel gallu coll, sy'n gyrru pobl tuag at y set ffiniol ehangach yn lle tuag at gwestiwn hunaniaeth.

Darllenwch beth mae'r pecyn gosodedig yn ei gludo mewn gwirionedd cyn i chi olygu unrhyw beth, gan gynnwys ei gyfeiriadur drop-in. Mae rhai unedau'n hepgor ostyngiad y daemon ei hun yn fwriadol oherwydd bod y rheolwr eisoes yn trin hynny, ac mae rhai'n dibynnu ar yr opsiynau hynny ar gyfer y newid ar ôl cychwyn. Tynnu'r naill neu'r llall heb wybod pa fodel a etifeddwyd gennych yw sut mae gwasanaeth sy'n gweithio yn stopio dechrau.

Ysgrifennwch y model a ddewiswyd mewn un llinell: yn eiddo i'r rheolwr neu'n eiddo i'r daemon. Rhaid i bob cyfarwyddyd diweddarach fod yn gyson â'r frawddeg honno, a dylid trin uned gymysg fel nam yn hytrach na chyfaddawd.

Mae galluoedd yn derfynau, nid yn roddion

Mae set ffiniol gallu yn dweud beth y caiff proses ei ddal ar y mwyaf. Nenfwd yw hi, ac nid yw rhestru gallu yno yn rhoi dim ynddo'i hun, a dyna pam y gall uned â set ffiniol hael fethu creu twndwl o hyd.

Yr hyn sy'n gosod gallu yn y set amgylchynol ar gyfer gwasanaeth mewn gwirionedd yw AmbientCapabilities=. Mae cyfeirlyfr gweithredu systemd yn dogfennu'r ddau gyfarwyddyd ar wahân, ac mae'r gwahaniaeth hwnnw'n esbonio'r rhan fwyaf o'r cyngor gallu dryslyd ar-lein.

Ychwanegwch allu dim ond ar ôl i'r weithred sy'n methu ei nodi. Mae set ffiniol ehangach yn cuddio'r gwir achos ac yn gadael y gwasanaeth yn fwy breintiedig nag y bwriadodd y dyluniad. Mae hefyd yn gwneud yr uned yn anoddach i'w hadolygu, oherwydd nid yw'r nenfwd mwyach yn disgrifio'r gwaith. Tynnwch y gallu ychwanegol unwaith y bydd y nam gwirioneddol wedi'i drwsio.

Mapiwch awdurdod ar draws y cylch bywyd

Rhestrwch beth y mae'n rhaid i'r broses ei wneud ar bob cam: cychwyn, cyflwr sefydlog, ail-ddilysu a datgymalu. Nid yw creu rhyngwyneb, newid llwybrau, darllen allwedd warchodedig a galw cynorthwyydd i gyd yn digwydd ar yr un pryd nac o dan yr un gofynion. Trefnwch y rhestr yn ôl cam cyn ei threfnu yn ôl gallu.

Mae opsiynau parhad yn cadw adnoddau ar draws ailnegodi, ac nid ydynt yn rhoi caniatâd na chafwyd erioed. Bydd allwedd na all y broses ei darllen wrth ddechrau yn parhau'n annarllenadwy wedyn, beth bynnag a ddywed y baneri parhad. Mae'r baneri'n cadw'r hyn a oedd eisoes yn gweithio.

Defnyddiwch gyfrif pwrpasol yn hytrach nag un a rennir. Mae datblygwyr OpenVPN yn rhybuddio yn erbyn yr arfer o ddefnyddio nobody fel enghraifft gyffredinol, oherwydd efallai bod gwasanaethau eraill ar y gwesteiwr eisoes yn rhedeg fel y cyfrif hwnnw ac nid yw'r ynysiad rydych chi'n meddwl sydd gennych yno.

Gall nodweddion sy'n newid y llwyth lleol, fel dadlwytho'r sianel ddata neu adeilad sy'n cysylltu'n wahanol, symud pa weithredoedd sydd eu hangen. Ailymwelwch â'r map pan fydd y pecyn yn newid, nid yn unig pan fydd rhywbeth yn torri.

Ysgrifennwch y cynllun i lawr a chadwch fynediad adfer

Dylai cofnod defnydd enwi'r rheolwr, yr hunaniaeth gychwynnol, yr hunaniaeth sefydlog arfaethedig a phob grant gyda'r weithred sy'n ei ofyn. Y cofnod hwnnw sy'n gwneud y newid nesaf yn adolygadwy yn hytrach nag yn arbrofol.

Cadwch fynediad consol ar gael wrth olygu, oherwydd mae uned sy'n methu wrth ddechrau yn anodd ei thrwsio o bell. Profwch ailgychwyn ac ailgychwyn llawn cyn galw'r newid yn gyflawn. Gall uned sy'n goroesi ailgychwyn fethu o hyd cyn i'r rhwydwaith fod yn fyny.

Llwyddiant yw cylch bywyd o awdurdod lleiaf a ddeellir, nid proses sy'n digwydd bod yn rhedeg o dan enw nad yw'n root.

Erthyglau cysylltiedig