3

我按照这个指示

https://confluence.atlassian.com/bitbucket/use-ssh-keys-in-bitbucket-pipelines-847452940.html _

我做了:

  1. 我在设置 -> 管道 - SSH 密钥中创建了 SSH 密钥。
  2. 我将此公钥复制到远程主机上的 ~/.ssh/authorized_keys 中。
  3. 我将服务器的 IP 添加到已知主机。

我有这样的 bitbucket-pipelines.yml:

image: php:7.1.1

pipelines:   custom: # Pipelines that are triggered manually
    deployment-to-prod:
      - step:
          script:
            - apt-get update && apt-get install -y unzip
            - apt-get -y install openssh-server
            - ssh webmaster@XXX.XXX.XX.XX sh /home/webmaster/scripts/update_live.sh

当我运行这个管道时,我有:

apt-get update && apt-get install -y unzip15s apt-get -y install openssh-server2m 43s ssh webmaster@XXX.XXX.XX.XX sh /home/webmaster/scripts/update_live.sh<1s + ssh webmaster@XXX .XXX.XX.XX sh /home/webmaster/scripts/update_live.sh 权限被拒绝,请重试。权限被拒绝,请重试。权限被拒绝(公钥、密码)

我的问题:

  1. 为什么我的 Docker 机器无法建立 SSH 连接(权限被拒绝)?
  2. 我真的必须安装 openssh-server 吗?没有它就无法识别“ssh”命令(没有这样的文件或目录)。
4

1 回答 1

1

最常见的问题之一是您可能没有为 authorized_keys 文件设置正确的权限。

chmod 600 ~/.ssh/authorized_keys

此外,请确保 .ssh 文件夹也具有其适当的权限。

chmod 700 ~/.ssh
于 2018-03-16T11:55:04.017 回答