De VPN-knoppe wurket foar de administraasje en mislearret foar alle oaren, dat immen foeget in rigel ta oan sudoers. Dy rigel libbet meastentiids langer as it probleem dat er oplosse moast, en hy ferlient faak mear as de knoppe nedich hat. Foardat jo it belied bewurkje, kontrolearje oft de stipe eigner fan de ferbining it wurk al dwaan kin. De trije betingsten hjirûnder beslisse oft sudo hielendal belutsen is.

Betingst 1: de stipe eigner kin it sûnder sudo dwaan

Op de measte Linux-buroblêden hat de netwurkbehearder al eigner fan VPN-ferbiningen, en syn autorisaasje giet fia polkit ynstee fan sudo. In brûker dy't tastien is in ferbining op te bringen, kin dat fan de opdrachtline ôf dwaan sûnder ienige root-regel. Kontrolearje wat de behearder tastiet foardat jo oannimme dat de knoppe privileezje nedich hat. As it antwurd ja is, dan lost de feroaring yn sudoers in probleem op dat net bestiet.

nmcli connection show
nmcli connection up "Work VPN"

As de behearder wegeret, lês wêrom: in ûntbrekkende polkit-regel, in ferbining fan in oare brûker of in profyl dat opslein is dêr't de brûker it net lêze kin. Elk fan dy hat in stipe oplossing dy't smeller is as in sudo-regel. It ferheegjen fan privileezjes is it lêste middel, net it earste.

Betingst 2: de regel neamt ien útfierber bestân en syn arguminten

As sudo echt nedich is, moat de regel de krekte opdracht neame en, wêr't kin, de arguminten dy't er brûke mei. In regel dy't in brûker in omhullingsskript útfiere lit, is inkeld sa feilich as de rjochten fan dat skript, want de brûker kin bewurkje wat root útfiere sil. In regel mei in wildkaart nei de opdracht is itselde probleem yn koartere foarm.

sudo -l -U alice
ls -l /usr/local/sbin/vpn-up

Kontrolearje elk paad yn 'e opdrachtketen: it binêre bestân, it skript dat it opropt, it konfiguraasjebestân dat it lêst en elke map dêr tusken. As ien fan harren troch de brûker skreaun wurde kin, is de beheinde regel yn 'e praktyk ûnbeheind root. Arguminten binne ek fan belang, want in opdracht dy't in konfiguraasjepaad oannimt, kin rjochte wurde op in bestân dat de brûker kontrolearret. Skriuw de regel foar de operaasje, net foar de knoppe.

Stop as de opdracht in bestân nedich hat dat de brûker kontrolearret om te wurkjen. Dan is it ûntwerp ferkeard, en gjin sudoers-sintaksis sil it feilich meitsje.

Betingst 3: it hiele belied wurdt parsearre, net allinnich jo rigel

Falidearje mei de bewurker dy't it bestân slút en de sintaksis kontrolearret, en falidearje it gearstalde belied ynstee fan in fragmint. In bestân dat op himsels parsearret, kin noch altyd de ynfoegfolchoarder brekke of in regel dûbelje op in manier dy't gedrach feroaret.visudo-hânlieding dokumintearret sawol de slútende bewurker as de modus allinnich-kontrôle dy't hjir brûkt wurdt.

sudo visudo -c
sudo visudo -cf /etc/sudoers.d/vpn-launcher

De kontrôle rapportearret it bestân en de rigel as it mislearret, en dat rapport is it nuttige diel. Reparearje de bedoelde feroaring fia de bewurker ynstee fan in bekend flater mei geweld op te slaan, want in brutsen belied kin elke administrateur tagelyk bûten slute. Bestannen yn 'e ynfoegmap hawwe ek it eigendom en de modus nedich dy't de hânlieding freget, oars wurde se negearre of wegere. Sintaksis is mar de earste poarte: nei't dy slagge is, lês de regel wer en freegje wat er wier tastiet.

Stop as de iennichste manier om de feroaring wurkje te litten is de sintaksiskontrôle út te skeakeljen. Dat is gjin belied, it is in ûnderbrekking dy't op in werstart wachtet.

Herstel: hâld in sesje dy't noch wurket

Foardat jo bewarje, soargje derfoar dat in autorisearre administraasjesesje al iepen is en dat der in twadde paad yn 'e masine bestiet. In sudoers-flater kin jo it fermogen ûntnimme om it te reparearjen, en in knoppe op it buroblêd is dat risiko net wurdich. As sudo al brutsen is, brûk it dokumintearre herstelpaad fan it systeem ynstee fan ien te ymprovisearjen.

sudo -n true
id

Alternativen lykas pkexec hingje fan har eigen ynstallaasje en belied ôf, dat se binne gjin garandearre twadde root-fraach. Hâld lokale autorisaasje ek apart fan it leverjen fan it VPN-geheim: in sudo-regel kin in ôfwêzige geheimagent net ûntslute, en hy foldocht net oan 'e MFA fan 'e poarte. Test nei de korreksje it normale akkount dat allinnich de bedoelde operaasje docht, en brûk dan de gewoane kontrôles fan 'e behearder.

It beslút einiget as jo sizze kinne hokker betingst sudo rjochtfeardige, wat de regel neamt, dat it hiele belied parsearret, en hoe't jo herstelle soene as dat net sa wie. In privileezjearre lansearder dy't jo adminstrative tagong kostet, is in minne ruil, en hy is meastentiids te foaren kommen.

Relatearre artikelen