Ako spustiť v Linuxe script ako root | devLife.eu
Nov
13th

Ako spustiť v Linuxe script ako root

Zaradené do Linux, Shell script | Publikoval rado


Tux smallerMožno ste sa už stretli s tým, že je potreba nejaký shell script pustiť pod užívateľom root. Pokiaľ pracujete priamo v konzole, nie je to problém. Stačí pridať pred príkaz sudo (napr: sudo ./moj_script.sh), prípadne sa prepnúť na roota (príkaz su, prípadne sudo su) a v prípade nutnosti zadať heslo ručne. Problém je, keď chceme takýto script umožniť spustiť niekomu, kto nevie heslo alebo sa bude spúšťať z iných scriptov, kedy nie je možné heslo ručne zadať.

Jednou možnosťou, ako toto vyriešiť je nastavenie bitu set uid a roota ako ownera pre script. Táto zmena užívateľa ale nie je dokonalá a zmení sa iba vykonávajúce uid ale script tým nezíska práva roota, čiže tento spôsob je nepoužiteľný. Dôvodom prečo je to tak, je hlavne bezpečnosť a fakt, že tento spôsob zmeny užívateľa je určený pre zníženie práv (napr z roota na usera) pre vykonanie scriptu.

Postupovať treba inak. Stačí nechať daný script vykonať pomocou príkazu sudo, teda:

sudo /cesta/ku/scriptu

Sudo ale štandardne bude vyžadovať zadanie hesla, ktoré sa ale dá vypnúť menovite pre konkrétne scripty a užívateľov editáciou sudoers príkazom:

visudo

Do editora pridajte na koniec:

meno_uzivatela ALL = NOPASSWD: /cesta/ku/scriptu

Týmto sa zabezpečí, že príkaz sudo nebude pre daného užívateľa a script vyžadovať heslo. Taktiež dajte pozor na to, že sudoers sa smie editovať iba príkazom visudo. A v neposlednej rade treba scripty dobre zabezpečiť, aby ich nemohol neikto upraviť a tým získať kontrolu nad serverom.

Zdieľajte tento článok s vašimi priateľmi!

  • Facebook
  • Twitter
  • vybrali.sme.sk
  • MojeLinky.sk
  • Pozrisi.sk
  • Park.sk
  • Linkuj.cz!
  • Jaggni to!
  • Bookmarky.cz
  • MediaBlog.cz
  • TOPodkazy.cz
  • Top Články.cz
  • Digg
  • del.icio.us
  • Google Bookmarks
  • Add to favorites

Články, ktoré by vás mohli zaujímať:



Pridať komentár