refused publickey permission our home ec2 conexion conectarse conectar con aws amazon-ec2 scp private-key permission-denied

permission - Transferir un archivo a una instancia de amazon ec2 usando scp siempre me da permiso denegado(publickey, gssapi-with-mic)



permission denied(publickey) aws (4)

Estoy tratando de transferir un archivo a una instancia de EC2. Seguí la documentación de Amazon, así es como se veía mi comando:

scp -i [the key''s location] Documents/[the file''s location] ec2-user@[public dns]:[home/[destination]]

donde reemplacé todas las variables con las cosas adecuadas, estoy seguro de que es la clave correcta y tiene el permiso 400. Cuando llamo al comando, me dice la huella dactilar de la clave RSA y me pregunta si quiero continuar conectándome. Escribo sí y responde con

Permission denied (publickey,gssapi-with-mic) lost connection

He analizado muchas de las otras preguntas similares sobre el desbordamiento de pila y no puedo encontrar la forma correcta de hacerlo.

También el tráfico ssh está habilitado en el puerto 22.


El ejemplo que proporcionó Amazon es correcto. Suena como un problema de permisos de carpeta. Si creó la carpeta que está intentando copiar con otro usuario u otro usuario la creó, es probable que no tenga permisos para copiarla o editarla.

Si tienes habilidades de sudo, puedes intentar abrir el acceso por ti mismo. Aunque no se recomienda dejarlo de esta manera, puedes probar este comando:

sudo chmod 777 /folderlocation

Eso le da a cualquier persona permisos completos de lectura / escritura / ejecutable (por lo tanto, no debería dejarlo en 777), pero le dará la oportunidad de probar su comando scp para descartar permisos.

Luego, si no está familiarizado con los permisos, le sugiero que lea sobre esto. este es un ejemplo: http://www.tuxfiles.org/linuxhelp/filepermissions.html En general, se sugiere que bloquee la carpeta tanto como sea posible, dependiendo del tipo de información que contenga.

Si esa no fuera la causa, hay otras cosas que tal vez quiera verificar:

  • ¿Se encuentra en el directorio de su clave cuando ejecuta el comando ''scp -i keyname''?
  • ¿Tiene permisos para usar la carpeta que está transfiriendo?

La mejor de las suertes.


El problema puede ser el nombre de usuario. Copié un archivo a mi instancia de Amazon y primero intenté usar el comando:

scp -r -i ../.ssh/Amazon_server_key_pair.pem ./empty.test [email protected]:~

y consiguió el error: Permiso denegado (publickey).

Luego me di cuenta de que mi instancia es un entorno Ubuntu y el usuario usuario es "ubuntu", el comando correcto que funcionó para mí es:

scp -r -i ../.ssh/Amazon_server_key_pair.pem ./empty.test [email protected]:~

El archivo "empty.test" es un archivo de texto que contiene el texto "testing ...". Reemplace la dirección de su servidor virtual con la dirección correcta al DNS público de su instancia. He reemplazado la ip de mi instancia con xx.yy.zz.tt.


Podrían ser los que usan un nombre de usuario incorrecto. Me pasó, fue el mismo error msg -> Permiso denegado (publickey, gssapi-keyex, gssapi-with-mic). conexión perdida


Tengo que usar ubuntu @ en lugar de ec2-user @ porque cuando estaba viendo ubuntu @ en mi terminal, intente cambiar el nombre que ve en su terminal

También tienes que configurar el permiso para el archivo pem en tu computadora

chmod 400 /path/my-key-pair.pem

El siguiente código copiará el archivo de su computadora a la instancia de Ec2.

scp -i ~/location_of_your_ec2_key_pair.pem ~/location_of_transfer_file/sample.txt ubuntu@ec2_your_ec2_instance.compute.amazonaws.com:~/folder_to_which_it_needs_to_be_copied

El siguiente código copiará el archivo de la instancia de Ec2 a su computadora

scp -i ~/location_of_your_ec2_key_pair.pem ubuntu@ec2_your_ec2_instance.compute.amazonaws.com:~/location_of_transfer_file/sample.txt ~/folder_to_which_it_needs_to_be_copied