加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php执行scp主机密钥验证失败

发布时间:2020-12-13 22:47:37 所属栏目:PHP教程 来源:网络整理
导读:我正在尝试使用scp来复制文件.我使用 PHP的命令shell_exec来执行此命令: scp -i/home/raul/nueva_clave -q -v /home/raul/www/CA/app/tmp/ImagenWeb TA-adm@127.0.0.1:/home/TA-adm/images/IMG_3846.JPG 21 服务器地址是127.0.0.1,因为我还在开发脚本.我稍
我正在尝试使用scp来复制文件.我使用 PHP的命令shell_exec来执行此命令:

scp -i/home/raul/nueva_clave -q -v /home/raul/www/CA/app/tmp/ImagenWeb TA-adm@127.0.0.1:/home/TA-adm/images/IMG_3846.JPG 2>&1

服务器地址是127.0.0.1,因为我还在开发脚本.我稍后会改变它.

我正在使用scp而不是PHP的ssh2_scp_send,因为我不想在我的proyect中写入服务器的密码.相反,我想使用公钥.但是当我在PHP中执行时,这就是结果:

Executing: program /usr/bin/ssh host 127.0.0.1,user TA-adm,command scp -v -t -- /home/TA-adm/images/IMG_3846.JPG
OpenSSH_5.9p1 Debian-5ubuntu1,OpenSSL 1.0.1 14 Mar 2012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to 127.0.0.1 [127.0.0.1] port 22.
debug1: Connection established.
debug1: SELinux support disabled
Could not create directory '/nonexistent/.ssh'.
debug1: identity file /home/raul/nueva_clave type 1
debug1: Checking blacklist file /usr/share/ssh/blacklist.RSA-2048
debug1: Checking blacklist file /etc/ssh/blacklist.RSA-2048
debug1: identity file /home/raul/nueva_clave-cert type -1
debug1: Remote protocol version 2.0,remote software version OpenSSH_5.9p1 Debian-5ubuntu1
debug1: match: OpenSSH_5.9p1 Debian-5ubuntu1 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.9p1 Debian-5ubuntu1
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: sending SSH2_MSG_KEX_ECDH_INIT
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ECDSA 2d:71:67:30:89:c0:1a:64:41:b5:07:8f:6d:c5:9f:13
debug1: read_passphrase: can't open /dev/tty: No such device or address
Host key verification failed.
lost connection

如果我在终端中与我的用户执行此命令,我没有问题.我想问题是用户没人正在执行scp.我正在使用Ubuntu.

解决方法

(OP在一个问题编辑中回答.移到这里.见 Question with no answers,but issue solved in the comments (or extended in chat))

OP写道:

It’s SOLVED. I’ve used the options:

-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no

so the scp command doesn’t try to insert the host in the file known_host file of the user nobody (scp can’t create the file because the user nobody has no home neither ~/.ssh).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读