Kateri binarni program openvpn se izvaja? Preverite pot zagona
Ime ukaza, pot storitve in datoteka paketa so lahko trije različni objekti. Preverite pot zagona, preverite datoteke paketa in nato odstranite ovoj.
Stara rešitev je izvršljivo datoteko OpenVPN premaknila drugam in na prvotni poti pustila shell ovoj. Mesece pozneje pride posodobitev in razveljavitev rešitve postane ugibanje, katera datoteka je v resnici odjemalec. Ime ukaza, izvršljiva datoteka, nastavljena v storitvi, in lasten seznam datotek paketa lahko kažejo na različne objekte, popravilo enega brez drugih pa ustvari gostitelja, ki je videti popravljen in se obnaša slabše.
Začnite s potjo, ki jo zažene storitev
Terminal in enota systemd ne razrešujeta izvršljivih datotek enako. Lupina išče v PATH; enota poimenuje pot, drop-in prepisi pa jo lahko zamenjajo, ne da bi se dotaknili datoteke, ki jo berete. Ta razlika pojasnjuje večino zmede pri tej nalogi. Določa tudi, na katero datoteko mora ciljati vaše popravilo.
Vprašajte enoto, kaj izvaja, vključno z drop-in datotekami, ki jo spreminjajo, in berite nastalo vrstico ExecStart namesto odlomka, ki ga imate za verodostojnega. Nato sledite tej poti skozi morebitno simbolično povezavo do končne datoteke. Ovoj, ki se konča z exec v skrito mapo, je običajna ureditev teh starih popravkov.
Zapišite razrešeno pot, preden karkoli spremenite.
systemctl cat [email protected] | grep -n 'ExecStart'
readlink -f "$(command -v openvpn)"Primerjajte ime ukaza s potjo storitve
Oba odgovora se pogosto razlikujeta in ta razlika ni samodejno napaka. Vtičnik NetworkManager lahko zažene svojo pot, vsebnik pa lahko pripne še eno.
Pomembno je vedeti, kateri lastnik zažene proces, ki streže prometu. Če enota izvaja /usr/local/sbin/openvpn-wrapper, medtem ko vaša lupina razrešuje /usr/sbin/openvpn, popravilo druge datoteke v storitvi ne spremeni ničesar.
Vprašajte, kateremu paketu pripada vsak kandidat, nato odločite, ali datoteko upravlja paket ali je nameščena lokalno. Datoteka brez lastniškega paketa je datoteka, ki jo je nekdo namerno postavil tja, in si zasluži ime, lastnika in razlog, preden je izbrisana. Tudi nasprotna napaka je pogosta: prepisovanje datoteke paketa s staro shranjeno binarno datoteko, ker je objava na forumu uporabila isto mapo.
Pustite podatkovni bazi paketov, da govori o datotekah paketa
Ko programska oprema izhaja iz paketa Debian, vam lahko podatkovna baza paketov pove, ali se njegove datoteke še ujemajo z nameščenim. To je ozko vprašanje celovitosti, ne varnostna sodba, in razlika je pomembna, ko se odločate, kaj popraviti. Neujemanje pomeni, da se je datoteka po namestitvi spremenila, kar je lahko vaša stara rešitev ali zakonita lokalna sprememba. Rezultat ne odloči, katera, zato ga berite kot namig in ne kot sklep.
Zaženite preverjanje in berite rezultat, namesto da bi prazen izid imeli za dokaz česarkoli.
dpkg -S /usr/sbin/openvpn
dpkg --verify openvpnPriročnik dpkg dokumentira, da preverjanje primerja nameščene datoteke z lokalno zapisanimi metapodatki in uporablja shranjene kontrolne vsote, kjer obstajajo. Opazi spremenjeno datoteko paketa in ne more povedati, ali se namesto nje zažene druga binarna datoteka.
Zabeležite stanje pred popravilom
Zberite razrešeno pot zagona, razmerje datoteke do paketa, lokacijo ovoja in zapis spremembe, ki ga je uvedel. Kopirajte ovoj na zaščiteno mesto, če vsebuje integracijsko delo, ki bo potrebno pozneje.
Ne prilepite vsebine ovoja v nit za podporo, preden je ne preberete, saj te skripte včasih nosijo poverilnice ali podrobnosti o prehodu.
Zabeležite, katere profile uporablja storitev in kdo je povezan, medtem ko delate, saj lahko ponovni zagon predora prekine sejo, s katero upravljate gostitelja.
Preverite zagon in nato odstranite ovoj
Po popravilu zaženite storitev in potrdite, da proces teče po predvideni poti. Ročno izvedena poizvedba o različici dokaže, da datoteka deluje; ne dokaže, da jo enota uporablja.
Nato znova povežite odjemalca in preverite, ali se profil še vedno overi, saj bo zamenjava binarne datoteke, ki ignorira prvotne možnosti, spodletela tako, da bo videti kot težava s potrdilom.
Odstranite premaknjeni ovoj prek istega zapisa spremembe, ki ga je uvedel. Dokončano popravilo navaja, kateri izvršljivi program teče, zakaj in katera datoteka je bila odstranjena; obnoviti ime datoteke in upati ni isto.