![Ich kann die Datei nicht per SCP an eine EC2-Instanz senden, auf die ich per SSH zugreifen kann.](https://rvso.com/image/1346172/Ich%20kann%20die%20Datei%20nicht%20per%20SCP%20an%20eine%20EC2-Instanz%20senden%2C%20auf%20die%20ich%20per%20SSH%20zugreifen%20kann..png)
Ich habe zwei EC2-Instanzen, die aus demselben AMI erstellt wurden, das wiederum aus dem Amazon Linux AMI erstellt wurde. Diese führen MySQL in einer Master-Slave-Konfiguration aus. Die Sicherheitsgruppe („db“) ist so konfiguriert, dass Port 22 von Instanzen zugelassen wird, die unter der Sicherheitsgruppe „web“ ausgeführt werden.
Also melde ich mich per SSH bei einer der Webinstanzen an und dann per SSH oder SCP bei den Datenbankinstanzen. Das funktioniert seit einiger Zeit einwandfrei.
Heute kann ich jedoch keine Verbindung mehr zu einer der Instanzen (der Master-Instanz) per SCP herstellen. Ich kann mich problemlos per SSH darauf anmelden und sowohl SCP als auch SSH funktionieren problemlos zur Slave-Instanz.
Das Ausführen von scp mit -vv erzeugt eine nahezu identische Ausgabe, bis auf die Zeile debug2: unten, die die letzte Ausgabe bei der Verbindung mit dem Master ist.
debug2: exec request accepted on channel 0
Sending file modes: C0775 77 <filename>
Irgendeine Idee, was los ist? Ich habe versucht, die Instanz neu zu starten, aber das hat keinen Unterschied gemacht.
Aktualisieren:
/var/log/secure:
Jan 10 19:02:59 <host> sshd[1987]: Accepted publickey for <user> from xx.xxx.xxx.xxx port 33285 ssh2
Jan 10 19:02:59 <host> sshd[1987]: pam_unix(sshd:session): session opened for user <user> by (uid=0)
Es wurden ungefähr 20 Zeilen zu /var/log/audit/audit.log hinzugefügt, die alle mitres=success
Antwort1
Ich habe dieses Problem wie folgt behoben:
$ sudo vi /etc/ssh/sshd_config
Dies wurde geändert:
# override default of no subsystems
Subsystem sftp /usr/libexec/openssh/sftp-server
Hierzu:
# override default of no subsystems
Subsystem sftp internal-sftp
Anschließend den SSHD-Dienst neu gestartet:
$ sudo service sshd restart
Antwort2
Ich finde es einfacher, einfach einen Python-SimpleHTTPServer auszuführen und auf der anderen Seite wget auszuführen, um die Datei herunterzuladen.
HTTP-Protokoll hinzufügen, das in der Sicherheitskonfiguration für alle Quellen hinzugefügt werden soll
Führen Sie den folgenden Befehl in dem Verzeichnis aus, in dem die Datei vorhanden ist
$ sudo python -m SimpleHTTPServer 80
Führen Sie auf der Empfangsseite den folgenden Befehl aus, um die Datei herunterzuladen