A extensão ssh2 para PHP permite que conexões à servidores SSH sejam estabelecidas, sendo assim, scripts PHP ganham a funcionalidade de conectarem-se em outros servidores e executem comandos nestes servidores. É possível também utilizar uma função semelhante ao comando “scp”, para a transferência de arquivos.
** Eu não fiz um script que utilize essa extensão, apenas a instalei aqui no ambiente de teste que tenho no meu trabalho. Sendo assim, faltará um exemplo 😦
Geralmente esta extensão pode ser instalada com o comando “pecl” . Caso não saiba onde se encontra o comando execute:
whereis pecl
O comando acima retornará a a localização exata do pecl. Para instalá-lo no sistema execute:
pecl install ssh2
Cas o retorno do comando acima seja parecido com o texto abaixo:
Failed to download pecl/ssh2 within preferred state “stable”, latest release is version 0.11.0, stability “beta”, use “channel://pecl.php.net/ssh2-0.11.0” to install
Cannot initialize ‘ssh2’, invalid or missing package file
Package “ssh2” is not valid
install failed
Você deve executar:
pecl install ssh2 channel://pecl.php.net/ssh2-0.11.0
Se mesmo assim o comando retornar um erro parecido com o texto abaixo:
checking for ssh2 files in default path… not found
configure: error: The required libssh2 library was not found. You can obtain that package from http://sourceforge.net/projects/libssh2/
Significa que devemos instalar algumas dependências para que a compilação possa ser executada corretamente, abaixo os comandos necessários:
yum install libssh2 libssh2-devel
Com os pacotes devidamente instalados é hora, finalmente, de instalar a extensão:
pecl install ssh2 channel://pecl.php.net/ssh2-0.11.0
O processo de instalação será executado com sucesso se uma mensagem semelhante com a apresentada abaixo for exibida:
Build process completed successfully
Installing ‘/usr/local/lib/php/extensions/no-debug-non-zts-20020429/ssh2.so’
install ok: channel://pear.php.net/ssh2-0.11.0
O processo não termina por ai, é necessário ainda ativar esta extensão no “php.ini” , para descobrir onde o arquivo php.ini está localizado execute:
php -i | grep -i “configuration file”
O retorno abaixo deverá ser apresentado:
Configuration File (php.ini) Path => /etc/php.ini
Abra o arquivo para edição e procure a região do arquivo onde as extensões são declaradas, após encontrá-la adicione a seguinte linha:
extension=ssh2.so
Feito isso execute :
php -i
e confira se a extensão está disponível.
Acho que os passo acima são suficientes. Good luck !!
Filed under: Sem categoria |
Funcionou certinho, vlw a dica!