
ssh2_methods_negotiated 변수는 SSH2 프로토콜의 메소드_negotiated 값을 나타내는 변수입니다. SSH2 프로토콜은 클라이언트와 서버 간에 데이터를 전송할 때 사용하는 프로토콜입니다.
ssh2_methods_negotiated 변수의 가능한 값은 다음과 같습니다.
- SSH2_METHOD_NONE : SSH2 프로토콜의 메소드_negotiated 값이 설정되지 않은 경우
- SSH2_METHOD_EXT_INFO : SSH2 프로토콜의 메소드_negotiated 값이 EXT_INFO 메소드인 경우
- SSH2_METHOD_EXT_SHELL : SSH2 프로토콜의 메소드_negotiated 값이 EXT_SHELL 메소드인 경우
- SSH2_METHOD_EXT_SFTP : SSH2 프로토콜의 메소드_negotiated 값이 EXT_SFTP 메소드인 경우
- SSH2_METHOD_EXT_SFTPv2 : SSH2 프로토콜의 메소드_negotiated 값이 EXT_SFTPv2 메소드인 경우
- SSH2_METHOD_EXT_SFTPv3 : SSH2 프로토콜의 메소드_negotiated 값이 EXT_SFTPv3 메소드인 경우
- SSH2_METHOD_EXT_SFTPv4 : SSH2 프로토콜의 메소드_negotiated 값이 EXT_SFTPv4 메소드인 경우
- SSH2_METHOD_EXT_SFTPv5 : SSH2 프로토콜의 메소드_negotiated 값이 EXT_SFTPv5 메소드인 경우
- SSH2_METHOD_EXT_SFTPv6 : SSH2 프로토콜의 메소드_negotiated 값이 EXT_SFTPv6 메소드인 경우
- SSH2_METHOD_EXT_SFTPv7 : SSH2 프로토콜의 메소드_negotiated 값이 EXT_SFTPv7 메소드인 경우
ssh2_methods_negotiated 변수를 사용할 때는 SSH2 프로토콜의 메소드_negotiated 값을 확인할 때 사용합니다. 예를 들어, SSH2 프로토콜의 메소드_negotiated 값이 EXT_SFTP 인 경우, ssh2_methods_negotiated 변수의 값은 SSH2_METHOD_EXT_SFTP 이 됩니다.
ssh2_methods_negotiated 변수를 사용하지 말아야 할 때는 SSH2 프로토콜의 메소드_negotiated 값을 확인할 필요가 없는 경우입니다. 예를 들어, SSH2 프로토콜의 메소드_negotiated 값이 설정되지 않은 경우, ssh2_methods_negotiated 변수의 값은 SSH2_METHOD_NONE 이 됩니다.
ssh2_methods_negotiated 변수와 관련된 예제는 다음과 같습니다.
#hostingforum.kr
php
<?php
$ssh = ssh2_connect('example.com', 22);
ssh2_auth_password($ssh, 'username', 'password');
$methods = ssh2_methods_negotiated($ssh);
echo "SSH2 프로토콜의 메소드_negotiated 값: $methodsn";
if ($methods == SSH2_METHOD_EXT_SFTP) {
echo "EXT_SFTP 메소드가 negotiated되었습니다.n";
} elseif ($methods == SSH2_METHOD_EXT_SHELL) {
echo "EXT_SHELL 메소드가 negotiated되었습니다.n";
} else {
echo "EXT_SFTP 또는 EXT_SHELL 메소드가 negotiated되지 않았습니다.n";
}
?>
이 예제에서는 ssh2_methods_negotiated 함수를 사용하여 SSH2 프로토콜의 메소드_negotiated 값을 확인하고, 그에 따라 다른 메시지를 출력합니다.
2025-06-17 12:21