login  Naam:   Wachtwoord: 
Registreer je!
 Scripts:

Scripts > PHP > Handige scripts > linuxCMD

linuxCMD

Auteur: barry - 09 maart 2005 - 17:49 - Gekeurd door: Joel - Hits: 3202 - Aantal punten: 3.50 (2 stemmen)




Met dit programmaatje kan je linux commando's uitvoeren via php, afhankelijk van de webserver natuurlijk.

Als de user die de webserver gebruikt rechten heeft tot enige commando's kun je deze via dit script uitvoeren.

Heb je bijvoorbeeld zelf een webserver, kan je zelf aangeven welke commando's beschikbaarstellen voor de user van de webserver.
Je kan dus bijvoorbeeld instellen dat hij alles kan, dus ook de linuxbak rebooten, etc...
Werkt eigenlijk heel eenvoudig met de shell_exec(); commando.

Voor vragen, plaats een reactie bij dit script.

Oja, en ik heb als functie ingebouwd, dat hij de commando's die je toetst in een session array zet, waardoor je met de pijltjestoetsen naar boven en beneden een commando kan herhalen (het geheim zit hem in een uit het scherm geplaatste select box ;)).

Gewoon de code in een .php document kopieren en plakken en het werkt 

Nut van het script?
handig voor het maken van ee webinterface voor een router ofzo, of gewoon iets waarmee je op je server kan kijken.

(PS... er zijn webhosts waar dit ook kan, dus probeer maar en typ als commando voor de gein eens "/" !! NIET DOOR VERTELLEN HE!!!)...
!! ik heb BTW express maar geen voorbeeld geplaatst !! i.v.m. dewebhost waar ik bij zit...

Code:
  1. <?
  2. $style1 = "color: #FFFFFF; border: 0px #000000 solid; ";
  3.  
  4. function linuxCMD($cmd) {
  5. if(!$cmd == "") {
  6. $_SESSION['CMDlist'][] = $cmd;
  7. }
  8. if($cmd == "clear") {
  9. $_SESSION['output'] = "";
  10. $cmd = "";
  11. }
  12.  
  13. if($cmd == "ls") {
  14. $var = shell_exec($cmd);
  15. $var = str_replace("\n"," ",$var);
  16. $var = $var."\n";
  17. }
  18. else {
  19. $var = shell_exec($cmd);
  20. }
  21. return $var;
  22. }
  23. ?>
  24. <html>
  25. <head>
  26. <title>LinuxCMD</title>
  27. <script>
  28. function init() {
  29. LnxCMD.output.scrollTop = LnxCMD.output.scrollHeight;
  30. LnxCMD.cmd.focus();
  31. }
  32.  
  33. function histCMD(val) {
  34. LnxCMD.cmd.value = val;
  35. LnxCMD.cmd.focus();
  36. }
  37.  
  38. function keyPress() {
  39. if(event.keyCode == 38) {
  40. LnxCMD.hstCMD.focus();
  41. }
  42.  
  43. if(event.keyCode == 40) {
  44. LnxCMD.hstCMD.focus();
  45. }
  46. }
  47. </script>
  48. <style>
  49. body {
  50. background-color: #000000;
  51. color: #FFFFFF;
  52. margin-left: 0px;
  53. margin-top: 0px;
  54. margin-right: 0px;
  55. margin-bottom: 0px;
  56. overflow:hidden;
  57. }
  58. </style>
  59. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head>
  60. <body onLoad="init();"><form name="LnxCMD" method="post" action="linuxcmd.php?go=1#bottom">
  61. <table width=100% height=100% border="0" cellpadding="0" cellspacing="0" celpadding=0 celspacing=0>
  62. <tr><td valign="top">
  63.  
  64. <textarea readonly name="output" id="output" style="<?=$style1;?> width: 100%; background-color: #000000; height:100%;" wrap="soft">
  65. <?
  66. if($_GET['go'] == "1") {
  67. $output = linuxCMD($_POST['cmd']);
  68. if($output == "") {
  69. if($_POST['cmd'] == "clear") {
  70. $output = "";
  71. }
  72. else {
  73. $output = "No output";
  74. }
  75. }
  76. $_SESSION['output'] = $_SESSION['output'] . "\n" . $output;
  77. $write = $_SESSION['output'];
  78. echo $write;
  79. }
  80. ?>
  81. </textarea>
  82. </tr></td>
  83. <tr><td height="16">
  84. <input id="bottom" onKeyDown="keyPress();" type="text" name="cmd" style="<?=$style1;?> width: 79%; background-color: #222222; font-family: 'Courier New', Courier, mono;">
  85. <select name="hstCMD" style="width: 20%; position:absolute; left:-640;" onChange="histCMD(options[selectedIndex].value);">
  86. <?
  87. for($a=0;$a<=count($_SESSION['CMDlist']);$a++) {
  88. if($_SESSION['CMDlist'] == "") {
  89.  
  90. }
  91. else {
  92. echo "<option selected value=\"".$_SESSION['CMDlist'][$a]."\">".$_SESSION['CMDlist'][$a]."</option>";
  93. }
  94. }
  95. ?>
  96. </select>
  97. <input type="Submit" name="Submit" value"Cmd" style="width: 19%;">
  98.  
  99. </tr></td>
  100. </table></form>
  101. <font color="#CCCCCC">
  102. </font>
  103. </body>
  104. </html>
Download code! Download code (.txt)

 Stemmen
Niet ingelogd.

 Reacties
Post een reactie
Lees de reacties (3)
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.021s