A konzol kiváltság: miért kér saját jogosultságot

A konzol képernyőnek látszik, valójában viszont shell. A "módosíthat beállításokat" és a "nyithat shellt" pedig két különböző hatalom; az egyik másikként kezelése root jogosultság kiosztását jelenti.

AtlasPVE ·

A bejegyzés ezekre válaszol

  • proxmox konzol jogosultság
  • mi az a sys.console proxmox
  • proxmox shell hozzáférés felhasználónak
  • proxmox szerepkör jogosultságok
  • proxmox vnc hozzáférés jogosultság

A konzol képernyőnek látszik. Megnyílik, megjelenik egy ablak, benne szöveg gördül. Az érzés az, hogy "itt csak nézelődés történik".

A konzol viszont shell. A szerveren futó shell pedig a legmagasabb kiváltság, ami azon a gépen létezik.

Két külön hatalom

Beállítások módosítása. Elvégezhető mindaz, amit a felület enged. A határok tiszták, mert a felület rajzolja meg őket.

Shell megnyitása. Bármi elvégezhető. Beleértve azt is, amit a felület megtagadna, és azt is, amiről a felület soha nem hallott.

Ez a két hatalom nem tartalmazza egymást. Az egyik megléte nem igényli a másikat, és ami fontosabb: az egyik megadása nem jelentheti a másik megadását.

A megkülönböztetés valódi, és látszik a beépített szerepkörökben

A Proxmox a konzolt saját, külön jogosultsághoz köti, nem az általános módosítási jogosultsághoz. A beépített szerepkörökön látszik, hogy ez valódi: a rendszergazda szerepkör az ellenőrzési, a konzol és a napló jogosultságot viszi, módosítási jogosultságot viszont nem tartalmaz.

Jogos beállítás tehát az, hogy valaki konzolnyitási jogot kap a beállítások módosításának joga nélkül. És fordítva is.

A gyakori helyzet, amiért ez számít

A Proxmoxban egyedi szerepkörök is létrehozhatók, és nagyon gyakori az ilyen szerepkör: olyan üzemeltető, aki módosíthatja a hálózati beállításokat, de a szerver shell hozzáférését nem kaphatja meg.

Ez ésszerű igény. A hálózati konfiguráció szerkesztése és a szerveren bármilyen parancs futtatása nem ugyanaz.

Ha viszont egy termék úgy gondolkodik, hogy "aki módosíthat, az konzolt is nyithat", akkor észrevétlenül root shellt ad ennek az üzemeltetőnek. A panelen keresztül megkapja azt, amit a Proxmoxban nem kaphatott meg.

Az ebből következő általános elv

A jogosultsági modellnek másolnia kell a platform saját meghatározását, nem átfogalmaznia.

Az a kapu, amely "nagyjából ugyanazt" mondja, a szokásos beállításokon helyesen működik, és senkinek nem tűnik fel. A rés azon a napon nyílik meg, amikor szokatlan szerepkör jön létre. És amikor eljön az a nap, az évekkel korábban leírt közelítésre már senki nem emlékszik.

A fájlhozzáférésre ugyanaz a mérce vonatkozik

Még egy részlet, mert ez gyakran kimarad: a szerver fájlrendszeréhez való hozzáférés még csak olvasható módban is egyenértékű a shellel.

Az ok egyszerű: a jelszófájlok, a kulcsok és a fürt titkai ezen a fájlrendszeren laknak. Aki csak olvasási jogosultsággal olvashat fájlokat, az máris mindent megtudhat.

A fájlhozzáférés tehát nem adható meg "nézelődési" jogosultsággal; ugyanazt a mércét kívánja, mint a shell.

Mit csinál az Atlas

Az Atlasban a konzol, a távoli shell és a fájlhozzáférés kizárólag a konzol jogosultsághoz kötődik. A módosítási jogosultság önmagában nem nyitja meg ezeket a felületeket.

Ez nem volt mindig így, és a cikknek őszintén kell zárulnia: ezek a felületek korábban a módosítási jogosultságot is elfogadták. A kódban lévő megjegyzés a helyeset mondta, azt írta, hogy "a megfelelője a konzol jogosultság", a kód viszont mást csinált.

Ez a Proxmox saját meghatározásához mérve derült ki, és javításra került. A mérés egyértelmű volt: a Proxmox a shellt kizárólag a konzol jogosultsághoz köti, és nem fogadja el a módosítási jogosultságot.

A valódi súlyt is ki kell mondani úgy, ahogy van: beépített szerepkörökkel nem volt kihasználható, mert az egyetlen beépített szerepkör, amely a módosítási jogosultságot tartalmazza, a konzol jogosultságot is hordozza. A kockázat az egyedi szerepkörökben volt, vagyis a fent leírt hálózati üzemeltető példájában.

Az ebből következő tanulság magára a termékre vonatkozik: attól, hogy a megjegyzés helyes, a kód még nem helyes. A kettőt külön kell megmérni.

Források

A Proxmox saját dokumentációja. Angol nyelvű, és ebben a kérdésben az övé az utolsó szó.

Kapcsolódó bejegyzések

Hogyan néz ki ez az Atlason belül?

Tovább a termékoldalra