OpenVPN ræsist ekki án villu? Skoðaðu journalið
Hljóðlaust brottfall á Ubuntu þýðir venjulega að skilaboðin fóru annað eða að einingin rann aldrei. Athugaðu fyrst heiti tilviksins, journalið og tvíundarskrána.
Skipunin skilar sér, þjónustan birtist sem mistókst, og ekkert sem líkist skýringu nær til skjáherbergisins. Þessi þögn er einkennið sem fólk lýsir sem „OpenVPN ræsist ekki“, og það þýðir næstum aldrei að forritið hafi dáið án þess að segja neitt. Það þýðir að skilaboðin fóru á rás sem þú varst ekki að lesa, eða að það sem þú ræstir var ekki það sem þú stilltir. Hægt er að greina bæði tilföllin á undir einni mínútu þegar þú hættir að líta á sniðið sem gruninn.
Fjórir staðir gleypa úttakið: journal einingarinnar, viðbótin sem á tenginguna, hinn endi göngunnar og önnur tvíundarskrá en sú sem þú heldur að sé í gangi. Hver hefur sína eigin prófun.
Þögn þýðir að þú varst ekki að fylgjast með réttu rásinni
Kall í forgrunni prentar á skjáherbergið þitt. Eining prentar í journal, og misheppnuð eining getur hætt áður en hún skrifar nokkuð ef bilunin er í hvernig hún var ræst en ekki í því sem henni var sagt. Þessi greinarmunur skiptir máli: engin færsla í journal þýðir að ferlið rann aldrei í raun, en ein færsla og svo brottfall þýðir að það rann og hafnaði einhverju.
systemctl status openvpn-client@office
journalctl -u openvpn-client@office -b --no-pager
Bættu við systemctl show -p Result -p ExecMainStatus openvpn-client@office til aðgreina hreint brottfall frá merki. Staða 1 með Result=exit-code er ákvörðun forritsins; Result=signal eða tímatakmörk benda frekar á umhverfið, og engin sniðbreyting mun breyta því. Skráðu bæði gildin áður en þú endurræsir eitthvað, því endurræsing hreinsar það skammtímaástand sem framleiddi þau.
Heiti tilviksins er hluti af slóðinni
Pökkunareining sniðsins tekur ekki skráarslóð. Hún tekur heiti tilviks, og það heiti er bætt við möppu til að finna sniðið: office leysist í /etc/openvpn/client/office.conf í Debian- og Ubuntu-pökkuninni. Skrá að nafni office-v2.conf sem ræst er sem @office er aldrei lesin, og einingin hættir hljóðlega því frá hennar sjónarhóli var ekkert að gera. Leitarmappan er mismunandi eftir biðlara- og þjónustustillingu, svo sama mistökin benda á allt annan stað þegar þú skiptir um snið.
Þetta misræmi er algengasta uppspretta hljóðlausu bilunarinnar, og það er ósýnilegt í sniðinu því sniðið er í lagi. Listaðu það sem er í raun til og berðu saman heitin tvö staf fyrir staf, þar á meðal hvaða viðbót sem pökkunin væntir.
ls -l /etc/openvpn/client/
systemctl list-units 'openvpn*' --all
Ef einingin er virkjuð en ekkert tilvik er skráð gæti virkjunin sjálf vísað á heiti sem var endurnefnt síðar. Að virkja rétta tilvikið aftur er yfirleitt nóg, og það er þess virði að eyða gömlu einingarskránni sem eftir verður svo hún rugli ekki næsta mann. Eftirskilin einingarskrá er lítill hlutur sem kostar einhvern klukkustund síðar.
Þegar viðbótin á gönguna sér skjárinn ekkert
Tenging sem ræst er úr skjáborðsforritinu er í eigu NetworkManager, og OpenVPN-úttak hennar fer í journal þeirrar þjónustu frekar en í skel sem þú hefur opna. Að keyra biðlarann í höndunum og sjá ekkert er við eiga í því fyrirkomulagi, því ferlið sem keyrt er í höndunum er ekki það sem ber tenginguna.
Leitaðu í journal að þjónustunni sem á hana, endurtaktu síðan þáttunina með þeirri smáatriðamennsku sem þú getur lesið. Skipanirnar tvær hér að neðan skoða mismunandi eigendur sömu bilunar.
journalctl -b -u NetworkManager --no-pager | grep -i -A3 openvpn
openvpn --config /etc/openvpn/client/office.conf --verb 4 --log /tmp/ovpn.log
Sjálfstæð keyrsla er til að lesa skilaboð, ekki til að koma í stað stýrðu tengingarinnar, og þær tvær eru ólíkar eftir það: DNS-samþætting, slóðir og líftími tilheyra viðbótinni. Að laga þáttunarvillu í sjálfstæðu keyrslunni lagar ekki sjálfkrafa nafnaupplausnina þegar forritið tekur við, svo haltu athugununum tveimur aðskildum.
Tvær tvíundarskrár, eitt PATH
Handbyggt uppsetning undir /usr/local vinnur við skeljarkall, því /usr/local/sbin kemur á undan /usr/sbin í sjálfgefnu Ubuntu PATH. Eining notar ekki PATH-ið þitt; hún keyrir algildu slóðina sem skrifuð er í ExecStart. Þannig geta útgáfan sem virkar í skjáherberginu þínu og útgáfan sem bregst sem þjónusta verið sannarlega mismunandi forrit.
Berðu þær saman áður en þú byggir eitthvað upp að nýju. Þriðja skipunin er sú sem ræður rökunum.
command -v openvpn
whereis openvpn
systemctl cat openvpn-client@office | grep ExecStart
Enn ein umhverfismunurinn leynist á sama stað. Pökkunareining treystir á keyrslumöppu undir /run sem systemd býr til fyrir hana; handskrifuð staðgengilseining sem sleppir þeirri stillingu getur brugðist áður en hún opnar eina skrá, og bilunin lítur út eins og almenn synjun án nokkurra OpenVPN-skilaboða.
Bilanir sem biðlarinn getur ekki tilkynnt
Sumar niðurstöður ráðast í fjarlæga endanum. Gátt sem svarar með HTTP-stöðu og lokar tengingunni hefur sagt þér frá eigin ástandi, og næsta gagnlega skref er logg hennar eða reikningurinn bak við skírteinið frekar en staðbundnar skrár þínar. Ekkert staðbundið er bilað í þessari atburðarás, og að breyta sniðinu til að bæta upp gerir næstu greiningu erfiðari. Lestu það logg áður en þú snertir stillingar biðlarans.
Annað hljóðlaust tilfelli er biðlari sem virkar rétt. Göng í biðlarastillingu hlusta aldrei á port, svo prófun sem væntir opins hlustanda tilkynnir ekkert og lítur út eins og bilun. Staðfestu hvaða stillingu þú ræstir áður en þú dregur ályktun af tómum portlista.
Farðu í gegnum lögin í réttri röð: er einingin til og er heiti tilviksins rétt, náði eitthvað í journal eða skrána --log, hver tvíundarskrá og snið rann í raun, og er bilunin staðbundin eða fjarlæg. Hvert svar fjarlægir eitt lag. Að byrja á sniðinu þýðir að endurskrifa skrá sem kann að hafa aldrei verið opnuð.