Mam główny system operacyjny Windows. Korzystając z odtwarzacza VMware, skonfigurowałem serwer Ubuntu 12.4 jako maszynę gościa. Serwer Ubuntu ma użytkownika „ubuntu”.
Utworzyłem nową instancję EC2 + klucz instalacyjny pem. Z komputera z systemem Windows, gdy używam klucza putty + pem - mogę ssh.
Dodałem klucz pem do mojego serwera VMware Ubuntu (/home/ubuntu/.ssh/) Ponadto ustawiłem następujące uprawnienia:
chmod 700 /home/ubuntu/.ssh
chmod 600 /home/ubuntu/.ssh/*
Za pośrednictwem serwera Ubuntu - Próbowałem SSH do instancji EC2 bez powodzenia:
ssh ubuntu@EC2_IP Permission denied (publickey)
. Jeśli wyraźnie użyję klucza pem, działa:
ssh -i /home/ubuntu/.ssh/NAME.pem ubuntu@EC2_IP
- Pamiętaj, że muszę użyć bezpośredniej ścieżki do klucza, w przeciwnym razie dostanę
Warning: Identity file NAME.pem not accessible: No such file or directory.
Permission denied (publickey).
Proszę doradź. Dzięki!
źródło
Jak nazwać swój klucz prywatny? Powinien mieć domyślną nazwę pliku id_rsa (zmień nazwę pliku pem na /home/ubuntu/.ssh/id_rsa)
źródło
Możesz użyć
ssh-agent
issh-add
uniknąć konieczności jawnego podawania klucza prywatnego.Możesz umieścić polecenia w swoim
.profile
lub.bashrc
tak, aby były wykonywane przy każdym logowaniu. Możesz znaleźć przykładowy skrypt startowy na dole tego postu .źródło
Klient ssh szuka w
identify file
oparciu o konfigurację ustawioną w/etc/ssh/ssh_config
. Możesz więc podać tam plik tożsamości i pamiętaj, że w pliku konfiguracyjnym klienta ssh może znajdować się wiele plików tożsamości. Ze strony podręcznika ssh -Na przykład dla klucza RSA domyślną lokalizacją jest ~ / .ssh / id_rsa. Jak sugerował Andriej Michałow, możesz umieścić swój klucz prywatny w / home / ubuntu / ssh / id_rsa i będziesz mógł się połączyć bez podawania go w wierszu poleceń. Jeśli ta nazwa pliku już istnieje i zawiera inny klucz prywatny, nadal możesz dostosować plik konfiguracyjny klienta ssh w
IdentityFile
parametrze.źródło