Logrotasjon giet op in foarsisbere manier stikken: trije komponinten miene elk dat se it bestân besitte, en it resultaat is in rotearre log dy't trochgroeit wylst de nije leech bliuwt. De daemon hâldt in deskriptor, logrotate fernijt it paad, en rsyslog skriuwt earne hiel oars. Kies ien skriuwer en ien rotearder foardat jo noch in regel op 'e stapel lizze. De checklist hjirûnder giet yn dy folchoarder, om't elke lettere stap dêrfan ôfhinget.

Beslis wa't it bestân skriuwt

Twa ûntwerpen binne legit. Yn it earste skriuwt it VPN-proses sels in bestân fia syn eigen log- of log-append-opsje. Yn it twadde stjoert it records nei de systeemlogger en beslút rsyslog of journald wêr't se telâne komme.

It binne alternativen, gjin lagen. In host dy't beide oanset, einiget mei twa bestannen dy't net oerienkomme, en it bestân dat jo lêze is faak it ferâldere. Kies it paad mei opset sin en ferwiderje dan de oare skriuwer.

Lês de effektive tsjinstkonfiguraasje foardat jo wat feroarje, ynklusyf drop-ins dy't it unit-bestân oerskriuwe kinne. In rjochtline yn it profyl dat jo bewurke hawwe is gjin bewiis dat it dy is dy't it draaiende proses laden hat. Fergelykje de unit mei de arguminten fan it proses, en dêrnei mei de bestannen dy't it echt iepene hat.

Neam de daemon sadat it filter smel wêze kin

Op it syslog-paad jouwe jo de daemon in aparte identiteit en filterje dêrop. In regel dy't oerienkomt mei de programmanamme fan dit VPN-eksimplaar hâldt syn records bûten in dield bestân wêrfan't it bewaropolityk by eat oars heart.

Smelle regels meitsje ek de folgjende fraach antwurdber: hokker tsjinst hat dizze rigel makke? In filter dy't oerienkomt mei alles mei it wurd VPN deryn sammelet graach it ferkear fan in twadde tunnel en ferfeget beide. Kom oerien mei de krekte identifikaasje dy't de unit oan de logger jout.

Slút de regel nei de aksje, sadat de records net ek nei de standertbestimming trochfalle. Dûbele rigels yn twa bestannen lykje op in logfout en binne eins in ûntbrekkende stop. Dy iene weilitting ferdûbelet ek de skiifkosten fan it bewaropolityk.

Rotearje sûnder de deskriptor te ferliezen

As de daemon it bestân skriuwt, fernijt logrotate it paad, mar it proses hâldt syn iepen deskriptor. Nije records geane troch yn it fernijde bestân oant eat it proses twingt it oarspronklike paad wer te iepenjen; dêrom kin in rotaasje wurkje lykje wylst it nije bestân leech bliuwt.

De oplossing is in postrotate-aksje dy't it dokumintearre werlaad- of werstartgedrach fan 'e tsjinst ôfstekt. In sinjaal nei de logger stjoere is in hiel oare aksje en docht neat foar in daemon dy't syn eigen bestân hâldt.

Wêr't weriepenjen ûnmooglik is, is copytruncate it efterfal: kopiearje it bestân en besnij it dan op plak. It hâldt de deskriptor jildich tsjin it ferlies fan alles wat tusken de kopy en de besnijing skreaun wurdt, dus it is in ruil, net in oplossing. Under lading kin dy kleau krekt de flater opslokke dy't jo besykje te fangen.

Kies ien fan 'e twa per bestân en skriuw de kar op, want se op itselde paad minge jout kleauwen dy't letter min ta te skriuwen binne. In lêzer dy't beide patroanen yn ien map fynt, kin net sizze hokker autoritatyf is.

Set bewarjen ôf fan it ynsidintfinster

Bewarjen, kompresje en maksimale grutte moatte folgje út hoe fier yn 't ferline jo echt ûndersykje. In finster fan sân dagen mei kompresje en in gruttelimyt is in ridlik útgongspunt foar in protte útrullingen; in getal dat út in hantlieding kopyeare is, is dat net.

Hâld it belied op ien plak. As logrotate it bestân rotearret en rsyslog docht dat ek, dan wint de twadde rotaasje en it nammeskema fan 'e earste oerlibbet as rommel. Kies de eigner, skeakelje de oare rotaasje út, en notearje dy beslissing neist it belied.

De rsyslog-dokumintaasje behannelt syn rûteleas- en aksjemodel, wylst de dokumintaasje fan 'e OpenVPN-tsjinst gesachhawwend bliuwt foar de eigen logopsjes fan 'e daemon. Gjin fan beide beslút jo bewaropolityk foar jo.

Test ien rotaasje en ien nij barren

Twang ien inkele rotaasje en meitsje dan ien nij barren, lykas in mislearre autentikaasje. Befêstigje dat it nije record yn it nije bestân ferskynt en dat it âlde bestân opholden is mei groeien.

Besjoch ek de rjochten op it nije bestân, want in rotaasje dy't it mei in oare eigner wer oanmakket, brekt de skriuwer by de folgjende skriuw en jout in kleau dy't op in crash liket. Fergelykje de eigner en modus mei it tsjinstaccount foardat jo fuortgeane. Befêstigje dêrnei dat it komprimearre argyf lêsber is, want in argyf dat nimmen iepenje kin is gjin bewarjen. In flugge lêzing fan it nijste record yn it âlde bestân bewist sawol de kompresje as de rjochten.

Einigje troch de eigner fan elke stap fêst te lizzen: hokker komponint skriuwt, hokker rotearret, en wêr't it bewaropolityk wennet. Dy notysje makket it folgjende logynsidint in kontrôle fan fiif minuten ynstee fan in middei riddenearjen hokker laach de rigel falle liet.

Relatearre artikelen