Beste tweakers,
Een tijdje terug heb ik ook een topic geopend over hoe ik een Linux-systeem (Ubuntu in mijn geval) kan besturen via een web-interface. Nu had ik in dat topic wat tips gekregen om te kijken naar eBox en naar het pakket WebMin. Ik heb beide pakketten getest, en de sources bekeken, maar kom er niet echt wijs uit.
Wat ik wil gaan bouwen:
- Via een webpagina inloggen in de interface (En dit moet dan tevens direct gekoppeld zijn aan de linux- rechtenstructuur)
- Mogelijk maken om .sh scripts uit te voeren met de webinterface.
- Commando's op het systeem uitvoeren.
Het systeem gaat twee verschillende interfaces krijgen, namelijk een eindgebruiker interface en een technici-interface.
Op de linux-doos draai ik momenteel LAMP met Apache2. Distributie is Ubuntu Server. Het project is een stageproject.
Nu heb ik een klein stukje code gemaakt:
Uiteraard werkt dit stukje code niet, omdat de Apache2 user niet in root-modus draait. Is het mogelijk om dit toch te kunnen? Ben geen voorstander om de Apache2 user / webuser in root te laten draaien, dus zoek eigenlijk een nette oplossing.
Een tijdje terug heb ik ook een topic geopend over hoe ik een Linux-systeem (Ubuntu in mijn geval) kan besturen via een web-interface. Nu had ik in dat topic wat tips gekregen om te kijken naar eBox en naar het pakket WebMin. Ik heb beide pakketten getest, en de sources bekeken, maar kom er niet echt wijs uit.
Wat ik wil gaan bouwen:
- Via een webpagina inloggen in de interface (En dit moet dan tevens direct gekoppeld zijn aan de linux- rechtenstructuur)
- Mogelijk maken om .sh scripts uit te voeren met de webinterface.
- Commando's op het systeem uitvoeren.
Het systeem gaat twee verschillende interfaces krijgen, namelijk een eindgebruiker interface en een technici-interface.
Op de linux-doos draai ik momenteel LAMP met Apache2. Distributie is Ubuntu Server. Het project is een stageproject.
Nu heb ik een klein stukje code gemaakt:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| <?php // parameter 'p' has been set > check if(isset($_GET['p'])) { $p = $_GET['p']; // shutdown server if($p == 'servershutdown') { $output = shell_exec('shutdown -h now'); echo "<p>" . $output . "</p>"; echo "<p>Shutting down the server...</p>"; } // reboot server elseif($p == 'serverreboot') { $output = shell_exec('shutdown -r now'); echo "<p>" . $output . "</p>"; echo "<p>Server is now rebooting....</p>"; } // parameter error > no valid value else echo "Not valid value!."; } // parameter 'p' contains no value else echo "No value entered!"; ?> |
Uiteraard werkt dit stukje code niet, omdat de Apache2 user niet in root-modus draait. Is het mogelijk om dit toch te kunnen? Ben geen voorstander om de Apache2 user / webuser in root te laten draaien, dus zoek eigenlijk een nette oplossing.