OpenVPN telaq imma ma stampa xejn: iċċekkja log-append l-ewwel
Is-skiet waqt tnedija manwali mhuwiex falliment. Aqra log u log-append fil-profil mgħobbi, imbagħad qabbel il-fajl u l-marki tal-ħin tiegħu mal-proċess.
Tibda OpenVPN minn shell b'fajl ta' konfigurazzjoni, u t-terminal jibqa' hemm mingħajr ebda output. L-ebda banner, l-ebda żball, l-ebda prompt. L-istint huwa li t-tnedija falliet, allura tibda kopja oħra, imbagħad oħra, u l-magna tispiċċa b'diversi istanzi nofshom konfigurati. Qabel dan kollu, iċċekkja l-profil għal direttiva li diġà ddevjat il-log x'imkien ieħor. Is-skiet huwa proprjetà tal-konsola, mhux tal-proċess.
Is-skiet għandu żewġ spjegazzjonijiet differenti ħafna
L-ewwel waħda hija li l-proċess qed jaħdem sew u qed jikteb f'fajl li int ma qedx tara. It-tieni waħda hija li ħareġ mill-ewwel b'żball irreġistrat fl-istess fajl.
It-tnejn iħallu terminal vojt, u mistoqsija waħda tifridhom: hemm proċess issa, u x'inhu fil-fajl li ntgħidlu jikteb. Wieġeb dan qabel ma terġa' tmiss il-konfigurazzjoni. It-tnedija mill-ġdid biex tikseb output hija kif żewġ istanzi jispiċċaw jiġġieldu fuq apparat tat-tunnel wieħed u l-istess port, li jipproduċi żbalji li m'għandhom xejn x'jaqsmu mal-problema oriġinali.
Sib id-direttiva, imbagħad sib il-proċess.
ps -o pid,args= -C openvpn
grep -nE '^\s*(log|log-append|cd|daemon|verb)\b' /etc/openvpn/server/server.confSib id-destinazzjoni li juża l-proċess li qed jaħdem
Aqra l-profil li l-proċess fil-fatt telaq bih, mhux dak li editjajt. Istanza mmexxija mis-servizz normalment tgħabbi triq differenti u taħdem f'direttorju tax-xogħol differenti, allura isem ta' fajl relattiv jiġi riżolt f'post li ma stennejtx.
Direttiva cd espliċita tagħmel dik id-differenza aktar qawwija, għax it-triq relattiva tiċċaqlaq mal-bidla fid-direttorju. Jekk wiret din il-konfigurazzjoni, il-fajl jista' jkun f'post li ħadd ma jfittex issa.
Qabbel il-ħin tal-modifika tal-fajl mal-mument li tnedijt. Log tal-ġimgħa li għaddiet huwa evidenza dwar il-ġimgħa li għaddiet. Imbagħad aqra l-aħħar linji tal-fajl li nbidel, u qis dak kollu li hemm hemmhekk bħala l-messaġġ tat-tnedija li kont qed titlef.
log kontra log-append: evidenza u tħassir
log-append iżżid ma' dak li diġà hemm fil-fajl. log tiftaħ il-fajl għall-kitba u tqattgħu, allura li tbiddel bejn it-tnejn jista' jħassar il-ġirja li kont se taqra.
Jekk xi ħadd bidel id-direttiva waqt id-debugging, l-evidenza preċedenti diġà ntilfet u d-daqs tal-fajl jidher suspettatament żgħir. Dan tajjeb li tkun tafu qabel tqabbel żewġ ġirjiet u tikkonkludi li xi ħaġa nbidlet. Ħassar log apposta, jew żommu, imma kun af liema għamilt. Evidenza li neħħejt apposta hija aktar faċli biex tirraġuna dwarha milli evidenza li tlift b'inċident.
L-ebda għażla ma toħloq direttorji ġenituri nieqsa, u l-ebda waħda ma tagħti aċċess permezz tal-permessi tas-sistema tal-fajls jew sandbox tas-servizz. Triq li tidher tajba fil-konfigurazzjoni xorta tista' ma tkunx kittieba mill-kont li jaħdem bih id-daemon, u f'dak il-każ id-daemon jista' jonqos qabel ma jirrapporta xejn. Iċċekkja jekk id-direttorju jeżistix u min hu s-sid tiegħu qabel ma tassumi li l-isem tal-fajl hija l-problema.
Meta wrapper tas-servizz jaqbad l-output
Taħt systemd, l-output standard u l-iżbalji jmorru fil-ġurnal sakemm direttiva espliċita tal-fajl ma tieħux preċedenza, u wrapper tal-fornitur jista' jaqbadhom x'imkien ieħor għal kollox.
Huwa għalhekk li l-istess profil iġib ruħu b'mod differenti minn shell u minn unit. L-ambjent tal-unit, id-direttorju tax-xogħol tiegħu u l-flussi standard tiegħu kollha jvarjaw mill-shell interattiv tiegħek. Triq relattiva tista' tiġi riżolta f'kuntest wieħed u ma tasal imkien fl-ieħor. Aqra d-definizzjoni tal-unit meta t-tnejn ma jaqblux, mhux il-profil.
Qabbel iż-żewġ arranġamenti tat-tnedija minflok tikkonkludi li wieħed minnhom huwa miksur. Aqra l-linja tal-kmand tal-unit u l-ambjent tiegħu, imbagħad aqra l-ġurnal għall-istess tieqa ta' żmien. Jekk il-wrapper iddevja l-output għall-fajl tiegħu stess, dak il-fajl issa huwa l-log tiegħek, u d-direttivi OpenVPN mhumiex rilevanti għal fejn marru l-messaġġi.
Għolli l-verbosità biss wara li tkun tista' taqraha
Li tgħolli l-verbosità qabel issib id-destinazzjoni sempliċement tipproduċi aktar test f'post li m'intix tħares lejh.
Ladarba tkun taf fejn jinżel l-output, livell moderat juri l-profil jiġi pparsjat u l-konnessjoni tiġi ppruvata. Tnejn jew tlieta huma biżżejjed għal problema tat-tnedija. Livelli ogħla jaqilgħu posthom meta l-falliment ikun dettall tan-negozjazzjoni, u wkoll jagħmlu l-fajl jikber malajr.
Imbagħad aqra l-iżball attwali. Terminal sieket ma jipprova xejn dwar jekk it-tunnel qamx, u l-falliment irreġistrat fil-fajl huwa dak li jistħoqqlu jissewwa.