The Server Pages
:: TSP Menu
- Home
- Authors
- Glossary
- RSS Feed

:: Servers
- CPanel
- Hosting
- Linux
- Windows

:: Webmaster
- Databases
- Design
- Search Engines

:: Scripts
- Scripts

:: Documentation
- PHP Manual

:: Other
- Errors & Solutions
- TechPunt
- Wojjie

search for in the

ssh2_auth_pubkey_file> <ssh2_auth_none
[edit] Last updated: Sat, 12 May 2012

view this page in


(PECL ssh2 >= 0.9.0)

ssh2_auth_passwordAuthenticate over SSH using a plain password


bool ssh2_auth_password ( resource $session , string $username , string $password )

Authenticate over SSH using a plain password



An SSH connection link identifier, obtained from a call to ssh2_connect().


Remote user name.


Password for username

Return Values

Returns TRUE on success or FALSE on failure.


Example #1 Authenticating with a password


if (
ssh2_auth_password($connection'username''secret')) {
"Authentication Successful!\n";
} else {
'Authentication Failed...');

ssh2_auth_pubkey_file> <ssh2_auth_none
[edit] Last updated: Sat, 12 May 2012
add a note add a note User Contributed Notes ssh2_auth_password
Abhishek Gupta (a dot guptagoa at gmail dot com) 17-Apr-2012 11:43
PECL SSH2 fork. ssh2_auth_password now supports keyboard_interactive method.

Use the following source:-

compilation method remains same
./configure --with-ssh2
make install
webdr at sonic dot net 17-Nov-2011 03:47
Looking for keyboard-interactive method support?
ammarmar at wp dot pl 14-Mar-2008 03:31
This function will only work if SSH server has 'password' authentication method enabled.

It won't work if only 'keyboard-interactive' is enabled (is there a way to override this in PHP?).

To check what methods of authentication are alowed, use ssh2_auth_none.
wally at soggysoftware dot co dot uk 11-Apr-2007 03:09
This function is useful for authenticating website clients against local (or remote) Unix users.

I'd played around with Apache+PAM, various mod_auths and homebrewed shell programs and even NIS, but to authenticate a user against a Unix shadow file fundamentally requires root priviledges, so either your PHP script needs root or an external program needs it's sticky bit set.  Both of these have *serious* security implications.

Using SSH, the overhead is obviously going to be greater but you're trusting a root service that's been (and continues to be) really well tested.  Just try authing with SSH against localhost (or another host if you want).
noels01 at gmx dot net 29-Aug-2005 05:56
Do not try to authenticate or log in more than once on a ssh2 connection. It won't work. You'll need a new connection via ssh2_connect() which will result in a poor performance if you're doing several connects to the same server.
05-Jun-2005 07:49
The sshd you are trying to connect to requires PasswordAuthentication yes in its sshd_config file.

Most normal SSH features work with this off, but this requires it on. Note, this defaults to off in FreeBSD 5.x

show source | credits | sitemap | contact | advertising | mirror sites