Seva ya OpenVPN inapaswa kuandika kumbukumbu yake wapi, na kwa nini
log, log-append na syslog zinatofautiana, na msimamizi wa huduma ana nakala yake. Chagua mkondo mmoja wenye mamlaka, weka mzunguko wa maisha uwe wazi na uweke muda wa kuhifadhi.
Ubunifu wa kumbukumbu hujibu maswali matatu: ni mchakato gani uliotengeneza rekodi, rekodi hiyo inatua wapi na inaishi kwa muda gani. OpenVPN inaweza kuandika kwenye faili, kupeana ujumbe kwa kiandikaji cha mfumo au kuwaacha kwa kile msimamizi wa huduma anachokamata, na hizo si nakala tatu za mkondo mmoja. Kila chaguo hubadilisha nani anamiliki mzunguko, mtumiaji gani anaweza kusoma matokeo na nini hutokea wakati wa kuanza. Amua majibu kabla ya tukio, kwa sababu baadaye unarithi kile kilichosanidiwa.
Daemon hufanya nini kwa kweli na agizo hilo
Maagizo si dhana dhahania; kila moja huamua mchakato unaandika ujumbe wake wapi. log /path hufungua faili hiyo, log-append /path huifungua kwa kuongeza, na syslog hupeana ujumbe kwa kiandikaji cha mfumo wa ndani kupitia soketi yake. Bila yoyote kati ya hizi, matokeo huenda kwenye matokeo ya kawaida na msimamizi wa huduma huamua kinachofuata. Soma unit inayotumika na wasifu pamoja kabla ya kuhitimisha kuwa daemon inapuuza usanidi wako.
Kesi ya mwisho ni ya kawaida katika usakinishaji wa kifurushi, na inaeleza kwa nini wasimamizi wawili hawakubaliani kuhusu mahali kumbukumbu inaishi. Mmoja husoma jarida la unit, mwingine husoma faili ambayo daemon haikuandika kamwe.
Kagua usanidi unaoendesha, si faili iliyo kwenye diski. Ubadilishaji wa unit wa aina ya drop-in au faili ya mazingira unaweza kubadilisha agizo linalotumika bila kugusa wasifu unaousoma.
log hukata, log-append haikati
log hukata faili iliyopo agizo linapoanza kutumika, kwa hiyo kuanzisha upya hufuta ushahidi wa kabla. log-append huhifadhi kilichopo na kuongeza. Hakuna chaguo linalozungusha kitu, na hakuna linalofungua faili yenyewe baadaye, kwa hiyo mzunguko unahitaji ushirikiano.
Ikiwa mzunguko unabadilisha jina la faili wakati daemon inaendelea kuandika kwenye kielekezi cha zamani, faili mpya hubaki tupu na matumizi ya diski yanaendelea kupanda katika ile iliyobadilishwa jina. Tuma ishara kwa mchakato kufungua upya, au zungusha kwa mkakati wa kunakili-na-kukata na ukubali dirisha la kunakili.
Saraka, umiliki na ruhusa ni sehemu ya ubunifu. Daemon inaweza kuendesha kama mtumiaji asiye na ruhusa maalum baada ya kuanza, na saraka iliyoundwa na root wakati wa usakinishaji inaweza kuwa haiwezi kuandikwa wakati huo. Iandae kupitia ufungashaji au mchakato wa usambazaji badala ya kurekebisha ruhusa wakati wa tukio.
Msimamizi wa huduma ana nakala ya pili
systemd hunasa matokeo ya kawaida na hitilafu ya kawaida kwa chaguo-msingi, kwa hiyo unit isiyo na uelekezaji wazi tayari ina kumbukumbu. Kuongeza agizo la faili hutoa mikondo miwili yenye muda wa kuhifadhi, wasomaji na alama za muda tofauti.
Hilo si kosa kiotomatiki, lakini lazima liwe uamuzi. Weka rekodi ya kuanza kwenye jarida, kwa sababu kushindwa kabla faili iliyosanidiwa haipo hakuonekani mahali pengine. Kisha fanya faili iwe na mamlaka kwa matukio ya hali thabiti na uandike hilo kwenye runbook. Mikondo miwili yenye mamlaka inamaanisha majibu mawili kwa kila swali.
Thibitisha chaguo kwa jaribio linaloshindwa kwa makusudi. Anzisha daemon na cheti kisichosomeka na uangalie ni mkondo gani unaorekodi hitilafu.
Utanani si sawa na maelezo yanayoweza kutumika
Kiwango cha juu cha verb huongeza mistari, na baada ya hatua fulani mistari ambayo hakuna anayesoma. Kiwango cha 3 ni hali thabiti inayofaa kwa usambazaji mwingi, wakati kiwango cha 4 na zaidi kinafaa uchunguzi wenye kikomo na swali linalojulikana. Ukandamizaji wa marudio hupunguza kelele, lakini haupaswi kuficha jinsi tukio linavyojirudia. Weka kiwango unachoweza kudumisha, na kiinue tu kwa uchunguzi uliotajwa wenye mwisho.
Weka utambulisho wa kipengele na alama za muda kwenye rekodi. Muunganisho upya unaonekana kama muunganisho wa kwanza wakati faili imeongezwa kwa miezi na jina la kipengele halipo.
Kuwa makini na kile kingine kinachoanguka kwenye faili hiyo. Matokeo yaliyoelekezwa yanaweza kuwa na maandishi kutoka skripti zilizoitwa, na programu msaidizi inayochapisha mazingira yake huweka vitambulisho na njia za ufunguo kwenye kumbukumbu inayosomeka. Chukulia ufikiaji wa kumbukumbu kama uamuzi wa usalama hata daemon yenyewe haichapishi kitu nyeti.
Mzunguko, uhifadhi na ishara zinazopakia upya
Amua uhifadhi pamoja na mmiliki wa diski, na uweke kabla ya ujazo kuamua kwa niaba yako. Ishara ya kupakia upya si amri ya utunzaji wa kumbukumbu: kutuma ishara isiyo sahihi huanzisha upya handaki na kukata kila mtumiaji. Andika utaratibu wa kufungua upya kando ya kanuni ya mzunguko ili hizo mbili zisitengane.
Matokeo yanapaswa kuwa huduma ambayo mwendeshaji anaweza kuieleza: mkondo mmoja wenye mamlaka, kila tukio limewekwa kwenye mzunguko wa maisha, na rekodi inayopatikana bila kukusanya kila faili lenye siri kwenye mwenyeji. Maelezo hayo ni jaribio la kukubalika la ubunifu, na kukagua kabla ya tukio lijalo ni rahisi.