Ruby on rails Rails Capistrano身份验证失败错误

Ruby on rails Rails Capistrano身份验证失败错误,ruby-on-rails,ruby,nginx,ssh,puma,Ruby On Rails,Ruby,Nginx,Ssh,Puma,我正在使用Capistrano3、Pumaweb服务器和nginx在AWS上托管Rails 6应用程序。我正处于最后阶段,但当我尝试使用Capistrano部署Ruby on Rails应用程序时,不断出现身份验证失败错误。我使用的命令是cap production deploy。我创建了一个ssh密钥对,将公钥添加到包含应用程序代码的Github repo中,并将私钥文件路径添加到文件中的以下代码段:/Users/edward/Project/EdwardBlog/blog/config/de

我正在使用
Capistrano3
Puma
web服务器和
nginx
在AWS上托管Rails 6应用程序。我正处于最后阶段,但当我尝试使用Capistrano部署Ruby on Rails应用程序时,不断出现身份验证失败错误。我使用的命令是
cap production deploy
。我创建了一个ssh密钥对,将公钥添加到包含应用程序代码的Github repo中,并将私钥文件路径添加到文件中的以下代码段:
/Users/edward/Project/EdwardBlog/blog/config/deploy/production.rb

set :ssh_options, { 
  forward_agent: true, 
  auth_methods: %w[publickey],
  keys: %w[/Users/edward/.ssh/id_rsa]
}
我可以像ssh-T一样ssh到githubgit@github.com我再次检查了密钥对是否与我添加到github帐户的公共SSH密钥匹配。我还使用
ssh add-l

我还尝试使用我的密码部署应用程序,但在提示下输入我的github帐户密码时仍然没有成功:

set :ssh_options, {
   keys: %w(/Users/edward/.ssh/id_rsa),
   forward_agent: true,
   auth_methods: %w(password)
 }
我不知道为什么不在本地使用凭据进行身份验证。如有任何可能的解决方案或解决办法,将不胜感激

以下是我在运行cap production deploy--trace命令时的消息:

#异常终止(异常报告为真):
回溯(最近一次呼叫最后一次):
12:from/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/runners/parallel.rb:12:in'block(2层)in execute'
11:from/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:31:in'run'
10:from/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:31:in'instance_exec'
9:from/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/capistrano-3.11.2/lib/capistrano/scm/tasks/git.rake:8:eval_rakefile中的“块(3级)”中
8:from/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:80:in“execute”
7:from/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:148:in'create_command_and_execute'
6:from/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:148:in'tap'
5:from/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:148:in'block in create_command_and_execute'
4:from/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/netsh.rb:130:in“execute_command”
3:from/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/netssh.rb:177:in“with_ssh”
2:from/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/connection_pool.rb:63:in'with'
1:from/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/connection_pool.rb:63:in'call'
/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/net-ssh-5.2.0/lib/net/ssh.rb:263:在“开始”中:用户身份验证失败ubuntu@18.191.247.244(Net::SSH::AuthenticationFailed)
1:from/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/runners/parallel.rb:11:in'block(2层)in execute'
/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/runners/parallel.rb:15:“执行中的块(2个级别)中的救援”:作为ubuntu@18.191.247.244:用户身份验证失败ubuntu@18.191.247.244(SSHKit::Runner::ExecuteError)
(回溯仅限于导入的任务)
帽子流产了!
SSHKit::Runner::ExecuteError:作为执行时发生异常ubuntu@18.191.247.244:用户身份验证失败ubuntu@18.191.247.244
原因:
Net::SSH::AuthenticationFailed:用户身份验证失败ubuntu@18.191.247.244
任务:TOP=>deploy:check=>git:check=>git:wrapper
(通过使用--trace运行任务查看完整跟踪)
部署失败,错误为:作为执行时发生异常ubuntu@18.191.247.244:用户身份验证失败ubuntu@18.191.247.244
**部署失败
**有关详细信息,请参阅log/capistrano.log。以下是最后20行:
请确保您拥有正确的访问权限
并且存储库存在。
信息---------------------------------------------------------------------------
信息开始2020-01-01 13:58:01-0800 cap生产部署
信息---------------------------------------------------------------------------
信息rbenv:rbenv_ruby未设置;ruby版本将由远程主机通过rbenv定义
信息[ca90e3ef]正在运行/usr/bin/env mkdir-p/tmp asubuntu@18.191.247.244
调试[ca90e3ef]命令:(export RBENV_ROOT=“$HOME/.RBENV”RBENV_VERSION=“;/usr/bin/env mkdir-p/tmp)
信息---------------------------------------------------------------------------
信息开始2020-01-01 13:58:35-0800 cap生产部署
信息---------------------------------------------------------------------------
信息rbenv:rbenv_ruby未设置;ruby版本将由远程主机通过rbenv定义
信息[cd0c878a]正在运行/usr/bin/env mkdir-p/tmp asubuntu@18.191.247.244
调试[cd0c878a]命令:(export RBENV_ROOT=“$HOME/.RBENV”RBENV_VERSION=“;/usr/bin/env mkdir-p/tmp)
信息---------------------------------------------------------------------------
信息开始2020-01-01 14:28:49-0800 cap生产部署
信息---------------------------------------------------------------------------
信息rbenv:rbenv_ruby未设置;ruby版本将由远程主机通过rbenv定义
信息[a745cde8]正在运行/usr/bin/env mkdir-p/tmp asubuntu@18.191.247.244
调试[a745cde8]命令:(export RBENV_ROOT=“$HOME/.RBENV”RBENV_VERSION=“;/usr/bin/env mkdir-p/tmp)
用户身份验证失败
#<Thread:0x00007f9b70963d00@/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/runners/parallel.rb:10 run> terminated with exception (report_on_exception is true):
Traceback (most recent call last):
    12: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/runners/parallel.rb:12:in `block (2 levels) in execute'
    11: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:31:in `run'
    10: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:31:in `instance_exec'
     9: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/capistrano-3.11.2/lib/capistrano/scm/tasks/git.rake:8:in `block (3 levels) in eval_rakefile'
     8: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:80:in `execute'
     7: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:148:in `create_command_and_execute'
     6: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:148:in `tap'
     5: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/abstract.rb:148:in `block in create_command_and_execute'
     4: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/netssh.rb:130:in `execute_command'
     3: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/netssh.rb:177:in `with_ssh'
     2: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/connection_pool.rb:63:in `with'
     1: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/backends/connection_pool.rb:63:in `call'
/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/net-ssh-5.2.0/lib/net/ssh.rb:263:in `start': Authentication failed for user ubuntu@18.191.247.244 (Net::SSH::AuthenticationFailed)
    1: from /Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/runners/parallel.rb:11:in `block (2 levels) in execute'
/Users/edward/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/sshkit-1.20.0/lib/sshkit/runners/parallel.rb:15:in `rescue in block (2 levels) in execute': Exception while executing as ubuntu@18.191.247.244: Authentication failed for user ubuntu@18.191.247.244 (SSHKit::Runner::ExecuteError)
(Backtrace restricted to imported tasks)
cap aborted!
SSHKit::Runner::ExecuteError: Exception while executing as ubuntu@18.191.247.244: Authentication failed for user ubuntu@18.191.247.244


Caused by:
Net::SSH::AuthenticationFailed: Authentication failed for user ubuntu@18.191.247.244

Tasks: TOP => deploy:check => git:check => git:wrapper
(See full trace by running task with --trace)
The deploy has failed with an error: Exception while executing as ubuntu@18.191.247.244: Authentication failed for user ubuntu@18.191.247.244


** DEPLOY FAILED
** Refer to log/capistrano.log for details. Here are the last 20 lines:


Please make sure you have the correct access rights

and the repository exists.

  INFO ---------------------------------------------------------------------------

  INFO START 2020-01-01 13:58:01 -0800 cap production deploy

  INFO ---------------------------------------------------------------------------

  INFO rbenv: rbenv_ruby is not set; ruby version will be defined by the remote hosts via rbenv

  INFO [ca90e3ef] Running /usr/bin/env mkdir -p /tmp as ubuntu@18.191.247.244

 DEBUG [ca90e3ef] Command: ( export RBENV_ROOT="$HOME/.rbenv" RBENV_VERSION="" ; /usr/bin/env mkdir -p /tmp )

  INFO ---------------------------------------------------------------------------

  INFO START 2020-01-01 13:58:35 -0800 cap production deploy

  INFO ---------------------------------------------------------------------------

  INFO rbenv: rbenv_ruby is not set; ruby version will be defined by the remote hosts via rbenv

  INFO [cd0c878a] Running /usr/bin/env mkdir -p /tmp as ubuntu@18.191.247.244

 DEBUG [cd0c878a] Command: ( export RBENV_ROOT="$HOME/.rbenv" RBENV_VERSION="" ; /usr/bin/env mkdir -p /tmp )

  INFO ---------------------------------------------------------------------------

  INFO START 2020-01-01 14:28:49 -0800 cap production deploy

  INFO ---------------------------------------------------------------------------

  INFO rbenv: rbenv_ruby is not set; ruby version will be defined by the remote hosts via rbenv

  INFO [a745cde8] Running /usr/bin/env mkdir -p /tmp as ubuntu@18.191.247.244

 DEBUG [a745cde8] Command: ( export RBENV_ROOT="$HOME/.rbenv" RBENV_VERSION="" ; /usr/bin/env mkdir -p /tmp )