NET_ADMIN i gcoimeádán VPN: cad is féidir leis a athrú agus cá háit
Ligeann an cumas athruithe comhéadan, bealaigh agus balla dóiteáin laistigh de spás ainmneacha líonra amháin. Le líonrú óstaigh, is é an spás sin stac an óstaigh féin.
NET_ADMIN an cumas Linux a ligeann do phróiseas riarachán líonra a dhéanamh, agus i gcoimeádán déanann sé go díreach é sin laistigh den spás ainmneacha líonra ina ritheann an próiseas. Ní ceadúnas é chun soicéad a oscailt, agus ní ionadaí é do ghléas ná do bhealach. Níorbh é an cheist spéisiúil riamh an bhfuil an cumas tugtha, ach cén spás ainmneacha a fhaigheann an t-athrú.
Cad a chlúdaíonn an cumas
Laistigh dá spás ainmneacha, is féidir le próiseas a bhfuil NET_ADMIN aige comhéadain a ardú agus a ísliú, seoltaí a shannadh, bealaigh a chur leis agus a bhaint, agus rialacha balla dóiteáin a scríobh, arb é an grúpa oibríochtaí é a bhailíonn capabilities(7) faoin gcumas seo. Is féidir leis freisin socruithe ar leibhéal comhéadain a choigeartú a rialaíonn conas a chuireann an t-eithne trácht i scuaine agus a scagann sé é. De ghnáth bíonn cúpla ceann de na rudaí sin ag teastáil ó chliant VPN ag am tosaithe agus ní bhíonn aon rud eile ag teastáil ina dhiaidh sin. Mar sin iarrann formhór na n-íomhánna raon níos mó ná mar a úsáideann siad.
Ní chlúdaítear oibríochtaí lasmuigh den spás ainmneacha sin, agus tá pribhléidí cóngaracha ar leithligh. Baineann léamh agus scríobh paicéad amh le NET_RAW, agus teastaíonn an cumas agus rochtain ar nód an ghléis araon chun gléas tun a chruthú. Faigheann próiseas gan an gléas earráid ceada atá cosúil le fadhb líonra agus nach ea.
Cinneann an spás ainmneacha an ga atá ag an damáiste
Sroicheann coimeádán ar a líonra droichid féin a loopback féin, a chomhéadain féin agus a thábla ródaithe féin. Má thugtar NET_ADMIN ann, is féidir leis an gcliaint VPN tollán a thógáil gan cur isteach ar chinntí ródaithe an óstaigh, arb é an socrú é a ghlacann formhór na n-íomhánna coimeádáin leis.
Athraigh an coimeádán sin go líonrú óstaigh agus déanann an deonú céanna anois róid an óstaigh agus balla dóiteáin an óstaigh a chur in eagar, toisc nach bhfuil aon spás ainmneacha ar leith fágtha. Is féidir leis an gcliaint a bhí ceaptha chun tollán amháin a bhainistiú trácht an mheaisín iomláin a atreorú ansin, agus fágann botún ina scriptréimníochta rialacha ar an óstach nár scríobh aon duine. Níor athraigh aon rud sa chumas féin; d'athraigh an comhthéacs. Sin é an fáth a n-iompraíonn an comhad compose céanna é féin go difriúil ar dhá óstach.
Trí réamhriachtanas a chumtar in aon cheann amháin
Baineann teipeanna tosaithe i gcoimeádáin VPN de ghnáth le ceann de thrí rud ar leithligh: an cumas, an gléas tolláin agus tacaíocht eithne don phrótacal. Oibríonn tabhairt an trí cinn le chéile, agus déanann sé an chéad teip eile doshannta freisin. Deonaíonn blúire compose íosta an cumas agus cuireann sé nód an ghléis ar aghaidh go sainráite:
services:
vpn:
image: example/vpn-client:latest
cap_add:
- NET_ADMIN
devices:
- /dev/net/tun
sysctls:
- net.ipv4.conf.all.src_valid_mark=1Léigh doiciméadú an íomhá féin maidir leis na sysctls a theastaíonn uaidh, mar go bhféadfadh sysctl i gcoimeádán pribhléid bhreise nó socrú ar leibhéal an óstaigh a éileamh. I gcás nach dtacaíonn an íomhá ach le mód spáis úsáideora, ní theastaíonn aon ghléas ar chor ar bith agus laghdaítear an liosta cumas dá réir.
Deonaigh an oibríocht chúng, ní an mód
Tugann an mód pribhléideach gach cumas ar láimh agus leathnaíonn sé rochtain gléis ag an am céanna, mar sin ceilfidh sé cé acu de na trí réamhriachtanas a bhí in easnamh. Déanann sé freisin modhanna teipe an choimeádáin doshannta ó athruithe an óstaigh. Is fearr liosta sainráite fiú nuair is faide a scríobh.
Athraíonn imscarthaí gan fhréamh agus i spásanna ainmneacha úsáideora cad a chiallaíonn cumas go praiticiúil, mar ní féidir leis an próiseas é a choinneáil ach amháin laistigh de spás ainmneacha mapáilte. Is bealach coitianta chun tráthnóna a chailleadh é liosta cumas a chóipeáil ó shampla fréimhe go timpeallacht rite gan fhréamh agus an raon céanna a bheith ag súil leis.
Baineann rúin le cinneadh ar leithligh. Ní deir sé aon rud faoi NET_ADMIN a bheith agat cén t-aitheantas piaraí a chuireann an cliant i láthair, cé na dintiúirí a lódálann sé ná conas a rothlaítear iad. Ní sholáthraíonn riarachán líonra muinín.
Fíoraigh an t-athrú agus taifead cén fáth a bhfuil an deonú ann
Deimhnigh cad a fuair an coimeádán i ndáiríre sula ndéanann tú dífhabhtú ar an tollán. Tuairiscíonn an iniúchadh thíos na cumais bhreise agus an mód líonra, agus ansin taispeánann sé conas a fhéachann an liosta comhéadan ón taobh istigh:
docker inspect --format '{{.HostConfig.CapAdd}} {{.HostConfig.NetworkMode}} {{.HostConfig.Privileged}}' vpn
docker exec vpn sh -c 'grep CapEff /proc/self/status'
docker exec vpn ip -br addr
docker exec vpn ip routeMá tá an cumas i láthair agus an liosta comhéadan fós folamh, theip ar an gcliant sula raibh sé in ann aon rud a chruthú, agus is iad logaí an choimeádáin an chéad áit eile le breathnú. Má tá an tollán ann ach nach sreabhann an trácht, freagraíonn an tábla ródaithe laistigh den choimeádán an chéad cheist eile.
Tástáil an cosán díchoimisiúnaithe freisin, mar is féidir le cliant a scríobhann rialacha balla dóiteáin iad a fhágáil ina dhiaidh. Stop an coimeádán agus seiceáil tacar rialacha an óstaigh arís má úsáidtear líonrú óstaigh. Níor cheart deonú nach dteastaíonn ach dhá shoicind ag am tosaithe a thuairisciú sa chomhad compose mar riachtanas buan gan nóta a mhíníonn é sin.
Scríobh an chúis in aice le gach cumas: cén oibríocht a theastaigh uaidh agus cad a theipeann gan é. Maireann an nóta sin thar nuashonruithe íomhá, agus is é an difríocht idir liosta pribhléidí athbhreithnithe agus ceann a d'fhás trí chóipeáil agus trí ghreamú.