En ale Workaround huet de OpenVPN-Exekutabel soss eng Plaz geréckelt an um urspréngleche Wee eng Shell-Wrapper hannerlooss. Méint méi spéit kënnt en Update, an d'Réckgängigmachen vum Workaround gëtt en Aväisungen-Ratspill dorobber, wéi eng Fichier wierklech de Client ass. Den Numm vum Kommando, den Exekutabel deen am Service konfiguréiert ass an d'Fichierslëscht vum Package selwer kënnen alleguer op verschidden Objete weisen, an een dovun ze reparéieren ouni déi aner gëtt en Host, deen reparéiert ausgesäit an sech méi schlecht behält.

Fänkt mam Wee un, deen de Service start

En Terminal an eng systemd-Unitt léisen Exekutabelen net d'selwecht. D'Shell sicht an engem PATH; d'Unitt nennt e Wee, an drop-in-Iwwerschreiwunge kënnen en ersetzen ouni d'Fichier ze beréieren, déi Dir liest. Dee Phenomeen erkläert de gréissten Deel vun der Duerchernee an dëser Aufgab. Et entscheet och, wat fir eng Fichier Är Reparatur mussen an d'Visée huelen.

Frot d'Unitt, wat se ausféiert, inklusiv den drop-ins déi se änneren, a liest déi resultéierend ExecStart-Zeil anstatt de Fragment, deen Dir als autoritativ ugeholl hutt. Follegt duerno deem Wee duerch all symbolesche Link bis zur finaler Fichier. Eng Wrapper, déi mat engem exec an enger verstoppter Bibliothéik ophält, ass eng üblech Konstruktioun aus dësen alen Korrekturen.

Schreift de geléiste Wee op, ier Dir eppes ännert.

systemctl cat [email protected] | grep -n 'ExecStart'
readlink -f "$(command -v openvpn)"

Vergläicht den Numm vum Kommando mam Servicewee

Déi zwou Äntwerten ënnerscheede sech dacks, an deen Ënnerscheed ass net automatesch e Feeler. E NetworkManager-Plugin kann säin eegene Wee starten, an e Container kann nach een anere mounten.

Wichteg ass ze wëssen, wéi en Eegentümer de Prozess start, dee den Traffic servéiert. Wann d'Unitt /usr/local/sbin/openvpn-wrapper ausféiert, während Är Shell /usr/sbin/openvpn opléist, ännert d'Reparatur vun der zweeter Fichier näischt um Service.

Frot, wéi en Package all Kandidat besëtzt, an entscheet dann, ob d'Fichier vum Package geréiert oder lokal placéiert ass. Eng Fichier ouni besëtzende Package ass eng Fichier, déi een do bewosst dropgesat huet, an et verdéngt en Numm, en Eegentümer an eng Begrënnung, ier se geläscht gëtt. De géigendeel Feeler ass och heefeg: eng Packagefichier mat enger aler gespäicherter Binärdatei iwwerschreiwen, well e Forumsbäitrag déiselwecht Bibliothéik benotzt huet.

Loosst d'Package-Datebank iwwer d'Packagefichiere schwätzen

Wann d'Software aus engem Debian-Package kënnt, kann d'Package-Datebank Iech soen, ob seng Fichieren nach deem entspriechen, wat installéiert gouf. Dat ass eng enk Integritéitsfro, keen Sécherheetsurteel, an den Ënnerscheed ass wichteg, wann Dir entscheet, wat Dir reparéiert. Eng Onstëmmegkeet heescht, datt d'Fichier no der Installatioun geännert gouf, wat Ären alen Workaround oder eng legitim lokal Ännerung kéint sinn. D'Ausgab entscheet net wat, also liest se als Hiwäis an net als Schlussfolgerung.

Féiert d'Verifikatioun aus a liest d'Ausgab, anstatt en eidelt Resultat als Beweis fir eppes ze behandelen.

dpkg -S /usr/sbin/openvpn
dpkg --verify openvpn

Den dpkg-Handbuch dokumentéiert, datt d'Verifikatioun installéiert Fichieren mat lokal opgezeechente Metadaten vergläicht a gespäicherte Prüfsummen notzt, wou se existéieren. Et bemierkt eng geännert Packagefichier, an et kann Iech net soen, ob amplaz eng aner Binärdatei gestart gëtt.

Zeechent den Zoustand op, ier Dir reparéiert

Sammelt de geléisten Startwee, d'Packagebezéiung vun der Fichier, d'Plaz vum Wrapper an de Ännerungsprotokoll, deen en agefouert huet. Kopéiert de Wrapper op eng geschützt Plaz, wann en Integratiounsaarbecht enthält, déi spéider gebraucht gëtt.

Füügt den Inhalt vum Wrapper net an en Supportthread, ier Dir en gelies hutt, well dës Skripte manchmal Umeldungsinformatiounen oder Gateway-Detailer droen.

Zeechent op, wéi eng Profiler de Service benotzt a wien ugeschloss ass, während Dir schafft, well e Neistart vum Tunnel d'Sessioun ka ënnerbriechen, mat där Dir den Host administréiert.

Verifizéiert de Start, a maacht dann de Wrapper fort

Nom Reparatur start de Service a bestätegt, datt de Prozess dee Wee leeft, deen Dir virgesinn hutt. Eng Versiounsufro, déi vun Hand ausgefouert gëtt, beweist datt d'Fichier funktionéiert; et beweist net, datt d'Unitt se benotzt.

Verbindt duerno nees e Client a kontrolléiert, ob de Profil nach authentifizéiert, well en Austausch vun der Binärdatei, deen d'originell Optiounen ignoréiert, wäert op eng Manéier feelen, déi wéi e Zertifikatsproblem ausgesäit.

Maacht de verréckelte Wrapper iwwer deeselwechten Ännerungsprotokoll fort, deen en agefouert huet. Déi fäerdeg Reparatur seet, wéi en Exekutabel leeft, firwat, a wéi eng Fichier geläscht gouf; e Fichiersnumm restauréieren an hoffen ass net dat selwecht.

Ähnlech Artikelen