Firwat d'Verschieben vun engem VPN-Zertifikat säin SELinux-Label brécht
Eng Ëmbenennung behält den Inode a säi Kontext, dofir kann de Modus perfekt sinn an den Déngscht trotzdem refuséieren. Vergläicht dat Tatsächleches mat deem Erwaarten an restauréiert duerno d'Mapping.
Zertifikater kënnen am richtege Verzeechnes stoen, mat liesbarem Modus a Root-Besëtz, an den Déngscht kann trotzdem mellen, datt hien d'Datei net opmaache kann. Op engem SELinux-System weist déi Kombinatioun op ee bestëmmte Mechanismus hin an net op Berechtegungen. D'Label ass mat der Datei gereest, well eng Ëmbenennung keen neien Objet schaaft. Den Inode huet de Sécherheetskontext behalen, deen e um ale Pad hat, an d'Politik fir den neie Pad krut ni d'Geleeënheet, seng eege zouzeuweisen.
Wat eng Ëmbenennung tatsächlech mat engem Label mécht
Eng Datei dréit hire SELinux-Kontext als Attributdaten, déi um Inode hänken. Eng Ëmbenennung bannent engem Dateisystem ännert den Verzeechnes-Antrag an soss näischt, wat séier an atomar ass, an de Grond dofir, datt de Kontext d'Verschieben iwwerlieft. Keng Politik gëtt gefrot, keen Standard gëtt ugewannt a keng Warnung gëtt gedréckt.
Kopéieren hält sech anescht. Eng Kopie schaaft en neien Inode am Zilverzeechnes, an d'Politik weist e Kontext nom Typ vun deem Verzeechnes zou, dofir kritt e kopéierten Zertifikat meeschtens de richtege Label, wärend e verschwetenen falsch bleift. Genee deen eenzegen Ënnerscheed erkläert de gréissten Deel vun der Verwiirung an dëser Zort Ticket.
Verschiebungen tëscht Dateisystemer falen op d'Kopéier-Semantik zréck, dofir kann dee selwechte Kommando op zwou Maschinne sech anescht behuelen, jee nodeem ob /etc op sengem eigenen Volume wunnt. Kontrolléiert dat, ier Dir schléisst, datt d'Instrument onverlässlech ass. Een Bléck op d'Mount-Tabell seet Iech, wéi eng Zort Verschieben Dir gemaach hutt.
Liest den aktuellen Label géint deen erwaarten
Dräi nëmme-Lies-Kommandos beäntweren d'Fro, ouni eppes z'änneren. Den éischten weist, wat d'Datei elo huet, den zweeten mellt, wat d'Politik fir genee dee Pad erwaart, an den drëtten zielt all Datei ënner dem Verzeechnes op, deenen hire Label anescht ass.
ls -lZ /etc/openvpn/client/office-ca.crt
matchpathcon /etc/openvpn/client/office-ca.crt
restorecon -Rn -v /etc/openvpn/client
Dem Prooflaf ass ze vertrauen, well hien all Datei nennt, deenen hire Kontext vun der Politik ofwäicht, an d'System trotzdem onberéiert léisst. Wann d'Zertifikat an där Lëscht erschéngt, hutt Dir d'Diskrepanz fonnt tëscht deem, wat de Pad bedeit, an deem, wat d'Datei behaapt. Wann et net erschéngt, ass de Label schonn dat, wat d'Politik wëllt, an Är Zäit gehéiert soss anzwousch hin.
Korreléiert duerno den Ënnerscheed mat enger tatsächlecher Verweigerung. Eng Net-Iwwereneestëmmung ass Beweis fir ee falsche Label, net de Beweis, datt den Déngscht deswéinst versot huet, an eng Korrektur, déi ouni eng entspriechend Verweigerung am Log ugewannt gëtt, ass eng Viraussetzung mat zousätzleche Schrëtt.
Restauréiert d'Mapping, amplaz eng Ausnam ze erfinden
Fir eng Standardplaz bildet d'Politik de Pad schonn of, dofir wendt restorecon se un an d'Aarbecht ass fäerdeg. Hält de Beräich op dat Verzeechnes, dat Dir reparéiert; d'ganzt Dateisystem nei ze labelen ass lues, stéierend, an et begrueft de urspréngleche Feeler ënner enger ganz grousser Ännerung.
Fir en eegene Verzeechnes zielt d'Reiefolleg, an se ëmzedréien ergëtt e Kommando, deen Erfolleg mellt, während sech näischt ännert. D'Mapping gehéiert an d'Politik, d'Nei-Labelen gehéiert un d'Enn, an de Prooflaf gehéiert virun allebéid. Dee leschten Deel ze iwwersprangen ass de Wee, wéi een Pad, dee ni falsch war, trotzdem nei gelabelt gëtt.
semanage fcontext -a -t openvpn_etc_t '/etc/openvpn/custom(/.*)?'
restorecon -Rv /etc/openvpn/custom
restorecon wendt eng Mapping un; et kann keng erfinden. Wann keng Regel de Pad beschreift, gëtt et näischt z'erëmzerklären, dofir muss d'dauerhaft Mapping virum Nei-Labelen existéieren. Notéiert, wéi eng Konfiguratioun déi Mapping besëtzt, well soss schaaft eng méi spéit Verschieben, eng Pak-Aktualiséierung oder e Nei-Labelen de Feeler erëm, an déi nächst Persoun fänkt bei Null un.
Firwat chcon net d'Léisung ass
chcon schreift e Kontext direkt op d'Datei. Et wierkt direkt an et ass déi mannst dauerhaft Optioun, déi et gëtt, well en Nei-Labelen vum Dateisystem d'Politik erëm uwendt an manuell Ännerungen ouni ze froen ewechgeheit. D'Datei gesäit reparéiert aus an d'Reparatur huet en Ofleefdatum, dat keen opgeschriwwen huet. Wat Dir amplaz wëllt, ass eng Regel, déi de Pad beschreift, sou datt all Datei, déi do ukommt, automatesch déi selwecht Behandlung kritt.
Nach méi schlëmm, et léiert déi falsch Lektioun: déi ënnerluecht Mapping feelt nach ëmmer, dofir kënnt de Feeler Wochen duerno zréck, ouni en offensichtlechen Ausléiser an ouni Erënnerung un de Workaround. Benotzt chcon nëmmen als temporären Experiment fir eng Hypothese ze bestätegen, ersetzt et duerno duerch eng Mapping, déi dat nächst Nei-Labelen iwwerlieft, a kontrolléiert, datt den Ersatz tatsächlech op senger Plaz ass.
Wann de Label richteg ass an den Zougang trotzdem feelt
Fänkt mat den iwwergeuerdneten Verzeechnisser un. D'Duerchgangsberechtegung gëtt op all Komponent vum Pad gepréift, dofir bleift en richteg gelabelt Zertifikat an engem Verzeechnes, an dat den Déngscht net erakann, onliesbar. Souwuel SELinux wéi och déi gewéinlech Berechtegung mussen all Schrëtt erlaben, an dat eng ze reparéieren reparéiert dat anert net.
Kontrolléiert duerno d'Prozess-Identitéit an d'Sandbox vum Déngscht selwer. Eng Eenheet mat enger restriktiver Sandbox kann den Zougang zu enger Datei verweigeren, déi d'Politik gär erlabe géif, an aus der Loglinn gesinn déi zwou Ursaachen identesch aus. Bestätegt, wéi e Prozess tatsächlech freet, net wéien Dir unhëlt, datt e freet.
Denkt drun, datt dontaudit-Reegelen Verweigerungsmessagen ënnerdrécke kënnen, dofir ass e leien Audit-Log e schwaache Beweis an net e Beweis. Wann d'Politik richteg ausgesäit an den Zougang trotzdem feelt, ënnersicht, ier Dir e breede Erlaabnes-Modul generéiert, an deaktivéiert SELinux net, fir d'Symptom verschwannen ze loossen. Béid Ofkierzungen erginn e System, dee schéngt ze funktionéieren, an eng Sécherheetshaltung, déi keen beschreiwe kann. Eng kuerz Ënnersichung ass besser wéi déi zwou.