Hogyan használjuk a Sudo hozzáférést Linux-on? (1. rész)
A „sudo” parancs az egyik legalapvetőbb a Linux platformon, és alapvetően arra jó, hogy úgy futtassunk dolgokat, mint ha nem mi lennénk azok, akik ezt teszik. A „root.sudo”-val például tudjuk irányítani, hogy mely felhasználó mihez férjen hozzá egy adott gépen.
Linux rendszerek kapcsán sokszor hallottuk már azt a túlegyszerűsített nézetet, hogy a Linux-ban minden csak egy fájl. A valóságban, a fájloktól a mappákon és programokon keresztül minden másig, a dolgok egy fájl leíró (file descriptor) segítségével kommunikálnak a kernellel. A fájl leíró tulajdonképpen mindent fájlként mutat be a kernelnek, habár a bemutatott elemek sokszor nem fájlok. Ez az elv magából a Linux jellegéből és az UNIX alapú rendszerekből fakad. Így lettek tervezve. Tekintve, hogy a fájlok szintjén kezelődik sok mindnen, könnyű tehát látni, hogy a fájl szintű hozzáférés effektíve a rendszer szintű hozzáférést is megadhatja Linuxon. Ha van például egy mappánk Linux-on, akkor azt áthelyezhetjük, módosthatjuk, szerkeszthetjük, átnevezhetjük, stb, és ilyen műveletekre másoknak is adhatunk hozzáférést. Ezen a hozzáférésen alapul, hogy ki mit tud egy adott objektummal kezdeni a rendszerben. Mindenkire vonatkozik ez, kivéve a „root” felhasználóra.
A root felhasználó speciális jogokkal rendelkezik, mivel semmiféle korlátozás nem érvényes rá. Ha a root felhasználó van kezeink alatt, akkor egy Linux rendszerben bármit megtehetünk anélkül, hogy hozzáférési engedélyekbe ütköznénk. Mindehhez pedig csak a root felhasználó jelszava kell, ami értelemszerűen nem jó, ha illetéktelen kezekbe kerül. Éppen ezért Linux-on bevett praktika, hogy a root felhasználóba szinte sosem jelentkezünk be, hanem inkább egy normál fiókban dolgozunk a „sudo” paranccsal, mellyel „megemelhetjük” jogainkat egy időre.
A „sudo” parancs már a 80-as évek óta velünk van és mindig is arra volt használva, hogy szuperfelhasználói státuszt szerezzünk egy rövid időre Linux rendszereken. Amikor egy modern disztrót feltelepítünk egy gépre, akkor a felhasználói fiók, melyet létrehozunk, hozzáadásra kerül az úgynevezett „sudoers” listához, mely azon felhasználók listája, akinek van hozzáférése a „sudo” parancshoz.
A „sudo” parancs maga egy rövidítés, mely a „superuser do” szavakból lett összeállítva, mely arra utal, hogy szuperfelhasználóként tudtunk dolgokat csinálni a gépen. A parancs használata azóta kibővült, és a „sudo” segítségével végrehajthatunk egy parancsot bármely felhasználó nevében.
A „sudo” parancsot az „-u” kiegészítéssel kell futtatni, hogy ne root-ként futtassuk a parancsot. Egy sudo parancs például így nézhet ki:
„sudo -u adam whoami”
Ekkor a „whoami” parancsot futtatjuk az adam felhasználón keresztül. A parancsot használhatjuk arra is, hogy bejelentkezzünk egy másik fiókba anélkül, hogy tudnánk a jelszavukat:
„sudo -i -u adam”
Ekkor csak saját jelszavunkat kell megadni. A sudo parancsnak rengeteg felhasználása van. A következő részben megnézünk még párat.