Ich habe eine AWS EC2-Instanz erstellt und möchte Dateien mit FileZilla auf einfachste und unkomplizierteste Weise in das Serververzeichnis hochladen können.
Ich habe eine AWS EC2-Instanz erstellt und möchte Dateien mit FileZilla auf einfachste und unkomplizierteste Weise in das Serververzeichnis hochladen können.
Antworten:
Ich habe dafür ein Video-Tutorial erstellt. Überprüfen Sie einfach:
Zusammenfassung des obigen Video-Tutorials:
Datei> Site Manager Fügen Sie eine neue Site mit den folgenden Parametern hinzu:
Host : Ihr öffentlicher DNS-Name Ihrer EC2-Instanz oder die öffentliche IP-Adresse des Servers.
Protokoll : SFTP
Anmeldetyp : Normal
Benutzer : Aus den Dokumenten : "Für Amazon Linux lautet der Standardbenutzername ec2-user . Für RHEL5 lautet der Benutzername häufig root, möglicherweise jedoch ec2-user. Für Ubuntu lautet der Benutzername ubuntu . Für SUSE Linux lautet der Benutzername ist root . Für Debian lautet der Benutzername admin . Andernfalls wenden Sie sich an Ihren AMI-Anbieter. "
Drücken Sie die Verbindungstaste - Wenn das Speichern von Passwörtern deaktiviert wurde, werden Sie aufgefordert, den Anmeldetyp in "Nach Passwort fragen" zu ändern. Sagen Sie 'OK' und drücken Sie beim Herstellen der Verbindung an der Passwortabfrage 'OK', ohne ein Passwort einzugeben, um über den Dialog hinauszugehen.
Hinweis: FileZilla ermittelt automatisch, welcher Schlüssel verwendet werden soll. Sie müssen den Schlüssel nach dem Import nicht wie oben beschrieben angeben.
Wenn Sie Cyberduck verwenden, folgen Sie diesen Anweisungen .
Überprüfen Sie diesen Beitrag, wenn Sie Berechtigungsprobleme haben.
Dies ist sehr einfach, wenn Sie Ihre verwendet haben pem file
(ich verwende MacOS / Windows Benutzer können die gleichen Schritte ausführen.)
Laden Sie einfach Ihre FileZilla herunter (ich verwende MacOS - und die kostenlose Version heruntergeladen, das ist gut genug)
Öffnen Sie den Site Manager in FileZilla (⌘S) -> Neue Site
Beispiel:
eca-**-**-**-111.ap-southwest-9.compute.amazonaws.com
Wählen Sie Protokoll als SFTP - SSH File Transfer Protocol
Wählen Sie den Anmeldetyp als Schlüsseldatei
Geben Sie Ihren Benutzernamen in das Feld Benutzer ein: Für mich ist es Ubuntu ( finden Sie Ihren SSH-Benutzer )
Hinweis:
Betriebssystem vs Benutzername
Amazon - ec2-Benutzer
Centos - Centos
Debian - admin oder root
Fedora - ec2-Benutzer
RHEL - ec2-Benutzer oder root
SUSE - ec2-Benutzer oder root
Ubuntu - Ubuntu oder root
Hinweis:
(Denken Sie daran, die SSH-Verbindung von EC2 zu Ihrer IP-Adresse zuzulassen.) Wenn nicht, wird eine Verbindungsfehlermeldung angezeigt!
Hinweis: Ermöglichen Sie Ihrer IP, Ihre aws-Instanz über SFTP zu verbinden
EC2 -> Sicherheitsgruppen -> SSH -> Eingehende Regeln -> Bearbeiten -> Regel hinzufügen (SSH | TCP | 22 | Meine IP (IP wird automatisch abgerufen | Name für Regel) -> Speichern
Wenn jemand alle Schritte befolgt und keinen Erfolg hat, stellen Sie sicher, dass Sie den richtigen Benutzer verwenden. Ich habe versucht, "ec2-user" zu verwenden, aber ich musste "ubuntu" verwenden.
Nur eine kleine Anmerkung zu der gut erklärten akzeptierten Antwort von Yasitha Chinthaka:
Hinweis: FileZilla ermittelt automatisch, welcher Schlüssel verwendet werden soll. Sie müssen den Schlüssel nach dem Import nicht wie oben beschrieben angeben.
In meinem Fall hatte ich bereits andere 5 ppks von anderen Instanzen, die ich in der Vergangenheit verwendet habe (wobei der ppk der neuen Instanz am Ende dieser Liste steht). Ich habe das neue ppk meiner neuen Instanz hinzugefügt und konnte mich nicht damit verbinden. Die Fehlermeldung: zu viele Versuche / Versuche.
Nachdem ich die nicht verwendeten ppks gelöscht hatte, konnte ich mich endlich bei der Instanz anmelden.
Also nein, Filezilla ist nicht so schlau ;-)
Sie können einen beliebigen FTP-Client verwenden. Ich benutze Winscp und es funktioniert gut. In all diesen Kunden; Sie können den sicheren SSH-Schlüssel angeben.
FileZilla hat bei mir nicht funktioniert, ich habe immer wieder den folgenden Fehler erhalten:
Disconnected: No supported authentication methods available (server sent: publickey)
Was funktionierte, war der sftp
Befehl.
Verbinden Sie sich mit der EC2-Instanz mit
sftp -i "path/to/key.pem" ec2-user@ec2-54-212-34-84.us-west-2.compute.amazonaws.com
Zum Herunterladen path/to/source/file.txt
und path/to/source/dir
:
lcd ~/Desktop
cd path/to/source
get file.txt
get -r dir
Zum Hochladen localpath/to/source/file.txt
und ~/localpath/to/source/dir
zu remotepath/to/dest
:
lcd localpath/to/source
cd remotepath/to/dest
put file.txt
put -r dir
filezilla 3.7
. Das SFTP-Befehlszeilentool funktionierte auch für mich.
Alte Frage, aber ich habe festgestellt, dass Sie nur die ppk-Datei hinzufügen müssen. Einstellungen -> Verbindungen -> SFTP -> Schlüsseldatei hinzufügen Benutzername und Host entsprechen denen, die Sie bei Verwendung von Putty angeben würden, die unter http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2- angegeben sind. connect-to-instance-linux.html Könnte jemandem helfen.
In meinem Fall sendet Filezilla die AWS ppk-Datei an jeden anderen FTP-Server, zu dem ich eine sichere Verbindung herstellen möchte.
Das ist verrückt. Es gibt eine Problemumgehung wie unten beschrieben, aber sie ist hässlich.
Es verhält sich nicht gut, wie @Lucio M hervorhob.
Aus dieser Diskussion: https://forum.filezilla-project.org/viewtopic.php?t=30605
n0lqu:
Einverstanden. Gibt es eine Möglichkeit, in FileZilla anzugeben, dass sich eine Site mit einem Kennwort anstelle eines Schlüssels authentifizieren soll, oder umgekehrt, da ich den Betrieb des Servers nicht steuern kann? Oder sagen Sie ihm, er soll zuerst das Passwort versuchen und dann nur dann den Schlüssel eingeben, wenn das Passwort fehlschlägt? Mir scheint, es versucht zuerst den Schlüssel und bekommt dann keine Chance, das Passwort zu versuchen.
botg (Filezilla admin) antwortete:
Es gibt keine solche Option.
n0lqu:
Könnte eine solche Option hinzugefügt werden, oder gibt es gute Problemumgehungen, die jeder empfehlen kann? Derzeit besteht die einzige mir bekannte Problemumgehung darin, den Schlüssel aus den allgemeinen Einstellungen zu löschen, ihn erst wieder hinzuzufügen, wenn eine Verbindung zu der bestimmten Site hergestellt wird, für die er erforderlich ist, und ihn dann erneut zu löschen, damit andere Sites nicht durcheinander gebracht werden.
botg:
Im Moment könnten Sie zwei FileZilla-Instanzen mit separaten Konfigurationsverzeichnissen haben (z. B. eine installierte und eine tragbare).
timboskratch:
Ich hatte heute das gleiche Problem und konnte es beheben, indem ich den "Anmeldetyp" der Verbindung mithilfe eines Kennworts im Site-Manager änderte. Anstelle von "Normal" konnte ich entweder "Interaktiv" oder "Nach Passwort fragen" auswählen (nicht wirklich sicher, was der Unterschied ist). Als ich dann versuchte, erneut eine Verbindung zur Site herzustellen, wurde ich aufgefordert, mein Passwort einzugeben und dann eine Verbindung herzustellen erfolgreich. Dies ist nicht ideal, da Sie sich jedes Mal, wenn Sie eine Verbindung herstellen, Ihr Kennwort merken und erneut eingeben müssen, aber besser, als zwei Instanzen von FileZilla installieren zu müssen. Ich stimme voll und ganz zu, dass es im Site Manager sehr nützlich wäre, alle Optionen zu haben, wie FileZilla eine Verbindung zu jeder eingerichteten Site herstellen soll (ob ein Kennwort, ein Schlüssel usw. verwendet werden soll). Ich hoffe, dies ist hilfreich! Tim
Siehe auch: https://forum.filezilla-project.org/viewtopic.php?t=34676
So scheint es:
Verwenden Sie für mehrere FTP-Sites mit Schlüsseln / Kennwörtern mehrere Filezilla-Installationen, ODER verwenden Sie für alle Server denselben ppk-Schlüssel.
Ich wünschte, es gäbe eine Möglichkeit, FileZilla mitzuteilen, welches ppk für welche Site in Site Manager ist
Am einfachsten und unkompliziertesten ist es, ein FTP-Login zu erstellen. Hier ist eine kleine und leicht verständliche Tutorial-Site zum Stackoverflow selbst, wie man die Dinge in 2 Minuten einrichtet ... Einrichten von FTP auf Amazon Cloud Server
Zunächst ist Filezilla ein FTP / SFTP-Client / Server. Wir müssen den Client für diesen Zweck verwenden.
1) Laden Sie den Client von der URL herunter: https://filezilla-project.org/
2) Wechseln Sie zur AWS-Verwaltungskonsole und dann zu EC2. Wählen Sie die Instanz aus, auf die Sie zugreifen möchten, kopieren Sie die DNS- oder IP-Adresse der Instanz und fügen Sie sie in den Filezilla-Hostnamen ein.
Folgen Sie dem Bild: Amazon Instance Access über FileZilla
3) Geben Sie dann den Benutzernamen für die von Ihnen erstellte Instanz ein. Für Amazon-ami ist es ec2-user und für andere Betriebssysteme anders. Geben Sie dann das Passwort und den Port ein, die 21 oder 22 sein werden.
4) Anschließend werden Sie nach dem Schlüssel im PEM-Format gefragt. Wählen Sie einfach die PEM-Datei aus und bestätigen Sie die Authentifizierung. Klicken Sie auf Ja und dann sind Sie fertig.
Hinweis: Lassen Sie in Ihrer EC2-Sicherheitsgruppe die Portnummern 21 und 22 zu, je nachdem, was für den FTP-Zugriff erforderlich ist.
Alles, was Sie tun müssen, ist: 1. Öffnen Sie den Site Manager in FileZilla. 2. Fügen Sie eine neue Site hinzu. 3. Geben Sie die Hostadresse und den Port an, wenn der Port nicht der Standardport ist. 4. Kommunikationstyp: SFTP. 5. Schlüsseltatei für den Sitzungstyp. Wählen Sie das Schlüsseldateiverzeichnis, aber achten Sie darauf, dass der Windows-Datei-Explorer standardmäßig nach ppk-Dateien sucht. Wählen Sie alle Dateien in der Dropdown-Liste aus und wählen Sie dann Ihre PEM-Datei aus.
Da Sie beim nächsten Herstellen einer neuen Site eine neue Site hinzufügen und konfigurieren, wählen Sie einfach Ihre gespeicherte Site aus und stellen Sie eine Verbindung her. Das ist es.
https://www.cloudjojo.com/how-to-connect-ec2-machine-with-ftp/
Stellen Sie sicher, dass Sie Port 21 in der aws-Sicherheitsgruppe öffnen.