1

我在 kubernetes 中创建了 cron 作业,并且在 pod 目录之一中有 ssh 密钥。当我从命令行执行时,它工作正常,但是当我手动触发时,cron 作业无法识别 .ssh 文件夹。

scp -i  /srv/batch/source/.ssh/id_rsa   user@server:/home/data/openings.csv  /srv/batch/source

在此处输入图像描述

4

1 回答 1

1

当您从容器登录到远程主机时,远程主机密钥对于容器内的 SSH 客户端是未知的

通常,您会被要求确认其指纹:

The authenticity of host ***** can't be established.
RSA key fingerprint is *****.
Are you sure you want to continue connecting (yes/no)?

但由于没有交互式 shell,SSH 客户端会失败。

两种解决方案:

  • ~/.ssh/known_hosts在容器中的文件中添加主机密钥
  • 禁用主机密钥检查(危险,因为没有执行远程主机身份验证

    ssh -o "StrictHostKeyChecking=no" user@host

于 2020-02-24T15:01:03.760 回答