Conéctese al directorio de archivos de Amazon EC2 con Filezilla y SFTP

326

He creado una instancia de AWS EC2 y deseo poder cargar archivos al directorio del servidor usando FileZilla de la manera más simple y directa posible.

Eric Brotto
fuente
44
entonces cuál es la pregunta? Si tiene credenciales SSH / SFTP, simplemente use FileZilla y conéctese al sitio. Abra el Administrador del sitio, agregue su sitio (seleccione SFTP como protocolo) y guárdelo. Haga que el Administrador del sitio se abra cada vez que abra FileZilla, por lo que solo tiene que hacer doble clic en el elemento Administrador del sitio.
Shi
3
¿Algún problema específico que tenga con su tarea?
Martin Prikryl
44
Um, ¿tal vez puedes aceptar una respuesta?
Greeso

Respuestas:

756

He creado un video tutorial para esto. Sólo revisa:

Conéctese al directorio de archivos de Amazon EC2 usando FileZilla y SFTP, Video Tutorial

Resumen del video tutorial anterior:

  1. Editar (Preferencias)> Configuración> Conexión> SFTP, haga clic en "Agregar archivo de clave"
  2. Busque la ubicación de su archivo .pem y selecciónelo.
  3. Aparecerá un cuadro de mensaje pidiéndole permiso para convertir el archivo al formato ppk. Haga clic en Sí, luego asigne un nombre al archivo y guárdelo en algún lugar.
  4. Si el nuevo archivo se muestra en la lista de Keyfiles, continúe con el siguiente paso. De lo contrario, haga clic en "Agregar archivo de claves ..." y seleccione el archivo convertido.
  5. Archivo> Administrador del sitio Agregue un nuevo sitio con los siguientes parámetros:

    Host : su nombre DNS público de su instancia EC2, o la dirección IP pública del servidor.

    Protocolo : SFTP

    Tipo de inicio de sesión : Normal

    Usuario : De los documentos : "Para Amazon Linux, el nombre de usuario predeterminado es ec2-user . Para RHEL5, el nombre de usuario suele ser root pero podría ser ec2-user. Para Ubuntu, el nombre de usuario es ubuntu . Para SUSE Linux, el el nombre de usuario es root . Para Debian, el nombre de usuario es admin . De lo contrario, consulte con su proveedor de AMI ".

    Presione el botón Conectar: ​​si se ha deshabilitado el almacenamiento de contraseñas, se le indicará que el tipo de inicio de sesión se cambie a 'Solicitar contraseña'. Diga 'Aceptar' y cuando se conecte, cuando se le solicite la contraseña, presione 'Aceptar' sin ingresar una contraseña para continuar más allá del cuadro de diálogo.

    Nota: FileZilla determina automáticamente qué clave usar. No necesita especificar la clave después de importarla como se describe anteriormente.

Si usa Cyberduck, siga esto .

Revisa esta publicación si tienes problemas de permisos.

Yasitha Waduge
fuente
44
para las distribuciones gratuitas de ubuntu de nivel, el nombre de usuario será ubuntu.
racha
77
Para agregar a lo mencionado anteriormente, asegúrese de eliminar el valor predeterminado de 21 en el cuadro de texto del puerto (predeterminado para sftp) ya que parece funcionar con el puerto 22. Comenzó a funcionar para mí cuando eliminé el puerto.
rahul
1
Me salvó allí @streak
Abram
1
@Yasitha Chinthaka He seguido todos los pasos pero no puedo conectarme a mi instancia. Es una gran instancia en el servidor de Windows 2012. Se agradece cualquier ayuda. He agregado la regla de entrada para SSH en mi grupo de seguridad. ¿Hay alguna otra configuración necesaria o cambios desde la última vez que publicó esta respuesta?
user2363025
No se puede conectar como en, ¿qué tipo de mensaje de error obtienes? Sin embargo, no he probado esto con el servidor de Windows, pero debería ser el mismo procedimiento ... asegúrese de que su nombre de usuario sea correcto ...
Yasitha Waduge
34

Esto es muy simple si usó su pem file(Estoy usando MacOS / usuario de Windows puede seguir los mismos pasos).

  1. Simplemente descargue su FileZilla (estoy usando MacOS y descargué la versión gratuita, eso es suficiente)

  2. Abra el Administrador del sitio en FileZilla (⌘S) -> Nuevo sitio

ingrese la descripción de la imagen aquí

  1. Pon tu nombre de host en el campo Host .

Ejemplo: eca-**-**-**-111.ap-southwest-9.compute.amazonaws.com

  • Seleccione el protocolo como SFTP - Protocolo de transferencia de archivos SSH

  • Seleccione el tipo de inicio de sesión como archivo de clave

  • Pon tu nombre de usuario en el campo Usuario : para mí es ubuntu ( encuentra tu usuario ssh )

Nota:

SO vs Nombre de usuario

Amazon - usuario ec2

Centos - centos

Debian: administrador o root

Fedora - usuario ec2

RHEL: usuario ec2 o root

SUSE - usuario ec2 o root

Ubuntu: ubuntu o root

  1. Para el campo Archivo de clave, busque su archivo pem: y haga clic en Conectar

ingrese la descripción de la imagen aquí

  1. Eso es todo :) ¡diviértete!

Nota:

(Recuerde permitir la conexión SSH a su dirección IP desde EC2) ¡ Si no, recibirá un mensaje de error de conexión!

Nota: Permitir que su IP conecte su instancia aws a través de SFTP

EC2 -> SecurityGroups -> SSH -> Reglas de entrada -> Editar -> Agregar regla (SSH | TCP | 22 | Mi IP (se obtiene ip automáticamente | nombre de la regla) -> Guardar

Elshan
fuente
¿Filezilla cifra las claves aws en el disco o las almacena en texto plano?
red888
Creo que el archivo de clave ya está encriptado, por lo tanto, simplemente pasa el archivo tal como está. no encriptado. Pero si está utilizando la autenticación normal con nombre de usuario y contraseña con Filezilla, entonces cifran la contraseña.
Elshan
Esto es genial, pero quería agregar una nota: en lugar de usar el nombre de host público, utilicé la dirección IP IPv4, para la entrada de Host. Fue entonces cuando funcionó para mí.
Bennybear
22

Si alguien sigue todos los pasos y no tiene éxito, asegúrese de estar utilizando el usuario correcto. Intentaba usar "ec2-user" pero necesitaba usar "ubuntu".

Jerad
fuente
No estaba teniendo éxito en RedHat y el nombre de usuario es "ec2-user".
NOTIFICAR el
Para los usuarios de WordPress con la instalación de WordPress Certified más utilizada por Bitnami, está en un servidor Ubuntu y, por lo tanto, el nombre de usuario ubuntu :)
Peter Højlund Andersen
20

Asegúrese de utilizar el puerto 22. Filezilla se configurará de manera predeterminada en el puerto 21 para SFTP.

TJ Tang
fuente
7

Solo una nota menor a la respuesta aceptada y bien explicada de Yasitha Chinthaka:

Nota: FileZilla determina automáticamente qué clave usar. No necesita especificar la clave después de importarla como se describe anteriormente.

En mi caso, ya tenía otros 5 ppks de otras instancias que estaba usando en el pasado (con el ppk de la nueva instancia al final de esa lista). Agregué el nuevo ppk de mi nueva instancia, y no me permitió conectarme a él. El mensaje de error: demasiados intentos / intentos.

Después de eliminar las ppks no utilizadas, finalmente pude iniciar sesión en la instancia.

Entonces no, Filezilla no es tan inteligente ;-)

Lucio Mollinedo
fuente
1
Esto resolvió un problema que tenía. Gracias por publicarlo!
mnutsch
4

Puede usar cualquier cliente FTP. Yo uso winscp y funciona bien. En todos estos clientes; puede especificar la clave segura ssh.

Deepak Singhal
fuente
4

FileZilla no funcionó para mí, seguí recibiendo este error:

Disconnected: No supported authentication methods available (server sent: publickey)

Lo que funcionó fue el sftpcomando.

Conéctese con la instancia EC2 con

sftp -i "path/to/key.pem" [email protected]

Descargar archivos / directorios

Para descargar path/to/source/file.txty path/to/source/dir:

lcd ~/Desktop
cd path/to/source
get file.txt
get -r dir

Subir archivos / directorios

Para cargar localpath/to/source/file.txty ~/localpath/to/source/dirpara remotepath/to/dest:

lcd localpath/to/source
cd remotepath/to/dest
put file.txt
put -r dir
Kilian Batzner
fuente
Filezilla también tiene sftp
Elshan
Mismo problema con filezilla 3.7. La herramienta de línea de comandos sftp también funcionó para mí.
Soheil Pourbafrani
0

En mi caso, Filezilla envía el archivo AWS ppk a cualquier otro servidor FTP al que intento conectarme de forma segura.

Eso es una locura Hay una solución alternativa como se escribe a continuación, pero es fea.

No se comporta bien como señaló @Lucio M.

De esta discusión: https://forum.filezilla-project.org/viewtopic.php?t=30605

n0lqu:

Convenido. Sin embargo, dado que no puedo controlar el funcionamiento del servidor, ¿hay alguna forma de especificar dentro de FileZilla que un sitio debe autenticarse con una contraseña en lugar de una clave, o viceversa? ¿O decirle que primero pruebe la contraseña y luego la clave solo si la contraseña falla? Me parece que es la clave de prueba primero, y luego no tiene la oportunidad de probar la contraseña.

botg (administrador de Filezilla) respondió:

No hay tal opción.

n0lqu:

¿Podría agregarse esa opción, o hay alguna solución alternativa que alguien pueda recomendar? En este momento, la única solución que conozco es eliminar la clave de las preferencias generales, volver a agregarla solo cuando se conecte al sitio específico que lo requiere, y luego eliminarla nuevamente cuando termine para que no estropee otros sitios.

botg:

En este momento, podría tener dos instancias de FileZilla con directorios de configuración separados (por ejemplo, uno instalado y otro portátil).

timboskratch:

Acabo de tener este mismo problema hoy y logré resolverlo cambiando el "tipo de inicio de sesión" de la conexión usando una contraseña en el administrador del sitio. En lugar de "Normal", podría seleccionar "Interactivo" o "Solicitar contraseña" (no estoy seguro de cuál es la diferencia) y luego, cuando traté de conectarme nuevamente al sitio, me dio un mensaje para ingresar mi contraseña y luego conecté exitosamente. No es ideal, ya que significa que debe recordar y volver a escribir su contraseña cada vez que se conecta, pero es mejor que tener que instalar 2 instancias de FileZilla. Estoy totalmente de acuerdo en que sería muy útil en el Administrador del sitio tener opciones completas de cómo le gustaría que FileZilla se conectara a cada sitio que está configurado (ya sea para usar una contraseña, clave, etc.) ¡Espero que esto sea útil! Tim

Ver también: https://forum.filezilla-project.org/viewtopic.php?t=34676

Así parece:

Para múltiples sitios FTP con claves / contraseñas, use múltiples instalaciones de Filezilla, O use la misma clave ppk para todos los servidores.

Desearía que hubiera una manera de decirle a FileZilla qué ppk es para qué sitio en el Administrador del sitio

sitio80443
fuente
0

Lo más simple y directo es crear un inicio de sesión FTP. Aquí hay un pequeño y sencillo sitio de tutoriales sobre stackoverflow, cómo configurar las cosas en 2 minutos ... Configuración de FTP en Amazon Cloud Server

guido _nhcol.com.br_
fuente
1
Me reticulé a una URL en stackoverflow. No lo considero un enlace externo, ¿verdad?
guido _nhcol.com.br_
0

En primer lugar, Filezilla es un cliente / servidor FTP / SFTP. Necesitaremos usar el cliente para este propósito.

1) Descargue el cliente desde la URL: https://filezilla-project.org/

2) Vaya a la consola de administración de AWS y luego a EC2. Seleccione la instancia a la que desea acceder y luego copie la dirección DNS o IP de la instancia y luego péguela en el nombre de host de Filezilla.

Imagen de seguimiento: acceso a la instancia de Amazon a través de FileZilla

3) Luego, ingrese el nombre de usuario para la instancia que ha creado, para Amazon-ami será ec2-user y para otro sistema operativo sería diferente. Luego, ingrese la contraseña y el puerto, que serán 21 o 22.

4) Luego, pedirá la clave, que está en formato pem, simplemente seleccione el archivo .pem y luego confirmará la autenticación. Haga clic en Sí y luego listo.

Nota: en su grupo de seguridad EC2, permita los números de puerto 21 y 22, lo que sea necesario para el acceso FTP.

Patrick R
fuente
0

todo lo que tiene que hacer es: 1. abrir el administrador del sitio en filezilla 2. agregar un nuevo sitio 3. dar la dirección del host y el puerto si el puerto no es el puerto predeterminado 4. tipo de comunicación: SFTP 5. archivo de clave de tipo de sesión 6. poner nombre de usuario 7. elija el directorio de archivos clave, pero tenga cuidado con el explorador de archivos de Windows, busque el archivo ppk como predeterminado, elija todos los archivos en el menú desplegable, luego elija su archivo pem y listo.

dado que agrega un nuevo sitio y lo configura la próxima vez que desee conectarse, simplemente elija su sitio guardado y conéctese. Eso es.

Ebuzer Taha KANAT
fuente
-5

https://www.cloudjojo.com/how-to-connect-ec2-machine-with-ftp/

  1. Primero debe instalar un servidor ftp en su máquina ec2 como vsftpd.
  2. Configure el archivo de configuración vsftpd para permitir escrituras y puertos abiertos.
  3. Crear usuario para el cliente ftp.
  4. Conéctese con el cliente ftp como filezilla.

Asegúrese de abrir el puerto 21 en el grupo de seguridad aws.

Rohit Sharma
fuente