SSH2 ssh2_auth_pubkey_file

(PECL ssh2 >= 0.9.0)

ssh2_auth_pubkey_file — 공개 키를 사용하여 인증


설명

ssh2_auth_pubkey_file(
    resource $session,
    string $username,
    string $pubkeyfile,
    string $privkeyfile,
    string $passphrase = ?
): bool
                

파일에서 읽은 공개 키를 사용하여 인증합니다.


매개변수

session
ssh2_connect() 호출에서 얻은 SSH 연결 링크 식별자입니다.
username
pubkeyfile
공개 키 파일은 OpenSSH 형식이어야 합니다. 다음과 같아야 합니다.

ssh-rsa AAAAB3NzaC1yc2EAAA....NX6sqSnHA8= rsa-key-20121110

privkeyfile
passphrase
privkeyfile이 암호화된 경우(그렇어야 함) passphrase를 제공해야 합니다.

반환 값

성공하면 true를, 실패하면 false를 반환합니다.


Examples

예제 #1 공개 키를 사용한 인증

                  
<?php
$connection = ssh2_connect('shell.example.com', 22, array('hostkey'=>'ssh-rsa'));

if (ssh2_auth_pubkey_file($connection, 'username',
                          '/home/username/.ssh/id_rsa.pub',
                          '/home/username/.ssh/id_rsa', 'secret')) {
  echo "Public Key Authentication Successful\n";
} else {
  die('Public Key Authentication Failed');
}
?>
                  
                

메모

메모: 기본 libssh 라이브러리는 부분 인증을 매우 명확하게 지원하지 않습니다. 즉, 공개 키와 암호를 모두 제공해야 하는 경우 이 함수는 실패한 것처럼 나타납니다. 이 특별한 경우 이 호출의 실패는 인증이 아직 완료되지 않았음을 의미할 수 있습니다. 이 실패를 무시하고 계속해서 인증을 완료하려면 ssh2_auth_password()를 호출해야 합니다.