Dlaczego nie mogę ssh-copy-id do instancji EC2?

9

Mam instancję ubuntu Natty na EC2 i mogę do niej włączyć SSH

ssh -v -i ec2-keypair ubuntu@[email protected]

Ale chciałbym skonfigurować sshing bez hasła. Spróbowałem więc tych opcji i nic nie działa:

 $ ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
Permission denied (publickey).

 $ ssh-copy-id -i ~/.ssh/ec2-keypair [email protected]
/usr/bin/ssh-copy-id: ERROR: No identities found

 $ ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
Permission denied (publickey).
Jeremy Smith
źródło

Odpowiedzi:

19

Potrzebowałem uciekać

ssh-add ~/.ssh/ec2-keypair
Jeremy Smith
źródło
Zrobiłem to zarówno dla postgres, jak i dla mojego zwykłego użytkownika admin, gdy uruchomię ssh-copy-id -f -i /var/lib/postgres/.pubfilename ubuntu@ec2-domain wciąż pojawia się błąd odmowy pozwolenia.
Piyush S. Wanare
Uwaga: w niektórych środowiskach musisz uruchomić eval "$(ssh-agent)" Jeśli zobaczysz Could not open a connection to your authentication agent
azatar
1

Miałem ten sam problem: ssh-copy-id podaje błąd Permission denied (publickey) na instancji AWS EC2. Byłem pewien, że poprawnie ustawiłem wszystkie uprawnienia chmod.

Ponadto musiałem zmienić tę linię /etc/ssh/sshd_config z

PasswordAuthentication no

do

PasswordAuthentication yes

Chyba dlatego ssh-copy-id prosi o podanie hasła.

Wtedy błąd zniknął.

Steve Tjoa
źródło
Uważaj jednak, że zmiana PasswordAuthentication z „no” na „yes” może zablokować Cię w instancji EC2.
Kingz