Home > Backend Development > PHP Tutorial > php ssh2扩展操作类

php ssh2扩展操作类

WBOY
Release: 2016-06-20 12:34:37
Original
1267 people have browsed it

php 的ssh2扩展可以找度娘

<?phpclass Ssh{    protected $host;    protected $user;    protected $password;    protected $connection;    protected $authMethods;    protected $data;    public function __construct($host, $user, $password)    {        $this->host = $host;        $this->user = $user;        $this->password = $password;        $this->connection = ssh2_connect ( $this->host, 22 );        if (! $this->connection)            die ( 'connection to ' . $host . ':22 failed' );                $this->auth_methods = ssh2_auth_none ( $this->connection, $this->user );    }        /**     * 执行shell命令     * @return code 101:认证失败      *                 102:通过password方式登录远程服务器失败     *                 103:shell命令执行失败     *                 200:操作成功     */    public function execShell($shell)    {        if (in_array ( 'password', $this->auth_methods ))        {            if (ssh2_auth_password ( $this->connection, $this->user, $this->password ))            {                $stream = ssh2_exec ( $this->connection, $shell ); // 执行php                stream_set_blocking ( $stream, true ); // 获取执行pwd后的内容                                if ($stream === FALSE)                {                    $this->data ['msg'] = 'shell命令执行失败';                }                else                {                    $this->data ['code'] = 200;                    $this->data ['msg'] = stream_get_contents ( $stream );                }            }            else            {                $this->data ['code'] = 102;                $this->data ['msg'] = '通过password方式登录远程服务器失败';            }        }        else        {            $this->data ['code'] = 101;            $this->data ['msg'] = '认证失败';        }                return $this->data;    }}$host='';$user='';$passwd='';$sshObj = new Ssh($host, $user, $passwd);$rs = $sshObj->execShell('pwd');var_dump($rs);
Copy after login


Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template