ssh per php

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • ssh per php

    hallo zusammen,

    ich weiß, dass mir sicherlich die boardsuche und stundenlanges lesen geholfen hätte. ich bin aber leider derzeit im überlsten zeitdruck. deswegen muss ich euch direkt fragen, und hoffe auf schnelle antworten. riesen dank im voraus:

    ich muss daten über ein php script via ssh tunnel von einem anderen server holen. beide server sind sich mittlerweile per authorized_keys und known_hosts bekannt und vertrauen sich. der ssh tunnel über konsole ist kein problem.

    nun die frage, wie kann ich über php den tunnel öffen, über den ssh-tunnel parameter an ein cgi (liegt auf dem entfernten server) senden und den standard-out empfangen?

    bin bei meiner suche schon auf erweiterungs-libs (für php) für ssh via php gestoßen. ist das die einzige bzw. beste möglichkeit? die lib wäre zeitaufwendig (da ich sie vertraglich nicht selbst installieren darf). gibt es eine genauso gute möglichkeit ohne erweiterung?

    lasst mich nicht verzweifeln?
    danke und gruß
    **********
    arkos
    **********

  • #2
    PHP-Code:
    $url'pfadangabe';
    $port 443;
    $socket fsockopen ('ssl://'.$url$port);
    if (
    $socket)
    {
       
    fputs ($socket$data);
      while (!
    feof ($socket)) $reply .= fread($socket,32000);
       
    fclose($socket);
       echo 
    $reply;

    ist ein auszug aus einen uralt-schnipsel von mir. vielleicht hilfst dir weiter

    gruß
    peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      danke kropff.
      damit hatte ich vorhin auch schon experimentiert... leider kommt folgende meldung:

      Warning: fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo failed: Name or service not known in /var/www/htdocs/test.php on line 6

      Warning: fsockopen() [function.fsockopen]: unable to connect to ssl://ip-adresse/cgi-script:443 (Unknown error) in /var/www/htdocs/test.php on line 6

      natürlich habe ich hier ip adresse und cgi_script ersetzt.
      wenn

      wenn ich in $url nur die ip reinpacke, bekomme ich ein:

      Warning: fsockopen() [function.fsockopen]: unable to connect to ssl://ip:443 (Connection timed out) in /var/www/htdocs/test.php on line 6

      wenn ich $port in den angeblich lauchenden port 80 des entfernten servers ändere bekomme ich selbiges...

      wären schimpfwort erlaubt, würd ich nun... aber das kennt ihr ja
      **********
      arkos
      **********

      Kommentar


      • #4
        Original geschrieben von arkos
        wenn ich in $url nur die ip reinpacke,
        Was heißt hier, "wenn"?

        Natürlich packst du da nur die IP oder den Hostnamen rein.
        bekomme ich ein:

        Warning: fsockopen() [function.fsockopen]: unable to connect to ssl://ip:443 (Connection timed out)
        Tja, ein Timeout ist doch wohl was eindeutiges.

        Kann dein PHP-Prozess vom Webserver theoretisch aus eine Verbindung zur Gegenstelle aufbauen, sprich ist da auch keine Firewall o.ä. davor?

        Und spricht die Gegenstelle wirklich "simples" SSL?
        sslv2/sslv3 kennt PHP ja auch noch ...
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          doch, da ist eine firewall vor. die lässt die ip des servers auf dem das script läuft aber durch.

          wenn ich über putty den ssh tunnel vom webserver zur gegenseite per ssh xxx.xxx.xxx.xxx (ip also) aufbaue läuft alles bestens...
          **********
          arkos
          **********

          Kommentar


          • #6
            zu simples ssl:
            das ganze wird n relaunch und die vorherigen anbieter haben die daten ebenfalls über ssh-tunnel geholt...

            protokoll 1
            **********
            arkos
            **********

            Kommentar


            • #7
              Hi,

              wieso redet ihr mal von ssh und mal von ssl ?
              Wenn es keine implementierung eines ssh-clients in php gibt, wie wärs
              dann das ganze mit dem auf dem system befindlichen ssh-client zu machen
              und php und den client über ipc reden zu lassen ?

              greets
              (((call/cc call/cc) (lambda (x) x)) "Scheme just rocks! and Ruby is magic!")

              Kommentar


              • #8
                klingt so, als hättest du erfahrungen damit. kennst du ein gutes tutorial / manual, was ich mir mal ansehen könnte?

                das ist für mich absolutes neuland...

                danke.
                **********
                arkos
                **********

                Kommentar


                • #9
                  Hi,

                  schau dir das mal an proc_open.

                  Ist ziemlich gut erklärt. Dann heisst es ausprobieren
                  Und nein ich hab keine große erfahrung was solche sachen in php angeht.

                  greets
                  (((call/cc call/cc) (lambda (x) x)) "Scheme just rocks! and Ruby is magic!")

                  Kommentar


                  • #10
                    danke, werde ich mir mal ansehen...
                    **********
                    arkos
                    **********

                    Kommentar

                    Lädt...
                    X