Portál AbcLinuxu, 16. července 2025 03:17
Dobrý den,
potřeboval bych vytvořit (nejspíše) webové rozhraní k nastavování nějaké služby v linuxu (na routeru) - konkrétně se jedná hlavně o dansquardian -a nevím jak z webu přistupovat ke konfiguračním souborům popřípadě restartovat danou službu když to může činit pouze root (popř možná uživatel pod kterým daná služba běží). A pouštět web server pod superuživatelskými právy se mi úplně nechce. Jako teoretické možnosti měnapadly právě to sppuštění serveru pod rootem a nebo nějak spouštět z webu externí script s pomocí sudo (s heslem zadaným z formuláře) - ani jedno řešení se mi však nejeví příliš košér....
Potřeboval bych tedy nasměrovat nějakým správným směrem - jak například provázat autorizaci na webu se skutečnými uživateli v systému a poté jak pod nimi spouštět nějaké funkce nebo scripty (nejlépe pomocí php nebo pythonu).
Děkuji za jakýkoliv tip nebo radu...
Sudo by podle mě bylo ideální, můžeš si nastavit spouštění třeba jen určitých příkazů přes sudo bez hesla (pro uživatele, pod kterým běží webserver). Bezpečností riziko je to, že kdyby na tom webserveru někdo mohl spouštět vlastní skripty, mohl by tyto příkazy spouštět taky, ale to snad na routeru nehrozí.
Nebo by se dalo dát dohromady pár jednoúčelových programů s nastaveným suid bitem, ale to už vypadá dost pracně. Taky by ten web mohl běžet pod rootem, aniž by pod rootem běžel webserver - webserver by jenom proxoval, ať už přes HTTP nebo FastCGI.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.