
Creé una instancia ec2 con una AMI de Ubuntu 16.04. Creé un usuario sudo para esta AMI con:
sudo adduser myuser
sudo usermod -aG sudo myuser
Luego intenté darle al usuario acceso ssh con un par de claves rsa que ya tenía. Creé un directorio .ssh para el nuevo usuario:
mkdir ~/.ssh
chmod 700 ~/.ssh
vim ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
Copié y pegué mi clave pública en 'claves_autorizadas'. Luego salí de ec2 y probé mi conexión con:
cd ~/.ssh
ssh -i "mypem.pem" [email protected]
Recibí un error que decía "Acceso denegado (clave pública)"
Así que eliminé al usuario y creé otro. Esta vez creé el archivo 'authorized_keys' con nano en lugar de Vim y funcionó.
¿Alguien experimenta esto?
Respuesta1
Probablemente lo pegaste mal.
- ¿Empieza con
ssh-rsa
o conssh-ed25519
? - ¿Tiene un espacio antes (NO debería)?
- ¿Se conservan las mayúsculas/minúsculas?
- ¿Hay un espacio antes de cualquier comentario al final de la línea?
antes de pegar algo en vim, debe usar :set paste
, ya que desactiva cualquier posible macro activa de autocompletado/autoindent/....
Otra cosa es que escribiste mykey.pem
, que es la extensión habitual para archivos openssl, no ssh-keys. ¿Estás seguro de que utilizaste la clave ssh-pubkey id_rsa.pub
/ as?id_ed25519.pub
Respuesta2
Si sucede algo como esto, recomendaría verificar fileencryption
y fileformat
en bomb
ViM. Compara ambos archivos, el que editaste con nano y el que editaste con vim. Ábrelos con vim y comprueba esto:
:set bomb?
Esta es la marca de orden de bytes. Generalmente se configura cuando edita un archivo UTF-8 con notepad.exe en Windows. A menudo tuve problemas con eso.
:set ff?
Formato de archivo dos
o unix
. Dos tienen finales de línea diferentes a los de Unix.
:set fenc?
La codificación del archivo: quizás un editor cambie a latin1 en lugar de UTF-8.
Respuesta3
myuser debe tener acceso a .ssh y al archivo de claves. Comprueba quién es el propietario.