【问题标题】:Capistrano deployment asks for passphraseCapistrano 部署要求输入密码
【发布时间】:2016-02-19 22:34:14
【问题描述】:
DEBUG [414156db] Command: ( export GIT_ASKPASS="/bin/echo"
GIT_SSH="/tmp/sunwoo-blog/git-ssh.sh" ; /usr/bin/env git ls-remote --heads    git@github.com:sunwooz/Sunwoo-Blog.git )
DEBUG [414156db]    Enter passphrase for key

当我尝试使用 capistrano 部署到 DigitalOcean 液滴时,系统要求我输入密码,但我无法输入密码。我想我正确设置了 SSH 公钥/私钥,但我似乎找不到解决方案。

我如何使它在我部署时不要求输入密码?

【问题讨论】:

    标签: ruby-on-rails nginx ssh capistrano puma


    【解决方案1】:

    有问题的密码是您的 SSH 密钥上的密码。

    您可以使用没有密钥的密钥(有风险),或者使用 SSH 代理只输入一次,然后让代理处理它(推荐)。

    【讨论】:

    • 感谢您的回复!我尝试在远程服务器和本地会话上使用:eval $(ssh-agent)ssh-add 设置 ssh 代理,但它似乎仍然需要密码。当我尝试连接到 github 时,它似乎要求输入密码,还有什么我应该做的吗?再次感谢!
    【解决方案2】:

    确保您没有在服务器上安装 SSH 私钥。正确的设置是将密钥放在运行 ssh-agent 的本地工作站上。当您运行 Capistrano 时,它会使用带有代理转发的 SSH 连接到您的服务器。

    假设您的密钥已经添加到本地代理,那么转发应该会处理所有事情。

    【讨论】:

      【解决方案3】:

      这让我难过几次,但我的问题是 SSH 代理。

      通过运行 ssh-add -l 检查您是否已将密钥加载到 SSH 代理中

      您应该会看到如下内容:

      $ ssh-add -l 2048 af:ce:7e:c5:93:18:39:ff:54:20:7a:2d:ec:05:7c:a5 /Users/me/.ssh/id_rsa (RSA)

      如果没有,请添加您的密钥:

      $ ssh-add

      这是文档:
      http://capistranorb.com/documentation/getting-started/authentication-and-authorisation/#

      【讨论】:

        猜你喜欢
        • 2014-05-19
        • 1970-01-01
        • 1970-01-01
        • 2011-03-17
        • 1970-01-01
        • 2023-04-04
        • 1970-01-01
        • 2015-06-14
        • 1970-01-01
        相关资源
        最近更新 更多