ssh2://

ssh2://Secure Shell 2

Beschreibung

ssh2.shell:// ssh2.exec:// ssh2.tunnel:// ssh2.sftp:// ssh2.scp:// (PECL)

Hinweis: This wrapper is not enabled by default
In order to use the ssh2.*:// wrappers you must install the » SSH2 extension available from » PECL.

In addition to accepting traditional URI login details, the ssh2 wrappers will also reuse open connections by passing the connection resource in the host portion of the URL.

Verwendung

  • ssh2.shell://user:pass@example.com:22/xterm
  • ssh2.exec://user:pass@example.com:22/usr/local/bin/somecmd
  • ssh2.tunnel://user:pass@example.com:22/192.168.0.1:14
  • ssh2.sftp://user:pass@example.com:22/path/to/filename

Optionen

Wrapper Summary
Attribute ssh2.shell ssh2.exec ssh2.tunnel ssh2.sftp ssh2.scp
Restricted by allow_url_fopen Yes Yes Yes Yes Yes
Allows Reading Yes Yes Yes Yes Yes
Allows Writing Yes Yes Yes Yes No
Allows Appending No No No Yes (When supported by server) No
Allows Simultaneous Reading and Writing Yes Yes Yes Yes No
Supports stat() No No No Yes No
Supports unlink() No No No Yes No
Supports rename() No No No Yes No
Supports mkdir() No No No Yes No
Supports rmdir() No No No Yes No

Context options
Name Usage Default
session Preconnected ssh2 resource to be reused  
sftp Preallocated sftp resource to be reused  
methods Key exchange, hostkey, cipher, compression, and MAC methods to use  
callbacks    
username Username to connect as  
password Password to use with password authentication  
pubkey_file Name of public key file to use for authentication  
privkey_file Name of private key file to use for authentication  
env Associate array of environment variables to set  
term Terminal emulation type to request when allocating a pty  
term_width Width of terminal requested when allocating a pty  
term_height Height of terminal requested when allocating a pty  
term_units Units to use with term_width and term_height SSH2_TERM_UNIT_CHARS

Beispiele

Beispiel #1 Opening a stream from an active connection

<?php
$session 
ssh2_connect('example.com'22);
ssh2_auth_pubkey_file($session'username''/home/username/.ssh/id_rsa.pub',
                                            
'/home/username/.ssh/id_rsa''secret');
$stream fopen("ssh2.tunnel://$session/remote.example.com:1234"'r');
?>

Beispiel #2 This $session variable must be kept available!

In order to use the ssh2.*://$session wrappers you must keep the $session resource variable. The code below will not have the desired effect:

<?php
$session 
ssh2_connect('example.com'22);
ssh2_auth_pubkey_file($session'username''/home/username/.ssh/id_rsa.pub',
                                            
'/home/username/.ssh/id_rsa''secret');
$connection_string "ssh2.sftp://$session/";
unset(
$session);
$stream fopen($connection_string "path/to/file"'r');
?>

unset() closes the session, because $connection_string does not hold a reference to the $session variable, just a string cast derived from it. This also happens when the unset() is implicit because of leaving scope (like in a function).

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe
Es sind noch keine Kommentare vorhanden.

Was genau bedeutet "Vibe Coding"? Ein tiefgehender Blick für Entwickler

In der Welt der Softwareentwicklung gibt es unzählige Wege, wie man an ein Projekt herangeht. Manche schwören auf strikte Planung, andere auf bewährte Algorithmen und wieder andere lassen sich von etwas ganz anderem leiten: ihrem Gefühl. ...

admin

Autor : admin
Kategorie: Software & Web-Development

PHP cURL-Tutorial: Verwendung von cURL zum Durchführen von HTTP-Anfragen

cURL ist eine leistungsstarke PHP-Erweiterung, die es Ihnen ermöglicht, mit verschiedenen Servern über verschiedene Protokolle wie HTTP, HTTPS, FTP und mehr zu kommunizieren. ...

TheMax

Autor : TheMax
Kategorie: PHP-Tutorials

Midjourney Tutorial - Anleitung für Anfänger

Über Midjourney, dem Tool zur Erstellung digitaler Bilder mithilfe von künstlicher Intelligenz, gibt es ein informatives Video mit dem Titel "Midjourney Tutorial auf Deutsch - Anleitung für Anfänger" ...

Mike94

Autor : Mike94
Kategorie: KI Tutorials

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen

Best practices for PHP in 2025?

I’ve been working with PHP for a while, but I’m curious about the community’s thoughts: What do you think are the most important best pract ...

Geschrieben von helen9k am 08.09.2025 03:49:25
Forum: Ankündigungen
How do you keep up with PHP and Database updates?

Hello everyone, PHP and database systems (MySQL, PostgreSQL, etc.) are evolving so quickly. Sometimes it feels hard to stay updated with new vers ...

Geschrieben von helen9k am 06.09.2025 10:35:52
Forum: Ankündigungen
Best Way to Handle Millions of Rows in MySQL – Indexing vs Partitioning?

Hi everyone, I’m working with a MySQL table that already has several million rows, and performance is starting to slow down (queries and joins ...

Geschrieben von helen9k am 06.09.2025 10:31:12
Forum: SQL / Datenbanken
Best Practices for Handling User Login and Session Security in PHP

Hi everyone, I’ve been working on a small PHP project with user login functionality, and I want to make sure I’m following good practices for ...

Geschrieben von helen9k am 06.09.2025 09:39:26
Forum: PHP Developer Forum