Tengo Windows como mi sistema operativo principal. Con el reproductor VMware, configuro un servidor Ubuntu 12.4 como máquina invitada. El servidor Ubuntu tiene un usuario "ubuntu".
Creé una nueva instancia EC2 + clave de configuración pem. Desde la máquina de Windows, cuando uso la tecla putty + pem, puedo ssh.
Agregué la clave pem a mi servidor VMware Ubuntu (/home/ubuntu/.ssh/) Además, establecí los siguientes permisos:
chmod 700 /home/ubuntu/.ssh
chmod 600 /home/ubuntu/.ssh/*
A través del servidor de Ubuntu - Traté de SSH a la instancia EC2 sin éxito:
ssh ubuntu@EC2_IP Permission denied (publickey)
. Si utilizo explícitamente la tecla pem, funciona:
ssh -i /home/ubuntu/.ssh/NAME.pem ubuntu@EC2_IP
- Tenga en cuenta que debo usar la ruta directa a la clave, de lo contrario, obtendré
Warning: Identity file NAME.pem not accessible: No such file or directory.
Permission denied (publickey).
Por favor avise. ¡Gracias!
fuente
¿Cómo nombras tu clave privada? Debe tener el nombre de archivo id_rsa predeterminado (cambie el nombre del archivo pem a /home/ubuntu/.ssh/id_rsa)
fuente
Puede usar
ssh-agent
yssh-add
para evitar tener que especificar la clave privada explícitamente.Puede poner los comandos en su
.profile
o.bashrc
así se ejecutan cada vez que inicie sesión. Puede encontrar un script de inicio de ejemplo en la parte inferior de esta publicación .fuente
El cliente ssh busca
identify file
según la configuración establecida en/etc/ssh/ssh_config
. Entonces puede especificar el archivo de identidad allí, y recuerde que puede tener múltiples archivos de identidad listados en el archivo de configuración del cliente ssh. Desde la página de manual de ssh:Para la clave RSA, por ejemplo, la ubicación predeterminada es ~ / .ssh / id_rsa. Como Andrei Mikhaltsov sugirió, puede colocar su clave privada en / home / ubuntu / ssh / id_rsa y podrá conectarse sin especificarlo en la línea de comandos. Si ese nombre de archivo ya existe y contiene otra clave privada, aún puede personalizar su archivo de configuración de cliente ssh en el
IdentityFile
parámetro.fuente