Почетак › Форуми › Линукс › Програмирање › To root or not to root? ;-)
- This topic has 4 одговора, 4 гласа, and was last updated 20 years, 1 month раније by
civan.
-
АуторЧланци
-
3. август 2006. у 10:47 am #7664
jboban
УчесникPišem aplikaciju koja koristi paralelni port za komunikaciju, ali za njeno uspešno pokretanje moram biti ulogovan kao root 🙁
Ovo mi se ne svidja, pa me zanima da li je moguće aplikaciji dodeliti dozvolu da koristi nešto od hardvera, tipa paralelni port ili serijski (/dev/ttyS0) kao root, a da je pokrene običan korisnik? Gledao sam i C funkcije tipa ioperm(), iopl(), ali nisam našao zadovoljavajuće rešenje.3. август 2006. у 11:44 am #46482crveni1
УчесникPazi ne tvrdim da je ovo odgovor, ali cisto teorijski. Da li bi pomoglo da korisniku dodelis recimo grupu tty, modem ili nesto tome slicno???
3. август 2006. у 3:08 pm #46483RiSK
УчесникPazi: Kada aplikaciju pokrene obican korisnik kreira se proces ciji je vlasnik predstavljen UIDom korisnika koji ga je pokrenuo. Za svu komunikaciju sa kernelom/ostatkom sveta koristi se taj UID. Znaci svako obracanje ka /dev/nesto se shvata kao da se doticni korisnik obraca uredjeju.
Inace bi bilo zlo: Zamisli da na nekom serveru gde imas ssh pristup kao obican korisnik napravis programce, koje kad pokrenes staruje /bin/bash kao root. Ehej…. Crce sva sigurnost sistema 😉Mozes da podelis svoju aplikaciju na dva dela:
Prvi da bude nesto kao deamon. Znaci: pokrene ga root, izvrsava se u pozadini, i kontorlise tvoj uredjaj.
Drugi bude ‘klijent’ – pokrene ga user i zakaci se preko nekog protokola na tvoj deamon, pa onda ne komunicira direktno sa uredjajem nego posredno.3. август 2006. у 6:27 pm #46484jboban
УчесникPrvi da bude nesto kao deamon. Znaci: pokrene ga root
Upravo ovo želim da izbegnem. Ja jesam root, ali ne bih da budem uvek prisutan kad treba pokrenuti aplikaciju 😉
Mislim da je pogodnije promeniti grupu za /dev/ttyS0, odnosno /dev/parport0, u nedostatku nečeg boljeg.4. август 2006. у 5:48 pm #46485civan
УчесникMozes da podesis “sticky bit” u dozvolama pa da se program pokrece sa root pravima iako ga pokrece obican korisnik. U ovom slucaju moras da se osiguras da program nema nikakve buffer overflow greske koje se mogu koristiti za pokretanje shella ili slicno… pronadji na netu savete kako se pisu programi koji bi trebalo da rade sa sticky bitom…
-
АуторЧланци
Мораш бити пријављен да би поставио коментар у овој теми.