Edukiontzi berrien erregistroek maiz Read-only file system kexa batekin amaitzen dute /proc/sys/net/ipv4/route/flush-i buruz, eta lerro horri tunel erabat osasuntsu baten errua egozten zaio. Atzeko idazketak jada ezer erabilgarririk egiten ez duen kernel-sarrera bat du helburu, IPv4 ibilbide-cachea desagertu baita. Edukiontzi barruan /proc/sys irakurketa-soilean muntatzen da, beraz berbideratzea ukatzen da balio bat iritsi aurretik eta shellak ukapen hori inprimatzen du. Funtzionatzen duen tunel batek abisu hau inprima dezake lerro zaharra scriptean dagoen bitartean, eta --privileged-ek ez du idazketa inoiz esanguratsu egiten.

Zer garbitzen saiatzen zen scripta

Konexio-script zaharrek cache-garbiketa batekin amaitzen zuten: balio bat kernel-kontrol fitxategi batean idatzi eta IPv4 pilarri bere bideratze-cachea botatzeko eskatu, tunel-ibilbide berri bat aukeratu zedin sarrera zaharkituak iraungitzearen zain egon gabe. Fitxategia /proc/sys/net/ipv4/-ren azpian helbideratzen zen, eta horrek eragiketa shell berbideratze bihurtzen zuen, eta ez bideratze-komando. 3.6 kernelek cache hori kendu zuen, eta harekin purgaren existentzia-arrazoia. Oraingo datu-bideko ezer ez da idazketa horren mende.

Sarrera bera idazketa-soileko fitxategi zaharkitu gisa bizirik atera zen, beraz oraindik bertan idazten duen script batek benetako bide bat eta benetako baimen-egiaztapen bat ukitzen ditu. Ostalarian idazketak arrakasta ematen du eta ez du ezer aldatzen. Edukiontzian berbideratze berak /proc/sys irakurketa-soilekoa jotzen du eta EROFS-rekin huts egiten du; shellak irakurketa-soileko fitxategi-sistemaren mezu gisa inprimatzen du. Bidea benetan falta den kernel-etan, testua No such file or directory bihurtzen da, eta ondorioa ez da aldatzen.

Bi erroreek gauza desberdinak esaten dituzte, eta aldea argi mantentzea merezi du. Read-only file system esan nahi du kernelek sarrera bat ukitu eta idazketa ukatu zuela; No such file or directory esan nahi du sarrera desagertu egin dela. Mezuek ez dute tunel-gailuaz, ibilbideez edo izen-ebazpenaz ezer jakinarazten, beraz batek ere ezin du pribilegio gehiago justifikatu.

Ordenak egiten du mezua kausala dirudiela. Konexio-script batek ibilbideak instalatzen ditu, interfazearen egoera aldatzen du eta izen-ebazpena berridazten du amaieran garbiketa ukitu aurretik, beraz inprimatutako azken lerroa jendeak aipatzen duen lerroa da, garrantzizko urrats bakoitzak arrakasta eman badu ere. Abisu hau inprimatzen duen bitartean ezartzen eta trafikoa eramaten duen tunel batek goiko mekanismoarekin bat egiten du zehazki.

Egiaztatu muntaketa eta ibilbidea pribilegioa gehitu aurretik

Hiru irakurketak abisu kosmetikoa benetako hutsegite batetik bereizten dute: instalatutako scriptak lerroa oraindik daraman, /proc/sys nola muntatzen den eta aplikazioaren trafikoa benetan nora doan. Edukiontziaren izen-espazio berean edo abisua agertu zen ostalarian exekutatu, loturarik gabeko makina batean egindako egiaztapenak beste galdera bati erantzuten baitio.

grep -n 'ipv4/route/flush' /usr/share/vpnc-scripts/vpnc-script
findmnt -no OPTIONS /proc/sys
ip -4 route get 10.20.5.10

grep-en erantzuna dirudiena baino ahulagoa da, asmatze batek lerroa badagoela frogatzen baitu, ez babesik gabe exekutatzen dela; mantendutako script batek idazketa gainditzen duen babes baten barruan eraman dezake. findmnt -no OPTIONS /proc/sys-k muntaketa zuzenean ebazten du, eta irteera horretako ro-k puntu horretatik beherako idazketa oro ukatzen dela esan nahi du, scriptak edozer eginda ere. Ondoren, ibilbide-kontsultak erakusten du aplikazioak behar duen helmuga tunelaren interfazearen bidez edo edukiontziaren ate lehenetsiaren bidez ebazten den. Ate lehenetsia aukeratzen duen kontsulta batek tunela altxatu dela eta ezer ez dela bertara bideratzen esan nahi du; hori bideratze-arazoa da, ez pribilegio-arazoa.

Konponketa nondik datorren benetan

Mantendutako konponketa scriptean dago, ez edukiontziaren banderetan. upstream vpnc-script-(e)k aldatu du eragiketa hau nola kudeatzen duen, beraz konparatu irudiaren barruko kopia oraingo upstream-arekin eta eguneratu hura hornitzen duen paketearen edo irudi-eraikuntzaren bidez. Martxan dagoen edukiontzi baten barruan eskuz editatutako fitxategia ez da berrikusgarria eta ez du hurrengo eraikuntza biziko.

--privileged gaitasun guztiak eta gailu-sarbide zabala ematen dituela dokumentatzen da, ezer aldatzen ez duen mezu baterako kontzesio handia, beraz aipa falta den gaitasuna benetan bat falta bada. Eguneratu ondoren, errepikatu ibilbide-kontsulta eta utzi aplikazio bati tunela erabiltzen, erregistro isila eta konexio funtzionatzen duena emaitza desberdinak baitira.

Erlazionatutako artikuluak