>  기사  >  백엔드 개발  >  PHP가 ssh2 기술을 사용하여 원격 로그인을 달성하고 서버에서 프로그램을 작동하는 방법에 대한 자세한 설명

PHP가 ssh2 기술을 사용하여 원격 로그인을 달성하고 서버에서 프로그램을 작동하는 방법에 대한 자세한 설명

零到壹度
零到壹度원래의
2018-03-22 09:53:322306검색

제 작업은 Linux 측에서 실행되는 소프트웨어의 시각화가 필요하기 때문에 웹 기반으로 시각화할 계획입니다. 문제는 플랫폼 전반에 걸쳐 웹과 Linux의 소프트웨어를 원활하게 연결하는 방법입니다. 다행히 SSH2 기술을 사용하여 요구 사항을 충족할 수 있는 방법을 찾았습니다.

제 경우는 아래와 같습니다.

먼저 Linux 측에 ssh2 패키지를 설치한 후 Linux 명령을 실행하고 Linux 측 프로그램을 실행해야 하는 페이지에 다음 코드를 추가합니다.

<?php
$host=&#39;*******&#39;;//服务器的ip
$user=&#39;****&#39;;//用户名
$passwd=&#39;******&#39;;//密码
// 链接远程服务器
$connection = ssh2_connect($host, 22);
if (!$connection) die(&#39;connection to &#39;.$host.&#39;:22 failed&#39;);
echo &#39;connection OK<br/>&#39;;
// 获取验证方式并打印
$auth_methods = ssh2_auth_none($connection, $user);
print_r( $auth_methods.&#39;<br/>&#39;);
if (in_array(&#39;password&#39;, $auth_methods ))
{
// 通过password方式登录远程服务器
if (ssh2_auth_password($connection, $user, $passwd))
{
echo $user.&#39; login OK<br/>&#39;;
$stream = ssh2_exec($connection, "命令1&&命令2"); // 一条一条地执行linux命令
stream_set_blocking($stream, true); // 获取执行pwd后的内容
if ($stream === FALSE) die("pwd failed");
echo stream_get_contents($stream).&#39;<br/>&#39;;
}
else
{
die( $user.&#39; login Failed<br/>&#39;);
}
}
?>

개인 테스트 결과 작동했습니다.

관련 권장 사항:

java는 ssh2 프로토콜을 사용하여 원격으로 로그인합니다.

SSH2 원격 로그인 후 자동으로 스크립트를 실행하는 방법

위 내용은 PHP가 ssh2 기술을 사용하여 원격 로그인을 달성하고 서버에서 프로그램을 작동하는 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.