PHP Doku:: Authenticate over SSH using a plain password - function.ssh2-auth-password.html

Verlauf / Chronik / History: (14) anzeigen

Sie sind hier:
Doku-StartseitePHP-HandbuchFunktionsreferenzSonstige DiensteSecure Shell2SSH2 Funktionenssh2_auth_password

Ein Service von Reinhard Neidl - Webprogrammierung.

SSH2 Funktionen

<<ssh2_auth_none

ssh2_auth_pubkey_file>>

ssh2_auth_password

(PECL ssh2 >= 0.9.0)

ssh2_auth_passwordAuthenticate over SSH using a plain password

Beschreibung

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

Authenticate over SSH using a plain password

Parameter-Liste

session

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

username

Remote user name.

password

Password for username

Rückgabewerte

Gibt bei Erfolg TRUE zurück. Im Fehlerfall wird FALSE zurückgegeben.

Beispiele

Beispiel #1 Authenticating with a password

<?php
$connection 
ssh2_connect('shell.example.com'22);

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


4 BenutzerBeiträge:
- Beiträge aktualisieren...
ammarmar at wp dot pl
14.03.2008 12: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
12.04.2007 0: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.08.2005 14: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.

6.06.2005 4: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



PHP Powered Diese Seite bei php.net
The PHP manual text and comments are covered by the Creative Commons Attribution 3.0 License © the PHP Documentation Group - Impressum - mail("TO:Reinhard Neidl",...)