OpenVPN ekfunkciis sed nenion presis: unue kontrolu log-append
Silento ĉe permana lanĉo ne estas fiasko. Legu log kaj log-append en la ŝarĝita profilo, poste kongruigu la dosieron kaj ĝiajn tempomarkojn kun la procezo.
Vi lanĉas OpenVPN el ŝelo kun agorda dosiero, kaj la terminalo sidas sen ajna eligo. Neniu rubando, neniu eraro, neniu invito. La instinkto diras, ke la lanĉo fiaskis, do vi lanĉas alian kopion, poste alian, kaj la maŝino finiĝas kun pluraj duone agorditaj momentoj. Antaŭ ĉio tio, kontrolu la profilon por direktivo, kiu jam alidirektis la protokolon aliloken. Silento estas eco de la konzolo, ne de la procezo.
Silento havas du tre malsamajn klarigojn
La unua estas, ke la procezo funkcias bone kaj skribas al dosiero, kiun vi ne observas. La dua estas, ke ĝi tuj finiĝis kun eraro registrita en tiu sama dosiero.
Ambaŭ lasas malplenan terminalon, kaj unu demando apartigas ilin: ĉu ekzistas procezo nun, kaj kio estas en la dosiero, al kiu ĝi devis skribi. Respondu tion antaŭ ol tuŝi la agordon denove. Relanĉi por akiri eligon estas kiel du momentoj ekbatalas pri unu tunela aparato kaj la sama pordo, kio produktas erarojn tute senrilatajn al la origina problemo.
Trovu la direktivon, poste trovu la procezon.
ps -o pid,args= -C openvpn
grep -nE '^\s*(log|log-append|cd|daemon|verb)\b' /etc/openvpn/server/server.conf
Trovu la celon, kiun uzas la kuranta procezo
Legu la profilon, per kiu la procezo efektive lanĉiĝis, ne tiun, kiun vi redaktis. Servo-administrata momento kutime ŝarĝas alian vojon kaj kuras en alia labordosierujo, do relativa dosiernomo solviĝas ie, kie vi ne atendis.
Klara direktivo cd akrigas tiun distingon, ĉar la relativa vojo moviĝas kun la dosieruja ŝanĝo. Se vi heredis ĉi tiun agordon, la dosiero eble kuŝas ie, kie neniu nun serĉus ĝin.
Komparu la modifan tempon de la dosiero kun la momento, kiam vi lanĉis. Protokolo de la pasinta semajno estas pruvo pri la pasinta semajno. Poste legu la lastajn liniojn de la dosiero, kiu ŝanĝiĝis, kaj traktu tion, kio estas tie, kiel la startmesaĝon, kiun vi maltrafis.
log kontraŭ log-append: pruvo kaj forviŝo
log-append aldonas al tio, kio jam estas en la dosiero. log malfermas la dosieron por skribi kaj fortranĉas ĝin, do ŝalti inter la du povas forviŝi la rulon, kiun vi ĵus volis legi.
Se iu ŝanĝis la direktivon dum sencimigado, la antaŭa pruvo jam malaperis kaj la grando de la dosiero aspektos suspektinde malgranda. Tion valoras scii antaŭ ol kompari du rulojn kaj konkludi, ke io ŝanĝiĝis. Forviŝu protokolon intence aŭ konservu ĝin, sed sciu, kiun vi faris. Pruvo, kiun vi intence forigis, estas pli facile pripensenda ol pruvo, kiun vi hazarde perdis.
Neniu el la du opcioj kreas mankantajn patrajn dosierujojn, kaj neniu donas aliron per dosiersistemaj permesoj aŭ servo-sandbox. Vojo, kiu aspektas ĝusta en la agordo, povas tamen esti neskribebla por la konto, sub kiu la demono kuras, kaj tiam la demono povas fiaski antaŭ ol ĝi povas raporti ion ajn. Kontrolu, ĉu la dosierujo ekzistas kaj kiu posedas ĝin, antaŭ ol supozi, ke la dosiernomo estas la problemo.
Kiam servo-ĉirkaŭaĵo kaptas la eligon
Sub systemd, la norma eligo kaj eraro iras al la ĵurnalo krom se klara dosiera direktivo havas prioritaton, kaj vendista ĉirkaŭaĵo povas kapti ilin tute aliloke.
Tial la sama profilo kondutas malsame el ŝelo kaj el unuo. La medio de la unuo, ĝia labordosierujo kaj ĝiaj normaj fluoj ĉiuj diferencas de via interaga ŝelo. Relativa vojo povas solviĝi en unu kunteksto kaj alveni nenie en la alia. Legu la difinon de la unuo, kiam la du malkongruas, ne la profilon.
Komparu la du lanĉajn aranĝojn anstataŭ konkludi, ke unu el ili estas rompita. Legu la komandlinion de la unuo kaj ĝian medion, poste legu la ĵurnalon por la sama tempa fenestro. Se la ĉirkaŭaĵo alidirektas eligon al sia propra dosiero, tiu dosiero nun estas via protokolo, kaj la direktivoj de OpenVPN estas nerelevantaj por kie iris la mesaĝoj.
Pliigu la detalecon nur post kiam vi povas legi ĝin
Pliigi la detalecon antaŭ ol trovi la celon nur produktas pli da teksto ie, kien vi ne rigardas.
Post kiam vi scias, kien la eligo alvenas, modera nivelo montras, ke la profilo estas analizata kaj ke oni provas la konekton. Du aŭ tri sufiĉas por starta problemo. Pli altaj niveloj meritas sian lokon, kiam la fiasko estas detaleto de intertraktado, kaj ili ankaŭ igas la dosieron rapide kreski.
Poste legu la realan eraron. Silenta terminalo pruvas nenion pri tio, ĉu la tunelo ekfunkciis, kaj la fiasko registrita en la dosiero estas tiu, kiun valoras ripari.