在PHP中调用php_ssh实现远程登陆linux服务器并执行shell脚本。
这个功能主要用于在web端利用程序对远程服务器进行操作,通过PHP_ssh执行shell脚本来实现。
首先要安装php_ssh2组件,linux中centos7下有ssh2源,直接安装。window下则需要自行下载dll组件加载,具体方法自行搜索。
安装完毕后就可以在PHP写执行shell脚本的程序了
$ssh_user='root'; //登陆linux的ssh2用户名 $ssh_pwd='********'; //登陆linux的密码 $ssh_port='22'; //端口号22 $ssh_host='192.168.0.100'; //服务器IP地址 //先测试拓展是否安装并开启 if(!function_exists("ssh2_connect")){ exit('SSH扩展没有安装或者没有安装成功'); } //建立ssh2连接 $ssh2 = ssh2_connect($ssh_host, $ssh_port); if(!$ssh2){ exit('连接服务器失败'); }else{ echo '成功连接上了服务器'; } //连接成功后进行密码验证,没验证无法进行其他操作。 if(!ssh2_auth_password( $ssh2, $ssh_user, $ssh_pwd )){ return false; }
成功连接,并且通过密码验证后就可以进行shell脚本的操作了,下面来一些简单的,例如建立一个文件夹。
$e="mkdir -m 777 /var/www/html/test"; //shell脚本语句 ssh2_exec($ssh2, $e); //通过ssh2_exec执行语句