免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4538 | 回复: 6
打印 上一主题 下一主题

[其他] 远程执行scp不提示输入密码导致失败 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2015-04-21 16:09 |只看该作者 |倒序浏览
大家好,有个问题实在搞不定,请教一下。

我想在一台A机器上执行脚本 install_st_remote,这个脚本可以带一个参数是另外一台机器的IP,暂且是B,脚本的作用是在XYZ上下载软件进行安装到这台IP的机器上。
  1. > more install_st_local

  2. #!/bin/bash

  3. ST_INSTALLER_PATH="/install/st/"
  4. ST_PATH="/usr/QE/st"

  5. #download tarball
  6. echo "##########################"
  7. echo "Downloading teperl tarball"

  8. mkdir -p $ST_INSTALLER_PATH
  9. scp -r -v mike@XYZ:/net/st-linux_x64.tar $ST_INSTALLER_PATH

  10. #extract it
  11. echo "##########################"
  12. echo "Extracting it to $ST_PATH"

  13. mkdir -p $TEPERL_PATH
  14. cd $ST_INSTALLER_PATH && tar -xvf st-linux_x64.tar -C $ST_PATH
复制代码
这个install_st_local脚本在B上执行是没问题的,执行到scp的时候会提示输入密码,然后就能继续。

但是我如果在A上执行(通过另外的脚本install_st_remote调用):
  1. > more install_st_remote
  2. #!/bin/bash

  3. REMOTE_USER=root
  4. REMOTE_HOSTNAME=$1

  5. ssh -l $REMOTE_USER $REMOTE_HOSTNAME 'bash -s' < ./install_st_local
复制代码
但是结果是在scp那里就不提示输入密码,直接验证失败报错。
  1. [root@i122-eng175 install]# ./install_st_remote 10.17.39.90
  2. ##########################
  3. Downloading st tarball
  4. Executing: program /usr/bin/ssh host XYZ, user mike, command scp -v -r -f /net/st-linux_x64.tar
  5. OpenSSH_6.2p2, OpenSSL 0.9.8j-fips 07 Jan 2009
  6. debug1: Reading configuration data /etc/ssh/ssh_config
  7. debug1: /etc/ssh/ssh_config line 20: Applying options for *
  8. debug1: Connecting to XYZ port 22.
  9. debug1: Connection established.
  10. debug1: permanently_set_uid: 0/0
  11. debug1: identity file /root/.ssh/id_rsa type 1
  12. debug1: identity file /root/.ssh/id_rsa-cert type -1
  13. debug1: identity file /root/.ssh/id_dsa type -1
  14. debug1: identity file /root/.ssh/id_dsa-cert type -1
  15. debug1: identity file /root/.ssh/id_ecdsa type -1
  16. debug1: identity file /root/.ssh/id_ecdsa-cert type -1
  17. debug1: Enabling compatibility mode for protocol 2.0
  18. debug1: Local version string SSH-2.0-OpenSSH_6.2
  19. debug1: Remote protocol version 2.0, remote software version Sun_SSH_1.1.2
  20. debug1: no match: Sun_SSH_1.1.2
  21. debug1: SSH2_MSG_KEXINIT sent
  22. debug1: SSH2_MSG_KEXINIT received
  23. debug1: kex: server->client aes128-ctr hmac-md5 none
  24. debug1: kex: client->server aes128-ctr hmac-md5 none
  25. debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
  26. debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
  27. debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
  28. debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
  29. debug1: Server host key: RSA ff:aa:0c:0f:2d:fc:b5:53:f7:9b:d2:23:2b:c4:47:30 [MD5]
  30. debug1: Host 'XYZ' is known and matches the RSA host key.
  31. debug1: Found key in /root/.ssh/known_hosts:4
  32. debug1: ssh_rsa_verify: signature correct
  33. debug1: SSH2_MSG_NEWKEYS sent
  34. debug1: expecting SSH2_MSG_NEWKEYS
  35. debug1: SSH2_MSG_NEWKEYS received
  36. debug1: Roaming not allowed by server
  37. debug1: SSH2_MSG_SERVICE_REQUEST sent
  38. debug1: SSH2_MSG_SERVICE_ACCEPT received
  39. debug1: Authentications that can continue: gssapi-keyex,gssapi-with-mic,publickey,password,keyboard-interactive
  40. debug1: Next authentication method: publickey
  41. debug1: Offering RSA public key: /root/.ssh/id_rsa
  42. debug1: Authentications that can continue: gssapi-keyex,gssapi-with-mic,publickey,password,keyboard-interactive
  43. debug1: Trying private key: /root/.ssh/id_dsa
  44. debug1: Trying private key: /root/.ssh/id_ecdsa
  45. debug1: Next authentication method: keyboard-interactive
  46. debug1: read_passphrase: can't open /dev/tty: No such device or address
  47. debug1: Authentications that can continue: gssapi-keyex,gssapi-with-mic,publickey,keyboard-interactive
  48. debug1: Next authentication method: keyboard-interactive
  49. debug1: read_passphrase: can't open /dev/tty: No such device or address
  50. debug1: Authentications that can continue: gssapi-keyex,gssapi-with-mic,publickey,keyboard-interactive
  51. debug1: read_passphrase: can't open /dev/tty: No such device or address
  52. debug1: Authentications that can continue: gssapi-keyex,gssapi-with-mic,publickey,keyboard-interactive
  53. debug1: No more authentication methods to try.
  54. Permission denied (gssapi-keyex,gssapi-with-mic,publickey,keyboard-interactive).
  55. ##########################
  56. Extracting it to /usr/QE/st
  57. tar: st-linux_x64.tar: Cannot open: No such file or directory
  58. tar: Error is not recoverable: exiting now
复制代码

论坛徽章:
0
2 [报告]
发表于 2015-04-21 16:11 |只看该作者
报错一开始是在debug1: read_passphrase: can't open /dev/tty: No such device or address

不知道为什么貌似远程执行的时候打不开终端,导致无法输入密码。

请高手指教,多谢了。

论坛徽章:
0
3 [报告]
发表于 2015-04-21 16:32 |只看该作者
有人知道么? 在线等 .............

论坛徽章:
39
双子座
日期:2014-08-06 17:37:19极客徽章
日期:2016-12-07 14:03:402017金鸡报晓
日期:2017-01-10 15:13:292017金鸡报晓
日期:2017-02-08 10:39:4215-16赛季CBA联赛之新疆
日期:2017-03-24 16:36:1915-16赛季CBA联赛之江苏
日期:2017-04-26 17:19:08黑曼巴
日期:2018-03-07 18:56:5615-16赛季CBA联赛之八一
日期:2018-03-09 10:44:1015-16赛季CBA联赛之江苏
日期:2018-03-12 15:12:1915-16赛季CBA联赛之青岛
日期:2018-03-16 09:13:0515-16赛季CBA联赛之山东
日期:2018-04-27 18:23:0515-16赛季CBA联赛之新疆
日期:2018-05-04 11:29:30
4 [报告]
发表于 2015-04-22 11:25 |只看该作者
手动执行ssh那条命令看是什么结果

论坛徽章:
0
5 [报告]
发表于 2015-04-22 12:57 |只看该作者
o枫叶o飘零 发表于 2015-04-22 11:25
手动执行ssh那条命令看是什么结果


手工在A上执行那条ssh是一样的结果:

debug1: Next authentication method: keyboard-interactive
debug1: read_passphrase: can't open /dev/tty: No such device or address
debug1: Authentications that can continue: gssapi-keyex,gssapi-with-mic,publickey,keyboard-interactive
debug1: Next authentication method: keyboard-interactive
debug1: read_passphrase: can't open /dev/tty: No such device or address
debug1: Authentications that can continue: gssapi-keyex,gssapi-with-mic,publickey,keyboard-interactive
debug1: read_passphrase: can't open /dev/tty: No such device or address
debug1: Authentications that can continue: gssapi-keyex,gssapi-with-mic,publickey,keyboard-interactive
debug1: No more authentication methods to try.
Permission denied (gssapi-keyex,gssapi-with-mic,publickey,keyboard-interactive).

论坛徽章:
39
双子座
日期:2014-08-06 17:37:19极客徽章
日期:2016-12-07 14:03:402017金鸡报晓
日期:2017-01-10 15:13:292017金鸡报晓
日期:2017-02-08 10:39:4215-16赛季CBA联赛之新疆
日期:2017-03-24 16:36:1915-16赛季CBA联赛之江苏
日期:2017-04-26 17:19:08黑曼巴
日期:2018-03-07 18:56:5615-16赛季CBA联赛之八一
日期:2018-03-09 10:44:1015-16赛季CBA联赛之江苏
日期:2018-03-12 15:12:1915-16赛季CBA联赛之青岛
日期:2018-03-16 09:13:0515-16赛季CBA联赛之山东
日期:2018-04-27 18:23:0515-16赛季CBA联赛之新疆
日期:2018-05-04 11:29:30
6 [报告]
发表于 2015-04-22 13:17 |只看该作者
回复 5# WinnerBoy


    那就不是脚本原因

你检查下有/dev/tty这个文件没有

没有就重建下mknod -m 644 /dev/tty c 5 0  (百度的)


然后再chmod a+rw /dev/tty


最后再ssh执行下看看


论坛徽章:
0
7 [报告]
发表于 2015-04-22 16:19 |只看该作者
o枫叶o飘零 发表于 2015-04-22 13:17
回复 5# WinnerBoy



当然有,那是系统终端文件,没问题的
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP