Re: Hoping for a working example of SFTP in PHP

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I was mainly interested in the last two file_get_contents() calls. If there was some sort of a permission issue the script should have output one or two error messages. But since that's not the case, then probably your script can read the keys just fine, and the issue is elsewhere. I can also tell that the process that executes the php script runs under the user SYSTEM (which is not that helpful).

Some more info I found (which you've probably read already)

"The prerequisite that you mention, namely the pubkey file not to have any comments and not even have a trailing newline is incorrect (and the newline thingy absurd when you think it through).

If your scriptfails, you have prob. sooner stumbled into the ssh2 bug that makes ssh2 fail when it is compiled wuth libgcrypt instead of openssl. The workaround is to create a PEM formatted copy of your private key file in PEM format with openssl:

~/.ssh> openssl rsa -in id_rsa -out id_rsa.pem
Then, in ssh2_auth_pubkey_file() in your PHP script, use id_rsa.pem as privkey file instead of id_rsa, and omit the passphrase. That should make it work."

from here https://stackoverflow.com/questions/11007090/php-ssh2-auth-pubkey-file-authentication-failed-using-public-key-invalid-key/20730073

Maybe give that a go as well.

 

On Tue, Feb 2, 2021 at 1:36 PM David Spector <david025@xxxxxxxxxxxxxxxxxxxxxx> wrote:
Stefan, I ran your program with w.pub and w.key, two of the local keys I
have been testing with. My main question right now is what format
ssh2_auth_pubkey_file expects the public and private keys to have. There
are many formats for key files.

My w.pub starts with

-----BEGIN RSA PUBLIC KEY-----

and my w1.pub starts with

ssh-rsa

Anyway, here is the output of your program:

====
SYSTEM
0

Array
(
     [0] => 1492101109
     [1] => 28991922601259292
     [2] => 33206
     [3] => 1
     [4] => 0
     [5] => 0
     [6] => 0
     [7] => 426
     [8] => 1612210905
     [9] => 1612210511
     [10] => 1612209151
     [11] => -1
     [12] => -1
     [dev] => 1492101109
     [ino] => 28991922601259292
     [mode] => 33206
     [nlink] => 1
     [uid] => 0
     [gid] => 0
     [rdev] => 0
     [size] => 426
     [atime] => 1612210905
     [mtime] => 1612210511
     [ctime] => 1612209151
     [blksize] => -1
     [blocks] => -1
)

Array
(
     [0] => 1492101109
     [1] => 29836347531409753
     [2] => 33206
     [3] => 1
     [4] => 0
     [5] => 0
     [6] => 0
     [7] => 1766
     [8] => 1612213452
     [9] => 1612209076
     [10] => 1612209151
     [11] => -1
     [12] => -1
     [dev] => 1492101109
     [ino] => 29836347531409753
     [mode] => 33206
     [nlink] => 1
     [uid] => 0
     [gid] => 0
     [rdev] => 0
     [size] => 1766
     [atime] => 1612213452
     [mtime] => 1612209076
     [ctime] => 1612209151
     [blksize] => -1
     [blocks] => -1
)
====

Please tell me what this output means to you.

David

[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux