Connectez-vous au répertoire de fichiers Amazon EC2 à l'aide de Filezilla et SFTP

326

J'ai créé une instance AWS EC2 et je souhaite pouvoir télécharger des fichiers dans le répertoire du serveur à l'aide de FileZilla de la manière la plus simple et la plus directe possible.

Eric Brotto
la source
4
Donc quelle est la question? Si vous avez des informations d'identification SSH / SFTP, utilisez simplement FileZilla et connectez-vous au site? Ouvrez le gestionnaire de site, ajoutez votre site (sélectionnez SFTP comme protocole) et stockez-le. Faites en sorte que Site Manager s'ouvre à chaque fois que vous ouvrez FileZilla, il vous suffit donc de double-cliquer sur l'élément Site Manager.
Shi
3
Un problème spécifique que vous rencontrez avec votre tâche?
Martin Prikryl
4
Vous pouvez peut-être accepter une réponse?
Greeso

Réponses:

756

J'ai créé un tutoriel vidéo pour cela. Vérifiez simplement:

Connectez-vous au répertoire de fichiers Amazon EC2 à l'aide de FileZilla et SFTP, Tutoriel vidéo

Résumé du didacticiel vidéo ci-dessus:

  1. Modifier (Préférences)> Paramètres> Connexion> SFTP, cliquez sur "Ajouter un fichier clé"
  2. Accédez à l'emplacement de votre fichier .pem et sélectionnez-le.
  3. Une boîte de message apparaîtra vous demandant votre permission pour convertir le fichier au format ppk. Cliquez sur Oui, puis donnez un nom au fichier et stockez-le quelque part.
  4. Si le nouveau fichier apparaît dans la liste des fichiers clés, passez à l'étape suivante. Sinon, cliquez sur "Ajouter un fichier de clés ..." et sélectionnez le fichier converti.
  5. Fichier> Gestionnaire de sites Ajoutez un nouveau site avec les paramètres suivants:

    Hôte : votre nom DNS public de votre instance EC2 ou l'adresse IP publique du serveur.

    Protocole : SFTP

    Type de connexion : Normal

    Utilisateur : D'après les documents : "Pour Amazon Linux, le nom d'utilisateur par défaut est ec2-user . Pour RHEL5, le nom d'utilisateur est souvent root mais peut être ec2-user. Pour Ubuntu, le nom d'utilisateur est ubuntu . Pour SUSE Linux, le le nom d'utilisateur est root . Pour Debian, le nom d'utilisateur est admin . Sinon, consultez votre fournisseur AMI. "

    Appuyez sur le bouton de connexion - Si l'enregistrement des mots de passe a été désactivé, vous serez invité à changer le type de connexion en «Demander un mot de passe». Dites «OK» et lors de la connexion, à l'invite du mot de passe, appuyez sur «OK» sans entrer de mot de passe pour passer la boîte de dialogue.

    Remarque: FileZilla détermine automatiquement la clé à utiliser. Vous n'avez pas besoin de spécifier la clé après l'avoir importée comme décrit ci-dessus.

Si vous utilisez Cyberduck, suivez ceci .

Consultez cet article si vous rencontrez des problèmes d'autorisation.

Yasitha Waduge
la source
4
pour les distributions gratuites d'ubuntu, le nom d'utilisateur sera ubuntu.
séquence
7
Pour ajouter à ce qui a été mentionné ci-dessus, assurez-vous de supprimer la valeur par défaut de 21 dans la zone de texte du port (par défaut pour sftp) car cela semble fonctionner avec le port 22. Il a commencé à fonctionner pour moi lorsque j'ai supprimé le port.
rahul
1
M'a sauvé là @streak
Abram
1
@Yasitha Chinthaka J'ai suivi toutes les étapes mais je ne peux pas me connecter à mon instance. Il s'agit d'une grande instance sur Windows Server 2012. Toute aide appréciée. J'ai ajouté la règle entrante pour SSH sur mon groupe de sécurité. Y a-t-il d'autres configurations ou changements nécessaires depuis la dernière publication de cette réponse?
user2363025
Impossible de se connecter comme dans, quel type de message d'erreur obtenez-vous? Je n'ai pas essayé cela avec le serveur Windows cependant, mais devrait être la même procédure .. assurez-vous que votre nom d'utilisateur est correct ...
Yasitha Waduge
34

C'est très simple si vous avez utilisé votre pem file(j'utilise MacOS / l'utilisateur Windows peut suivre les mêmes étapes.)

  1. Téléchargez simplement votre FileZilla (j'utilise MacOS - et la version gratuite téléchargée, ça suffit)

  2. Ouvrir Site Manager dans FileZilla (⌘S) -> Nouveau site

entrez la description de l'image ici

  1. Mettez votre nom d'hôte dans le champ Hôte .

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

  • Sélectionnez Protocol comme SFTP - SSH File Transfer Protocol

  • Sélectionnez le type d'ouverture de session comme fichier clé

  • Mettez votre nom d'utilisateur dans le champ Utilisateur : pour moi c'est ubuntu ( trouvez votre utilisateur ssh )

Remarque:

OS vs nom d'utilisateur

Amazon - utilisateur ec2

Centos - centos

Debian - admin ou root

Fedora - utilisateur ec2

RHEL - utilisateur ec2 ou root

SUSE - utilisateur ec2 ou root

Ubuntu - Ubuntu ou root

  1. Pour le champ Fichier clé, parcourez votre fichier pem: et cliquez sur Connecter

entrez la description de l'image ici

  1. C'est tout :) amusez-vous!

Remarque:

(N'oubliez pas d'autoriser la connexion SSH à votre adresse IP depuis EC2) Sinon, vous obtiendrez un message d'erreur de connexion!

Remarque: Autoriser votre IP à connecter votre instance aws via SFTP

EC2 -> SecurityGroups -> SSH -> Règles entrantes -> Modifier -> Ajouter une règle (SSH | TCP | 22 | Mon IP (c'est obtenir ip automatiquement | nom de la règle) -> Enregistrer

Elshan
la source
filezilla crypte-t-il les clés aws sur le disque ou les stocke-t-il en texte brut?
red888
Je pense que le fichier de clé est déjà crypté, il suffit donc de le transmettre tel quel. non crypté. Mais si vous utilisez l'authentification normale en utilisant le nom d'utilisateur et le mot de passe avec Filezilla, ils chiffrent le mot de passe.
Elshan
C'est très bien, mais je voulais ajouter une note: au lieu d'utiliser le nom d'hôte public, j'ai utilisé l'adresse IP IPv4, pour l'entrée Host. C'est alors que ça a marché pour moi.
Bennybear
22

Si quelqu'un suit toutes les étapes et ne réussit pas, assurez-vous que vous utilisez le bon utilisateur. J'essayais d'utiliser "ec2-user" mais j'avais besoin d'utiliser "ubuntu".

Jerad
la source
Je n'avais aucun succès sur RedHat et le nom d'utilisateur est "ec2-user".
NOTiFY
Pour les utilisateurs de WordPress avec l'installation WordPress Certified by Bitnami la plus utilisée, c'est sur un serveur Ubuntu et donc le nom d'utilisateur ubuntu :)
Peter Højlund Andersen
20

Assurez-vous d'utiliser le port 22. Filezilla utilisera par défaut le port 21 pour SFTP.

TJ Tang
la source
7

Juste une petite note à la réponse bien expliquée et acceptée de Yasitha Chinthaka:

Remarque: FileZilla détermine automatiquement la clé à utiliser. Vous n'avez pas besoin de spécifier la clé après l'avoir importée comme décrit ci-dessus.

Dans mon cas, j'avais déjà 5 autres ppks d'autres instances que j'utilisais dans le passé (avec le ppk de la nouvelle instance étant au bas de cette liste). J'ai ajouté le nouveau ppk de ma nouvelle instance, et cela ne m'a pas permis de me connecter. Le message d'erreur: trop de tentatives / tentatives.

Après avoir supprimé les ppks inutilisés, j'ai finalement pu me connecter à l'instance.

Alors non, Filezilla n'est pas si intelligent ;-)

Lucio Mollinedo
la source
1
Cela a résolu un problème que j'avais. Merci de l'avoir posté!
mnutsch
4

Vous pouvez utiliser n'importe quel client FTP. J'utilise winscp et cela fonctionne très bien. Dans tous ces clients; vous pouvez spécifier la clé sécurisée ssh.

Deepak Singhal
la source
4

FileZilla n'a pas fonctionné pour moi, j'ai continué à recevoir cette erreur:

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

Ce qui a fonctionné, c'est la sftpcommande.

Connectez-vous à l'instance EC2 avec

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

Téléchargement de fichiers / répertoires

Pour télécharger path/to/source/file.txtet path/to/source/dir:

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

Téléchargement de fichiers / répertoires

Pour télécharger localpath/to/source/file.txtet ~/localpath/to/source/dirà remotepath/to/dest:

lcd localpath/to/source
cd remotepath/to/dest
put file.txt
put -r dir
Kilian Batzner
la source
Filezilla a également sftp
Elshan
Même problème avec filezilla 3.7. L'outil de ligne de commande sftp a également fonctionné pour moi.
Soheil Pourbafrani
0

Dans mon cas, Filezilla envoie le fichier ppk AWS à tous les autres serveurs FTP auxquels j'essaie de me connecter en toute sécurité.

C'est fou. Il y a une solution de contournement comme écrit ci-dessous mais c'est moche.

Il ne se comporte pas bien comme l'a souligné @Lucio M.

De cette discussion: https://forum.filezilla-project.org/viewtopic.php?t=30605

n0lqu:

D'accord. Cependant, étant donné que je ne peux pas contrôler le fonctionnement du serveur, existe-t-il un moyen de spécifier dans FileZilla qu'un site doit s'authentifier avec un mot de passe plutôt qu'avec une clé, ou vice versa? Ou dites-lui d'abord d'essayer le mot de passe, puis de ne saisir que si le mot de passe échoue? Il me semble qu'il essaie d'abord la clé, puis qu'il n'a pas la possibilité d'essayer le mot de passe.

Botg (administrateur Filezilla) a répondu:

Il n'y a pas une telle option.

n0lqu:

Une telle option pourrait-elle être ajoutée, ou existe-t-il de bonnes solutions de contournement que quelqu'un puisse recommander? À l'heure actuelle, la seule solution de contournement que je connaisse est de supprimer la clé des préférences générales, de l'ajouter uniquement lors de la connexion au site spécifique qui l'exige, puis de la supprimer à nouveau une fois terminé afin de ne pas gâcher les autres sites.

botg:

À l'heure actuelle, vous pouvez avoir deux instances FileZilla avec des répertoires de configuration distincts (par exemple, un installé et un portable).

timboskratch:

Je viens d'avoir ce même problème aujourd'hui et j'ai réussi à le résoudre en changeant le "type d'ouverture de session" de la connexion en utilisant un mot de passe dans le gestionnaire de site. Au lieu de "Normal", je pouvais sélectionner "Interactif" ou "Demander un mot de passe" (je ne suis pas vraiment sûr de la différence), puis lorsque j'ai essayé de me connecter à nouveau au site, il m'a donné une invite pour entrer mon mot de passe, puis je me suis connecté avec succès. Ce n'est pas idéal car cela signifie que vous devez vous souvenir et retaper votre mot de passe chaque fois que vous vous connectez, mais mieux que d'avoir à installer 2 instances de FileZilla. Je suis totalement d'accord qu'il serait très utile dans le gestionnaire de site d'avoir des options complètes sur la façon dont vous souhaitez que FileZilla se connecte à chaque site configuré (que ce soit pour utiliser un mot de passe, une clé, etc.) J'espère que cela vous sera utile! Tim

Voir également: https://forum.filezilla-project.org/viewtopic.php?t=34676

Il semble donc:

Pour plusieurs sites FTP avec des clés / mots de passe, utilisez plusieurs installations Filezilla, OU, utilisez la même clé ppk pour tous les serveurs.

Je souhaite qu'il y ait un moyen de dire à FileZilla quel PPK est pour quel site dans Site Manger

site80443
la source
0

la plus simple et directe consiste à créer une connexion FTP. Voici un petit site de tutoriel facile à comprendre sur stackoverflow lui-même, comment configurer les choses en 2 minutes ... Configuration de FTP sur Amazon Cloud Server

guido _nhcol.com.br_
la source
1
J'ai réticulé vers une URL sur stackoverflow. Je ne considère pas cela comme un lien externe, n'est-ce pas?
guido _nhcol.com.br_
0

Tout d'abord, Filezilla est un client / serveur FTP / SFTP. Nous devrons utiliser le client à cet effet.

1) Téléchargez le client depuis l'URL: https://filezilla-project.org/

2) Accédez à la console de gestion AWS, puis à EC2. Sélectionnez l'instance à laquelle vous souhaitez accéder, puis copiez l'adresse DNS ou IP de l'instance, puis collez-la dans le nom d'hôte Filezilla.

Suivez l'image: Amazon Instance Access via FileZilla

3) Ensuite, entrez le nom d'utilisateur pour l'instance que vous avez créée, pour Amazon-ami, ce sera ec2-user et pour les autres OS, ce serait différent. Saisissez ensuite le mot de passe et le port qui seront 21 ou 22.

4) Ensuite, il vous demandera la clé, qui est au format pem, sélectionnez simplement le fichier .pem et ensuite il confirmera l'authentification. Cliquez sur Oui et vous avez terminé.

Remarque: dans votre groupe de sécurité EC2, autorisez les numéros de port 21 et 22 selon les besoins pour l'accès FTP.

Patrick R
la source
0

tout ce que vous avez à faire est de: 1. ouvrir le gestionnaire de site sur filezilla 2. ajouter un nouveau site 3. donner l'adresse hôte et le port si le port n'est pas le port par défaut 4. type de communication: SFTP 5. fichier de clé de type de session 6. mettre le nom d'utilisateur 7. choisissez le répertoire des fichiers clés mais méfiez-vous de l'explorateur de fichiers Windows recherche le fichier ppk par défaut choisissez tous les fichiers dans la liste déroulante puis choisissez votre fichier pem et vous êtes prêt à partir.

puisque vous ajoutez un nouveau site et configuré la prochaine fois lorsque vous souhaitez vous connecter, choisissez simplement votre site enregistré et connectez-vous. C'est ça.

Ebuzer Taha KANAT
la source
-5

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

  1. Vous devez d'abord installer un serveur ftp sur votre machine ec2 comme vsftpd.
  2. Configurez le fichier de configuration vsftpd pour autoriser les écritures et ouvrir les ports.
  3. Créer un utilisateur pour le client ftp.
  4. Connectez-vous avec le client ftp comme filezilla.

Assurez-vous d'ouvrir le port 21 sur le groupe de sécurité aws.

Rohit Sharma
la source