I am deploying using Capistrano to a new server and having the following issue. Currently, I cannot add an SSH key to the server to log in with so I must use password authentication. However, I do have a key for another server saved in my local user account's
Here is the error I get when I try to log in:
C:\Web\WebApp1>cap deploy:setup * executing `deploy:setup' * executing "mkdir -p /home2/webapp1 /home2/webapp1/releases /home2/webapp1/shared /home2/webapp1/shared/system /home2/webapp1/shared/log /home2/webapp1/shared/pids" servers: ["myserver.example.com"] connection failed for: myserver.example.com (OpenSSL::PKey::PKeyError: not a public key "C:/Users/MyAccount/.ssh/id_rsa.pub")
How can I get Capistrano to ignore the existence of the key I have and let me log in with a password instead? I tried adding
set :password, "myp@ssw0rd" to
deploy.rb and it didn't help.
I followed @sysadmin1138's answer to add the following to the ssh config file:
HostName myserver.example.com PreferredAuthentications=password PubkeyAuthentication=no
Now, I get the error:
connection failed for: myserver.example.com (Net::SSH::AuthenticationFailed: webappuser)
It does not even ask for the password though. When I tried specifying the password in the config file, it still gave the same error.
Here are the relevant parts of my Capistrano config:
role :web, "myserver.example.com" set :user, "webappuser" default_run_options[:pty] = true # Allow Capistrano to prompt for passwords set :deploy_to, "/home2/webapp1"