PHP使用rsa密钥执行远程ssh命令身份验证并传递带引号的参数

时间:2018-07-11 20:25:55

标签: php ssh shell-exec

我需要使用ssh在远程服务器上运行命令。我只能使用rsa密钥进行身份验证,并且需要将PHP变量传递给远程脚本。我已经很接近解决方案了,但是必须引用几个参数。这是我最好的方法:

$output = shell_exec("ssh root@<IP-addr> \"cd dns; ./nsadd.sh -t prod -v lm -h $hostname -i $min_ip_produzione -c $cname -d $descr");

问题带有$ desc变量,该变量必须是自由文本字符串,必须用引号引起来。

我尝试了以下两种方法,但都没有成功:

$output = shell_exec("ssh root@<IP-addr> \"cd dns; ./nsadd.sh -t prod -v lm -h $hostname -i $min_ip_produzione -c $cname -d \"$descr\"");

$tmp="\"".$desc;

$comment=$tmp."\"";

$output = shell_exec("ssh root@<IP-addr> \"cd dns; ./nsadd.sh -t prod -v lm -h $hostname -i $min_ip_produzione -c $cname -d $comment");

预先感谢您的帮助。

0 个答案:

没有答案