Az én rendszerem nem használ sudo parancs szisztémát. Nem mintha most szeretnék váltani. root felhasználó létezik. Ennek ellenére ha szükség van rá, szerkeszthető a sudoers fájl a visudo-val hogy akár a felhasználó kezébe adjunk root jogokkal futó programnak a végrehajtását. Akkor most van a gépemen SUDO vagy nincs?
Szükségem lenne a felhasználó kezébe adni az rtcwake parancsot. Manuálisan megszerkesztve a sudoers fájlt ez megoldható. No de ott van az /etc/sudoers.d mappa.
Nem lenne egyszerűbb abba beletenni a kívánt dolgot?
Létrehoztam egy új csoportot, mely eddig nem létezett. kikapcs lett a neve. usermod -G kikapcs felhasználó
Erre azért volt szükség mert a felhasználó nevében szkript fog futni és a szkriptnek ki kell kapcsolni a gépet ha úgy alakul akkor is, ha történetesen a felhasználó nincs is bejelentkezve. Működik.
Viszont a felhasználónak be kell tudnia állítani azt is, hogy a gép bekapcsoljon adott időben magától. Erre a feladatra használhatja az rtcwake parancsot. De jelenleg ezt csak a root tudja futtatni. Ez még BIOS-os gép.
Mint említettem a sudoersben ez beállítható. De egyszerűsíteném a dolgot. Létrehoztam az /etc/sudoers.d mappában egy 99-bekapcs,conf fájlt. Amiben ez van:
Defaults:felhasználó_neve !requiretty
%kikapcs ALL = NOPASSWD: /usr/sbin/shutdown, /usr/sbin/rtcwake
De nem működik. Ez azért van mert nem sudo-s a rendszerem? Vagy ez nem is fog soha? Nem gond, csak szeretném megérteni. Amúgy ez Mageia LInux.
Ha ugyanezt beírom visudoval, akkor működik. Ráadásul a sudoers fájl végén ott van hogy #includedir /etc/sudoers.d (A # jel itt nem commentet takar.)
- 181 megtekintés
Hozzászólások
a sudoers.d azert van hogy a csomagtelepito oda rakhatja a sudo beallitasait, es nem a sima sudoers fajlban kell varazsolni.
erre figyeltel? ez szerint a 99-bekapcs.conf nemjo fajlnev.
# This will cause sudo to read and parse any files in the /etc/sudoers.d
# directory that do not end in '~' or contain a '.' character.
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!
- A hozzászóláshoz be kell jelentkezni
Ok. Most megnéztem egy Manjaro sudoers.d mappáját. Két fájl van benne. 10-installer, 99-snapd.conf
Mindenesetre átírtam a sajátomat 99-bekapcs-ra. Mikortól érvényesül? Azonnal? Vagy valami háttér folyamatot újra kell indítani?
- A hozzászóláshoz be kell jelentkezni
Mi az, hogy nem használ sudo parancs szisztémát? Ha beírod, hogy "sudo ls", akkor mi történik?
Az /etc/sudoers.d célja, hogy ne egy óriási konfigfájlod legyen, hanem szét tudd őket szedni. A sudo szépen berántja az itt lévő konfigfájlokat is.
Jól értem, hogy az rtcwake nem működik csak?
- A hozzászóláshoz be kell jelentkezni
$ sudo ls
Bízunk benne, hogy megkapta a szokásos tudnivalókat a helyi
rendszergazdától. Általában a következő három dolog lényeges:
#1) Tartsa tiszteletben mások személyiségi jogait.
#2) Gondolkodjon gépelés előtt.
#3) A nagy erő nagy felelősséggel jár.
[sudo] nextra jelszava:
Amúgy arra gondoltam hogy nekem nem kell minden parancsot sudo- val az elején megadni, hanem egyszer su, és root vagyok.
- A hozzászóláshoz be kell jelentkezni
Nem kell: sudo -s vagy sudo su.
- A hozzászóláshoz be kell jelentkezni
Tudom ismerem az Ubuntuból, Linux Mintből, de mivel a Mageia alapból nem kér ilyet, így nem is gondoltam rá.
- A hozzászóláshoz be kell jelentkezni
Lehetséges workaround (sudo nélkül):
A felhasználó meghatározott helyre letesz egy fájlt, amibe bele vannak írva azok a paraméterek, amik kellenek a kikapcsoláshoz.
Egy script leellenőrzi a fájl létezését, ha létezik beolvassa a tartalmát, és kiadja a megfelelő parancsot, majd törli a fájlt. Ez a script root-ként fut, és pl. a cron futtatja percenként.
Nem a legelegánsabb, de így nem kell semmilyen root jogot adni a usernek.
- A hozzászóláshoz be kell jelentkezni
na ezzel lehet a legszebben root jogokat szerezni egy gepen. ha nem csak egy ottvan-a-fajl figyeles, esetleg tartalmazza ABC-t szintu a dolog, hanem direct parameter atadas akkor lehet szepeket muvelni...
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!
- A hozzászóláshoz be kell jelentkezni
Mindent el lehet rontani, de ahonnan én jövök, ott szeretjük a rendszerek közti szeparált, jól definiált interface-eket, növelik a biztonságot (nem IT). Én nem azt mondtam, hogy futtassa a parancsot amit a fájlba írtak :D
Én eddig mindig meg tudtam oldani, hogy ne kelljen mezei user-nek root jogot adni. Engem a setuid-tól is kiráz a hideg, pedig nem olyan régen még zokszó nélkül használták itt-ott.
- A hozzászóláshoz be kell jelentkezni
ennél jobb ha a user scripje csak egy ' logger "valami" ' jellegű.
Így a root végrehajtó scrip-t csak a logot olvasva dolgozik.
És egyben logolva van a tevékenység.
- A hozzászóláshoz be kell jelentkezni
No és biztonsági szempontból hogy néz ki ez a megoldás? Van egy idegen kikapcs csoport, mely a felhasználóhoz van rendelve. A sudoers-ben meg ehhez a csoporthoz van rendelve a shutdown, és az rtcwake parancs.
Defaults:felhasználó_neve !requiretty (Ez ugye azért, hogyha a delikvens nincs bejelentkezve akkor is tudjon futni a szkript.)
%kikapcs ALL = NOPASSWD: /usr/sbin/shutdown, /usr/sbin/rtcwake
Az rtcwake azért kell, a felhasználó beállíthassa hogy mikor kapcsoljon be a gép.
A shutdown meg azért, mert ha végzett éjszaka a szkript akkor kapcsoljon ki a gép. Automatizálva van minden.
Így ugye csak azok kapnak root jogot a két parancsra akik tagjai az idegen csoportnak.S úgy gondolom hogy ez a csoport nem jellemző semmilyen rendszerben.
De közben elfelejtettem, hogy ebben az esetben a szkriptben sudo shutdown és sudo rtcwake parancsot kell alkalmazni. Működik is.
- A hozzászóláshoz be kell jelentkezni