Ik heb, samen met een vriend, een klein C++ programmatje gemaakt, waarmee je 2 relais, die op de printer poort zijn aangesloten, kan bedienen. Nu werkt dit allemaal, maar alleen als je root bent. Nu wil ik dus, via een PHP scriptje wat ik heb gemaakt, dat je via je browser die relais kan bedienen. Maarrrr, omdat Apache onder www-data draait, kan deze dus niet naar de printerpoort schrijven. Hoe kan ik ervoor zorgen dat www-data wel naar die poort mag schrijven?
hmmz, werkt dus niet. Dit staat in het php scriptje btw:
Maar kan ik 'lptprog' prog niet als root laten uitvoeren? want alleen 'chown 0:0 lptprog' werkt dus niet...
PHP:
1
2
3
| <?php system("/var/www/xmas/lptprog 1"); ?> |
Maar kan ik 'lptprog' prog niet als root laten uitvoeren? want alleen 'chown 0:0 lptprog' werkt dus niet...
[ Voor 38% gewijzigd door Tomaat op 15-12-2002 11:54 ]
Het is alleen niet de meest veilige oplossing, maar het werkt wel.
Je zou ook kunnen proberen om /dev/lp0 (of hoe dat ook heet) toegankelijk te maken voor de user waaronder Apache draait.
Je zou ook kunnen proberen om /dev/lp0 (of hoe dat ook heet) toegankelijk te maken voor de user waaronder Apache draait.
Verwijderd
Is toch wel eng hoor zo'n suid-root programmatje. is het niet makkelijker om de printerpoort in kwestie groepsrechten te geven aan de groep 'lptgroup' en www-data daar lid van maken
Verwijderd
Hangt ervanaf. Als het programma zo beperkt is in zijn mogelijkheden dat je er niks anders mee kan dan die ledjes aansturen (ideale suid progje), dan is het risico nihil... v4l-conf doet dit bv. ook (framebuffer setten op video4linux kaarten).Wilke schreef op 15 December 2002 @ 12:58:
Het is alleen niet de meest veilige oplossing, maar het werkt wel.
Het wordt gevaarlijk als je programma een shell geeft, maar dat lijkt me duidelijk.
tja, het zijn een 10tal regels code, die alleen maar 2 LEDjes aansturen, waar strax aan relais kaart aan komt te hangen, waar dan weer mijn remote control kerstboom aan komt te hangen
they will come soon, my son...
eerst moet alles goed werken
eerst moet alles goed werken
Toch is de nettere methode om het progsel gewoon als de aanroepende user te laten draaien, en dan www-data toegang te geven tot de parallelle poort.
Maar dat werkt niet als het progje in kwestie via outb() en/of vriendjes direct de hardware aanstuurt (wat ook niet bepaald netjes is).
Maar dat werkt niet als het progje in kwestie via outb() en/of vriendjes direct de hardware aanstuurt (wat ook niet bepaald netjes is).
Behold!
Remote Control X-Mas Tree
Je kan nu alleen 2 LEDjes bedienen
De relais waren op bij electroboer...
Zodra ik 2 relais binnen heb, sluit ik ze direct aan en laat het jullie weten
Remote Control X-Mas Tree
Je kan nu alleen 2 LEDjes bedienen
De relais waren op bij electroboer...
Zodra ik 2 relais binnen heb, sluit ik ze direct aan en laat het jullie weten
Google, Het mirakel van de 21e eeuw!!!!
Ja, maar ik heb dus geen Java in mijn browser geinstalled. Bovendien is webcams streamen met java in mijn ervaring erg traag.
enne de software is die opensource?
<Jeroen> Wirf: vrouwen versieren kan je gewoon in het OSI model proppen hoor :P
I am dyslexic of Borg prepare to have your ass laminated
Real Programmers always confuse Christmas and Halloween because oct31 = dec25
Pagina: 1