2017-06-01 4 views
1

Ich versuche, meine Schienen (4.2) Anwendung auf Amazon ec2 durch bitbucket zu entfalten. Ich habe meinen id_new_rsa.pub Schlüssel in authorized_keys auf dem Server hinzugefügt. Ich habe auch die gleichen SSH-Schlüssel in meinem bitbucket-Konto hinzugefügt. Hinzugefügt Mittel als auch für gleiche Schlüssel verwendet diese Befehle eval "$(ssh-agent -s)" und ssh-add ~/.ssh/id_new_rsaSchienen Capistrano 3: Erlaubnis verweigert (publickey) auf AWS EC2

Durch die Nutzung dieser id_new_rsa.pub Taste, kann ich sowohl Zugriff auf die Server (root und bereitstellen), aber wenn ich meine Anwendung versucht, zu implementieren, unter Störungen zu erhalten.

Ich habe 3 Tage verbracht, um die Lösung zu finden, aber noch kein Glück. Bitte helfen Sie.

enter image description here

deploy.rb

enter image description here

production.rb

enter image description here

Antwort

0

fast da, aber es ist, was fehlt. Sie verwenden publickey für die Authentifizierungsmethode etwas falsch. Füge einfach folgendes in deine ssh_options ein.

auth_methods: ["publickey"] 

Dies funktioniert beispielsweise aus mit EC2 und Capistrano:

set :ssh_options, { 
    forward_agent: true, 
    user: fetch(:user), 
    auth_methods: ["publickey"], 
    keys: ["/path/to/key.pem"] 
} 

stellen Sie sicher, geben Sie 0600 Berechtigungen für die Schlüssel-Datei.

+0

Ich versuchte dies, aber kein Glück. Danke – kpp

+1

Haben Sie 'USER' auf Ihrem Server? – Evgeny

+0

ja Evgeny. Der Benutzer "deploy" befindet sich auf dem Server. Ich kann mich mit 'ssh -T git @ bitbucket.org' auf dem Server und meinem lokalen Rechner anmelden. Ich habe versucht, indem ich eine neue '.pem' Datei auf EC2 -> Schlüsselpaare erstellt habe und in den ssh_option canfigurations hinzugefügt habe. Aber immer noch nicht in der Lage, mit EC2 und Bitbucket Repository zu verbinden. – kpp

Verwandte Themen