Zum Inhalt springen

Aufruf externer Programme


Empfohlene Beiträge

Hallo Leute,

ich habe folgendes Problem und zwar arbeite ich in meiner firma im intranet. ich entwickel dort eine webanwendung mit einem javascript framework was sich extjs schimpft. ich hab 2 buttons eingefügt, die einmal eine SSH verbindung und einmal eine Telnet verbindung zu einem switch aufbauen sollen. Das problem ist, wie bekomme ich es hin, dass ich jetzt auf den button klicke und er mich mit dem gerät verbindet quasi ein externes programm aufruft wie z.B. Putty(darüber können SSH und Telnet verbindungen aufgebaut werden).

Kurz gesagt aus dem Browser heraus ein externes Programm aufrufen (exe-datei).

Wäre toll wenn ihr mir helfen könntet=)

danke im voraus

Link zu diesem Kommentar
Auf anderen Seiten teilen

Bin in Javascript zwar nicht sonderlich bewandert (eher ein Framework-Nutzer), aber trotzdem eine kleine Gedankenskizze: es ist möglich, für SSH einen "URL-Handler" zu definieren, sodass sich beispielsweise beim Aufruf von ssh://127.0.0.1 automatisch Putty öffnet. Ist das eingerichtet, könnte sich das doch rein theroretisch per Javascript ansprechen lassen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Java Script != Java, deshalb verschiebe ich das mal.

@Topic: JavaScript läuft im Context des Browsers und ist dort gesondert in der Sandbox isoliert, d.h. Du wirst via JavaScript keine externen Programme aufrufen können.

Das kann man so heute nicht mehr sagen!

Es gibt durchaus auch schon serverseitiges JS:

Node.js - Wikipedia, the free encyclopedia

Server-side JavaScript - Wikipedia, the free encyclopedia

und quasi ganz aktuell:

CRE167 node.js - Chaosradio Podcast Network

Link zu diesem Kommentar
Auf anderen Seiten teilen

@lilith2k3: Das ist aber nicht JavaScript alleine, denn es benötigt auf dem Server einen entsprechenden Interpreter (den ich erst kompilieren und installieren muss). Erst wenn der Interpreter vorhanden ist, kann ich serverseitig JavaScript ausführen. JavaScript selbst braucht nun mal einen Interpreter und in dem Fall des OPs ist dieser Interpreter auf dem Client zu finden, d.h. im Context des Browser, weil dort der Interpreter läuft

Bearbeitet von flashpixx
Link zu diesem Kommentar
Auf anderen Seiten teilen

hey leute. danke für die antworten! ok ich werde mal mit dem admin meins betriebes darüber sprechen javascript serverseitig zu installieren und werd das nehmen was hier vorgeschlagen wurde.

nur ich muss halt aus der webanwendung ssh und telnet öffnen egal wie. muss nicht unbedingt per putty sein aber hätte es mir gewünscht.

also falls ihr möglichkeiten kennt telnet und ssh aufzurufen ohne putty dann nennt sie mir bitte=)

Mfg:)

Link zu diesem Kommentar
Auf anderen Seiten teilen

hey leute. danke für die antworten! ok ich werde mal mit dem admin meins betriebes darüber sprechen javascript serverseitig zu installieren und werd das nehmen was hier vorgeschlagen wurde.

Das nützt Dir relativ wenig auf einem Server ein JavaScript zu starten, denn Du willst ja eine SSH / Telnet Session vom Client zu einem Server aufbauen. Was willst Du denn mit JS auf dem Server erreichen? Du startest evtl eine SSH Session und dann? Der User wird dort nicht herankommen.

nur ich muss halt aus der webanwendung ssh und telnet öffnen egal wie. muss nicht unbedingt per putty sein aber hätte es mir gewünscht.

Du wirst nicht einfach so auf einem Client via Browser ein Programm öffnen können. Das ist aus guten Grund nicht möglich, denn es würde ein Sicherheitsrisiko sein.

Diese "Fernsteuerung" von einer Anwendung via Browser halte ich fachlich für eine völlig mangelhafte Projektplanung.

Link zu diesem Kommentar
Auf anderen Seiten teilen

@lilith2k3: Das ist aber nicht JavaScript alleine, denn es benötigt auf dem Server einen entsprechenden Interpreter (den ich erst kompilieren und installieren muss). Erst wenn der Interpreter vorhanden ist, kann ich serverseitig JavaScript ausführen. JavaScript selbst braucht nun mal einen Interpreter und in dem Fall des OPs ist dieser Interpreter auf dem Client zu finden, d.h. im Context des Browser, weil dort der Interpreter läuft

Es ist natürlich nicht JS alleine - ist PHP ja schließlich auch nicht, oder Ruby On Rails oder oder oder;) Auf dem Client hat es eben den Browser als Umgebung und mit node.js nutzt Du eben V8. Es ist nicht allein auf den Browser beschränkt. Und das wollte ich ergänzen ^^

Btw. gibt es beispielsweise http://www.serfish.com/console/ als web-based SSH-Client.

Oder http://antony.lesuisse.org/software/ajaxterm/

http://anyterm.org/index.html

Das ist wohl das, was der TO sucht :]

Bearbeitet von lilith2k3
Link zu diesem Kommentar
Auf anderen Seiten teilen

Also muss ich was downloaden und kann das dann aufn server installieren und sobald ich auf den server zugreife führt er das script oder programm jenachdem was es nun ist aus?

hoffe der admin macht da mit weil so eine installieren ist ein heickles thema^^

aber ich danke aufjedenfall schonmal für die unterstützung es hat mich schon weiter gerbacht. sonst liest man überall nur so standardkram den jeder weiß von wegen ja js läuft aufm client und php aufn server blabla. dat weiß doch jeder mensch:)

naja vielen dank erstmal

Mfg

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also muss ich was downloaden und kann das dann aufn server installieren und sobald ich auf den server zugreife führt er das script oder programm jenachdem was es nun ist aus?

hoffe der admin macht da mit weil so eine installieren ist ein heickles thema^^

Sorry, wenn ich das lese, schlag ich die Hände über dem Kopf zusammen. Man sollte nie irgendwas downloaden und installieren und schon mal gar nicht auf einem Server.

Ich frage wo der Sinn dieser Sache sein soll. Wenn ich als Anwender eine SSH oder Telnet Verbindung aufbauen will, dann starte ich einen passenden Client auf meinem System. Telnet sollte man eh nicht mehr benutzen, da es unverschlüsselt ist.

Link zu diesem Kommentar
Auf anderen Seiten teilen

lilith2k3 hat 3 seiten gepostet auf denen man was downloaden kann und dann installieren deswegen habe ich das geschrieben^^

du musst dir meine anwendung so vorstellen:

du hast eine Weboberfläche mit 2 Buttons. Der eine Button soll eine Verbindung mit einem entfernte switch herstellen über telnet und der 2 button genau dasselbe nur mit einer verschlüsselten verbindung sprich ssh.

ich will also über telnet bzw über ssh eine verbindung zu einem entfernten switch aufbauen. Und das sollen meine Mitarbeiter über die weboberfläche machen können ohne extra putty oder so zu benutzen, da in der weboberfläche ja auch das verhalten der switche gemonitored wird^^

Link zu diesem Kommentar
Auf anderen Seiten teilen

lilith2k3 hat 3 seiten gepostet auf denen man was downloaden kann und dann installieren deswegen habe ich das geschrieben^^

nur, weil man etwas downloaden kann, ist das noch lange nicht, das was Du überhaupt verwenden kannst!

du hast eine Weboberfläche mit 2 Buttons. Der eine Button soll eine Verbindung mit einem entfernte switch herstellen über telnet und der 2 button genau dasselbe nur mit einer verschlüsselten verbindung sprich ssh.

Wenn Deine Webseite nicht SSL geschützt ist, dann holst Du Dir ein massives Sicherheitsrisiko mit hinein, denn dann kann man leicht die Daten manipulieren. Der zweite Punkt ist, eine Telnetverbindung kann man leicht über Sockets direkt in PHP nachbilden, so dass Du lediglich die Spezifikation des Switches bzw des dort eingesetzten Protokolls benötigst.

Damit brauchst Du einen Telnetclient nicht als eigenständiges Programm.

Gleiches würde für eine SSH Verbindung gelten, wobei hier aber noch die Authentifizierung eine Rolle spielt.

Ich halte das Vorgehen generell für fahrlässig, denn wenn man mal schnell per Weboberfläche an einem Switch arbeiten kann und das im Netz eine zentrale Komponente ist, dann ist die Gefahr für Fehler oder auch Fehler in der Weboberfläche, die Sicherheitslücken aufwerfen, recht hoch. Eine zentrale Netzwerkkomponente sollte nicht mal "schnell" administriert werden, sondern man sollte eben genau die Hürde mit einem eigenen Client beibehalten, damit einem bewusst ist, dass Fehler eben Folgen haben können. Vor allem kann man entsprechende Regeln implementieren, so dass nicht jeder im Netz schon eine Verbindung zu dem Switch aufbauen kann.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Cool das Stichwort mit den PHP Sockets lenkt mich in eine neue richtung. werd ich mal ausprobieren (der arbeitstag geht ja noch paar stunden :P) viele dank!

naja es wird ja nicht über das internet gemacht sondern die weboberfläche befindet sich im intranet. und wenn eine verbindung zu einem switch aufgebaut wird dann ist eh eine passwortabfrage vorhanden, da cisco switche immer nach benutzername bzw passwort fragen. und das mit dem intranet ist auch so eine sache, denn hier wo ich arbeite ist quasi ein autonomes netz, von 30 mitarbeitern oder so und das heißt von aussen kann per internet oder sonst etwas nciht drauf zugegriffen werden.^^

aber danke schonmal für den tipp mit den sockets:)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...