Twa oaninoar plakte resepten fan minimaal foech leverje gjin strangere ynset. It iene model lit de daemon mei foech begjinne en nei de initialisaasje oergean nei in account sûnder foech; it oare lit de tsjinstbehearder him fan de earste ynstruksje ôf ûnder in beheinde identiteit starte. Elk wurket op himsels, en de kombinaasje jout faak in tsjinst dy't gjin fan beide taken skjin dwaan kin. De rest hjirfan rint it beslút yn folchoarder troch.

Twa modellen, ien eigner fan de wiksel

It earste model heart by de daemon. De mienskipferzje fan OpenVPN hat de opsjes user en group, dy't de identiteit feroarje neidat de tunnel en de kaaien ynsteld binne, en persist-key tegearre mei persist-tun hâlde dy boarnen dêrnei brûkber.

It twadde model heart by de tsjinstbehearder. In systemd-ynstelling User= of Group= beslist ûnder hokker identiteit it proses begjint, en foechdirektiven beslisse wat it hâlde mei. De kar tusken de modellen is in ferpakkingskwestje foardat it in feiligenssaak is, en de pakketbehearder hat dêr al antwurd op jûn. Jo taak is dat antwurd te finen ynstee fan in tredde opsje te betinken.

Beide binne legitiem. De flater is se as lagen fan ien ûntwerp te behanneljen, want it twadde model kin de identiteitswiksel fan it earste in operaasje meitsje dy't it proses net mear dwaan mei.

Biskip wêr't de identiteit feroaret

As de unit al as in tawijde account begjint, freget in daemonynstruksje om in oare account te wurden in setuid-oergong dy't in ferhurde tsjinst nea dwaan moatten hie. De flater ferskynt as in tastimmingsflater by it starten ynstee fan as in dúdlike beliedsberjocht. It lêst as in ûntbrekkend foech, wat minsken nei in breder grinsset stjoert ynstee fan nei de identiteitsfraach.

Lês wat it ynstallearre pakket echt leveret foardat jo eat bewurkje, ynklusyf syn drop-in-map. Guon units litte it eigen oerstapjen fan de daemon bewust weilitten, om't de behearder dat al docht, en guon fertrouwe op dy opsjes foar de wiksel nei de initialisaasje. Ien fan beide fuortsmite sûnder te witten hokker model jo erfd hawwe, is hoe't in wurkjende tsjinst ophâldt te starten.

Skriuw it keazen model op ien rigel: behearder-eigendom of daemon-eigendom. Eltse lettere rjochtline moat mei dy sin oerienkomme, en in mingde unit moat as in flater behannele wurde, net as in kompromis.

Foech binne grinzen, gjin jeften

In foechgrinsset seit wat in proses op syn heechst hâlde mei. It is in plafond, en it opsommen fan in foech dêr jout op himsels neat, dêrom kin in unit mei in rom grinsset dochs gjin tunnel meitsje.

Wat in foech eins yn 'e omjouwende set fan in tsjinst set, is AmbientCapabilities=. De systemd-útfieringsreferinsje dokumintearret de twa rjochtlinen apart, en dat ûnderskied ferklearret it measte fan it betiizjende foechadvys online.

Foegje in foech pas ta neidat de mislearjende operaasje it oantsjut hat. In breder grinsset ferberget de echte oarsaak en lit de tsjinst mear foech as it ûntwerp bedoelde. It makket de unit ek hurder nei te sjen, om't it plafond it wurk net mear beskriuwt. Ferwiderje it ekstra foech as de echte flater ferholpen is.

Kartearje gesach oer de libbenssyklus

List op wat it proses yn elke faze dwaan moat: start, stive tastân, opnij autentikaasje en ôfsluting. It meitsjen fan ynterfaces, rûtferoarings, it lêzen fan in beskerme kaai en it oanroppen fan in helper barre net allegear op itselde stuit of ûnder deselde easken. Sortearje de list op faze foardat jo har op foech sortearje.

Persistinsje-opsjes bewarje boarnen oer opnij ûnderhanneljen en jouwe gjin tastimmingen dy't nea hân hiene. In kaai dy't it proses by it starten net lêze kin, bliuwt letter ek ûnlêsber, wat de persistinsjeflaggen ek sizze. De flaggen bewarje wat al wurke.

Brûk in tawijde account ynstee fan in dielde. De OpenVPN-ûntwikkelders warskôgje tsjin de gewoante om nobody as algemien foarbyld te brûken, om't oare tsjinsten op de host miskien al ûnder dy account rinne en de isolaasje dy't jo tinke te hawwen der net is.

Funksjes dy't de lokale lading feroarje, lykas data-kanaal-offload of in build dy't oars keppele is, kinne ferskowe hokker operaasjes nedich binne. Besjoch de kaart as it pakket feroaret, net allinnich as der wat stikken giet.

Skriuw it plan op en hâld wersteltoegong

In ynsetdokumint moat de behearder, de startidentiteit, de bedoelde stive identiteit en elke jefte neame tegearre mei de operaasje dy't der om freget. Dat dokumint is wat de folgjende feroaring neisjenber makket ynstee fan eksperiminteel.

Hâld konsôletagong beskikber wylst jo bewurkje, want in unit dy't by it starten mislearret is dreech op ôfstân te meitsjen. Test in werstart en in folsleine werstart foardat jo de feroaring klear neame. In unit dy't in werstart oerlibbet kin dochs mislearje foardat it netwurk omheech is.

Sukses is in begrepen libbenssyklus mei minimaal gesach, net in proses dat tafallich ûnder in namme oars as root rint.

Relatearre artikelen