PC über Webinterface steuern

Blacktron

Enthusiast
Thread Starter
Mitglied seit
10.07.2004
Beiträge
743
Ort
Essen, NRW
Heyho,
gibt es ne fertige Möglichkeit wie man einen PC (Linux oder Windows) über nen Webinterface steuern kann? Oder habt ihr ne Idee wie man sowas programmieren kann? Sollte halt so sein dass man im Webinterface ne Taste hat für "Rechner stummschalten" (am besten daneben nen Button der zeigt ob er grad stumm oder hörbar ist ) , einen für "Programm xy" starten/beenden, einen für was weiß ich was ;) und dazu evtl. noch ne Anzeige wo man ablesen kann wieviel Speicherplatz noch frei ist etc.
Freu mich schon auf eure Antworten. ;)
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Wenns kostenlos sein soll nimm UltraVNC.
Nutz ich auch um von der Arbeit aus auf meinen PC zu Haus zuzugreifen.
Allerdings ohne Zugriff via Webbrowser.
 
Bei RealVNC is auch ein Java Interface dabei, womit du den PC über den Browser steuern kannst...
 
Remotly Anywhere werd ich mir morgen mal genauer ansehn , Ultra VNC geht nicht weils halt kein Webinterface hat und RealVNC geht nicht weils nen Java Webinterface hat. Und ich will meinen Rechner halt nicht über nen normalen Rechner steuern sondern über nen mobiles Gerät. ;)
 
für mstsc gibts auch son activex plugin das mans unterm IE nutzen kann
 
Also wie gesagt, Java geht nicht, RemoteAnywhere geht schon, allerdings nur im HTML-Modus, ausserdem ist das viel zu unübersichtlich. Mir würden halt nen paar HTML-Buttons reichen, die bestimmte Befehle auslösen. (am Besten auch unter Linux, der endgültige Server wird nämlich Linux sein)
 
www.logmein.com ist in deinem Fall auch eine Möglichkeit.

Du meldest dich auf der Seite an und auf dem Rechner der Ferngesteuert werden soll wird eine kleine Software installiert, der Rechner der Fernsteuern soll braucht nur ein Plugin für den Browser. Das Programm funktioniert auch durch jegliche Firewall ohne Probleme.

Gruß Batzen
 
Also wie gesagt, Java geht nicht, RemoteAnywhere geht schon, allerdings nur im HTML-Modus, ausserdem ist das viel zu unübersichtlich. Mir würden halt nen paar HTML-Buttons reichen, die bestimmte Befehle auslösen. (am Besten auch unter Linux, der endgültige Server wird nämlich Linux sein)

Warum muss es denn ein Webinterface sein? Nimm doch einfach SSH.
 
Warum muss es denn ein Webinterface sein? Nimm doch einfach SSH.

Ich denke nicht das Blacktron's "mobiles Gerät" SSH beherscht. Falls ja wärs cool.
@Blacktron: was haste denn eigentlich? Handy? PDA? Gameboy DS? Und was genau willste denn "Stummschalten"? Nur die Sound ein/aus gabe oder was?

- Wennst nen Webserver auf deinem "Remote" Rechner istalliert hast, kannst z.B. mit PHP mit den funktionen exec() bzw. system() Systembefehle oder auch Batchdateien ausführen.
- Wenns ein PDA oder Handy ist, kannst ja auch nen "Bluetooth fernbedienungs" Empfänger fürn PC einbauen. Weiss nicht wie weit du entfernt bist^^
- http://www.tutorials.de/forum/micro...autstaerke-mit-einer-batch-datei-aendern.html ??

Wenn du genau erläuterst was du brauchst, vielleicht findet sich ein anderer Weg, der dir dein Problem löst...
 
Mein Endgerät wär ne Sony PSP.

Also, die hat kein SSH, sonst würde ich das einfach nutzen, wie ihr schon sagt. (trotz mühsamer Texteingabe)Und naja, Ziel der Übung wäre es halt ne Webseite zu haben mit mehreren HTML-Buttons.Wenn man dann auf die Buttons klickt sollte der Server die entsprechenden Dinge starten. Zum Beispiel nen Button "Runlevel 3 starten" , wenn man drauf klickt führt der Rechner "init 3" auf der Konsole aus und der Rechner geht in den Runlevel 3. Das ganze sollte natürlich auch mit anderen Dingen funktionieren.
Sollte halt nur die HTML-Button-Klicks in nen SSH Befehl umsetzen und ausführern.
 
wenn es ne html seite ist, warum dann nicht umschreiben ?
 
Also ich habe sowas schonmal umgesetzt.
Auf meinem Rechner Zuhause, dort ist Apache, PHP, MySQL usw. istalliert.

Ich habe dort ein PHP Script mit einem HTML Formular, wenn ich nun in dem Textinput Feld des Formulares Systembefehle eingebe, kann ich diese mit PHP abfangen und direkt an die Konsole (WindowsXP) weiterleiten.
Die PHP Befehle lauten dabei: exec() oder system().
Natürlich kannst du auch diese Systembefehle per Html-button "submitten".
Ein sehr simples Script dazu, dass im Webserver mit PHP läuft, würde in etwa so aussehen:
PHP:
<html>
<body>
<form name="system" method="POST" action="<? echo $PHP_SELF ?>" />
<input type="submit" name="Runlevel" value="1"  />  
<input type="submit" name="Runlevel" value="2"  />  
<input type="submit" name="Runlevel" value="3"  />  
<input type="text"   name="execute"  value="<? $_POST['execute'] ?>" />
<input type="submit" name="submit"   value="ausfuehren" />
</form>
</body>
</html>
<?php
if(isset($Runlevel)){
	switch ($Runlevel) {
	case 1:
	    $SystemBefehl = "tasklist";
	    break;
	case 2:
	    $SystemBefehl = 'ping 127.0.0.1';
	    break;
	case 3:
	    $SystemBefehl = "ping -n 1 web.de";
	    break;
	}
}
if(isset($execute) && $execute != ""){
	$SystemBefehl = $execute;
}
$Meldung = exec($SystemBefehl, $RueckgabeProgramm, $RueckgabeStatus);
echo "<br>".$Meldung."<br><br>";
if($RueckgabeStatus == 0)
{
    echo "<font color=\"green\"><pre>";
    print_r($RueckgabeProgramm);
    print_r($RueckgabeStatus);
    echo "</pre></font>";
}
?>
hoffe dir hilft das ein wenig. Aber nur mit HTML wirst des sicher nicht hinbekommen.
 
Na, holla die Waldfee,das ist ziemlich genau was ich machen wollte. :) Kann mir das noch einer kommentieren, also welcher Befehl was konkret macht? So dass ich mir das auf meine Bedürfnisse zurecht schneidern kann.
 
Hey Blacktron, eigentlich ganz einfach:

Das Script ist eigentlich für Windows, sollte aber mit den entsprechenden "Systembefehlen" auch
genauso für Linux/Unix funktionieren.
Hab's aber nur bei Windows getestet.

Wenn du dich einigermassen mit Systembefehlen [Start->Ausführen...] auskennst, dann tutst du dir sicher recht einfach.

Wenn nicht, dann musst du halt viel rumprobieren ;P
Ich habe das Script jetzt mit eingien Kommentaren versehen, sollte ansich eingentlich recht verständlich sein,
was du nun für deine Bedürfnisse ändern musst.

Bedenke aber auch die Sicherheit, und stelle das Script nicht auf einen "ungesicherten Server",
denn wenn jemand den Systembefehl "ECHO J | FORMAT C: /V:NEU" eingibt, schauts schlecht aus^^

PHP:
<html>
<body>
<!-- HTML-Formular, zum Systembefehele Uebergeben -->
<form name="system" method="POST" action="<? echo $PHP_SELF ?>" />
<!-- 1. Submitbutton, uebergibt den Runlevel Wert "1" und weist somit 
     in der Switch-Anweisung den Systembefehl "tasklist /V" zu -->
<input type="submit" name="Runlevel" value="1"  />  
<!-- 2. Submitbutton, uebergibt den Runlevel Wert "2" und weist somit 
     in der Switch-Anweisung den Systembefehl "ping 127.0.0.1" zu -->
<input type="submit" name="Runlevel" value="2"  />  
<!-- 3. Submitbutton, uebergibt den Runlevel Wert "3" und weist somit 
     in der Switch-Anweisung den Systembefehl "ping -n 1 web.de" zu -->
<input type="submit" name="Runlevel" value="3"  />  
<!-- 4. Eingabe-Text-Feld, uebergibt der Variablen execute einen 
     Systembefehl den du selbst eingeben kannst! -->
<input type="text"   name="execute"  value="<? $_POST['execute'] ?>" />
<input type="submit" name="submit"   value="ausfuehren" />
</form>
<!-- ENDE HTML-Formular //-->
</body>
</html>
<?php
/**
**  Zunaechst fragen wir mit "if(isset($Runlevel))" ab, Ob einer der drei 
**  Submitbutton gedrueckt wurde, und wenn ja, dann mit der Switch-Anweisung 
**  ob nun Runlevel den Wert "1", "2" oder "3" hat.
*/
if(isset($Runlevel)){
	switch ($Runlevel) {
	case 1:
	    /**
	    ** Hat Runlevel den Wert "1" wird dieser Systembefehl zugewiesen.
	    ** das "tasklist /V" hier, kannst du mit deinen eigenen Systembefehlen
	    ** frei ersetzten, es dient nur als Beispiel.
	    ** Du kannst auch z.B. mit "md C:\Windows\test" einen neuen Order im
	    ** Win Verzeichnis anlegen, oder mit "dir > lpt1" den Verzeichnisinhalt
	    ** an den Drucker senden... usw.
	    */
	    $SystemBefehl = "tasklist /V";
	    break;
	case 2:
	    /**
	    ** Hat Runlevel den Wert "2" wird dieser Systembefehl zugewiesen. 
	    */
	    $SystemBefehl = 'ping 127.0.0.1';
	    break;
	case 3:
	    /**
	    ** Hat Runlevel den Wert "3" wird dieser Systembefehl zugewiesen. 
	    */
	    $SystemBefehl = "ping -n 1 web.de";
	    break;
	/**
	** Sollten die drei vordefinierten nicht reichen, kannst du jederzeit die
	** Case Abfrage erweitern. Du musst dann nur auch dazu neue HTML Button im
	** Formular hinzufuegen.
	*/	    
	}
}
/**
** Hier fragen wir ab, ob ein eigener Systembefehl im Eingabe-Text-Feld uebermittelt
** wurde. Ist dies der Fall wird mit eben diese Eingabe ausgefuehrt.
*/
if(isset($execute) && $execute != ""){
	$SystemBefehl = $execute;
}
/**
** Mit der exec() Funktion werden die Systembefehle dann erst ausgefuehrt.
*/
$Meldung = exec($SystemBefehl, $RueckgabeProgramm, $RueckgabeStatus);
/**
** Der rest hier erzeut nur mehr eine Aus-/Rueckgabe des Systembefehls, damit
** du siehst ob dieser auch ausgefuehrt wurde.
*//
echo "<br>".$Meldung."<br><br>";
if($RueckgabeStatus == 0)
{
    echo "<font color=\"green\"><pre>";
    print_r($RueckgabeProgramm);
    print_r($RueckgabeStatus);
    echo "</pre></font>";
}
?>
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh