Łączenie się do SSH w PHP

MTGmati | 2021-02-17 10:25:46 UTC | #1

Jak mogę połączyć się do SSH za pomocą PHP aby wysłać polecenie uruchamiające skript?


Infinity | 2018-02-18 07:33:14 UTC | #2

PHP ma funkcje:

shell_exec("ADRES SKRYPTU.sh");

Możesz mieć ją wyłączoną, w konfiguracji PHP.


skilx | 2018-02-18 09:22:30 UTC | #3

O ile masz na myśli połączenie z zewnętrznym serwerem, to może ci pomóc:

$serwer = “IP”;
$login = “NAZWA UŻYTKOWNIKA”;
$haslo = “HASŁO DO UŻYTKOWNIKA”;
$komenda = ‘KOMENDA DO WYKONANIA’
$polaczenie = ssh2connect($serwer, 22);
ssh2
authpassword($polaczenie, $login, $haslo);
$stream = ssh2
exec($polaczenie, $komenda);
streamsetblocking($stream, true);
$wynik = streamgetcontents($stream);

Ta metoda potrzbuję rozszerzenia SSH2 od PHP.

apt-get install php-ssh2


MTGmati | 2018-02-18 18:08:22 UTC | #4

Otrzymuje następujący błąd:
PHP Parse error: syntax error, unexpected '$polaczenie' (T_VARIABLE)


skilx | 2018-02-18 18:44:53 UTC | #5

Ups, mała poprawka. Zapomniałem ’ ; ’ na jednej linice. (Ciężko pisać kod telefonem )
Oto poprawny kod:

$serwer = “IP”;
$login = “NAZWA UŻYTKOWNIKA”;
$haslo = “HASŁO DO UŻYTKOWNIKA”;
$komenda = ‘KOMENDA DO WYKONANIA’;
$polaczenie = ssh2connect($serwer, 22);
ssh2
authpassword($polaczenie, $login, $haslo);
$stream = ssh2
exec($polaczenie, $komenda);
streamsetblocking($stream, true);
$wynik = streamgetcontents($stream);


MTGmati | 2018-02-18 18:57:53 UTC | #6

Poprawiłem i mam następujący błąd:
1. PHP Warning: ssh2_exec(): Connection not authenticated in
2. PHP Warning: stream_set_blocking() expects parameter 1 to be resource, boolean given


skilx | 2018-02-18 21:46:26 UTC | #7

:thinking: … :thinking: :thinking: …

Zauważyłem że forum koduję znak ’ ’ na ’ ’ znak podczas pisania kodu jako cytat.
Uwież mi jest różnica.
Zostawię to panu @SystemZ do rozwiązania.

Tutaj masz najprawdopodobnie działający kod :joy:
https://pastebin.com/raw/nxvBXHi6


Nieznajomy11 | 2018-02-19 06:03:51 UTC | #8

bo ty pakujesz kod w cytat, to nie działa :wink:

musisz zrobić tak:
```php
kod
```


system | 2021-02-17 10:25:53 UTC | #9

Ten temat został automatycznie zamknięty 32 dni po ostatnim wpisie. Tworzenie nowych odpowiedzi nie jest już możliwe.