Ich stelle mit PuTTY eine SSH-Verbindung zu einem Linux-Computer her und versuche, eine Datei irgendwo (irgendwo) auf meinen lokalen Computer zu kopieren. Ich Figur SCP der beste Kandidat für den Job ist , aber nicht wirklich interessieren, solange die Lösung funktioniert!
Wechseln Sie cd
in das Verzeichnis mit der gewünschten Datei ( app.war
) und geben Sie Folgendes ein:
scp app.war ./
Ich habe beide erfolglos versucht:
scp app.war ./C:/Users/myUser/
scp app.war ./Users/myUser/
Ich habe gedacht, dass SCP möglicherweise ein Client / Server-Tool ist und einen Client auf meinem Windows-Computer erfordert, der nicht vorhanden ist.
Benutze ich nur die falsche Syntax? Oder bin ich weit weg von der Basis? Wenn ja, welche Möglichkeiten habe ich? Danke im Voraus!
scp some_file user@host:/c/temp
Antworten:
Damit Sie Dateien zurück auf Ihr Windows kopieren können, müssen Sie einen SSH-Daemon / -Dienst auf Ihrem Windows ausführen. Es ist viel einfacher, dieses Tool zu verwenden, und Sie können Sitzungen von Putty importieren, einem sehr einfachen Forward-Client Liebe es!
WinSCP :: Kostenloser SFTP- und FTP-Client für Windows
quelle
WinSCP
ist eine gute Lösung für diese Aufgabe.Du hast Recht. SSHD ist der SSH-Serverdienst, der auf dem Host ausgeführt wird. Es akzeptiert Verbindungen von SSH-Clients (wie PuTTy), SCP-Clients und SFTP-Clients.
Sie können
pscp
von derselben Website herunterladen, auf der PuTTY gehostet wird.Auf dem Windows-Computer würden Sie einen Befehl ausführen, der dem folgenden ähnelt
pscp.exe [email protected]:/path/to/app.war c:\tmp
quelle
Um eine Datei auf einen Windows-Computer zu übertragen, benötigen Sie einen SSH / SCP-Server unter Windows.
In Windows gibt es standardmäßig keine SSH / SCP-Unterstützung. Sie können Microsoft Build von OpenSSH für Windows ( Releases und Downloads ) installieren . Es ist als optionale Funktion unter Windows 10 ab Version 1803 verfügbar. Es kann auch manuell auf älteren Windows-Versionen installiert werden.
Ich habe eine Anleitung zum Einrichten des SSH / SFTP-Servers unter Windows mit diesem Microsoft-Build von OpenSSH erstellt .
Siehe auch Wird IIS SFTP nativ von Windows unterstützt?
Während Sie vom Windows-Computer aus SSH auf den Linux-Server ausführen, können Sie tatsächlich eine Datei vom Linux-Server auf den Windows-Server herunterladen, anstatt zu versuchen, die Datei vom Linux-Server auf den Windows-Server hochzuladen.
Wenn Sie einen SSH-Zugang von Windows zu Linux haben, haben Sie auch einen SCP-Zugang (oder noch besser einen SFTP-Zugang).
Verwenden Sie einen beliebigen verfügbaren SCP / SFTP-Client.
Sie können den WinSCP SFTP / SCP-Client verwenden , der sowohl über eine grafische Benutzeroberfläche als auch über eine Befehlszeilenschnittstelle verfügt .
Eine weitere Alternative ist das PuTTY-Toolset, das das
pscp
Befehlszeilentool mit einer Syntax ähnlich dem OpenSSH-scp
Befehl enthält. Auch die neuesten Versionen von Windows 10 sind mit OpenSSH ausgestattetscp
und können auch auf älteren Versionen installiert werden.(Ich bin der Autor von WinSCP)
quelle
pscp
ist jedoch funktional identisch mit OpenSSHscp
, das bereits für alle / die meisten Distributionen verfügbar ist.In Windows 10 ist jetzt OpenSSH integriert. Https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_install_firstuse
Rufen Sie eine Admin-Eingabeaufforderung ab
Überprüfen Sie die verfügbaren Versionen
Client installieren
Server installieren
Starten Sie den Server und aktivieren Sie ihn beim Booten
Finden Sie Ihre Windows-IP-Adresse
Suchen Sie auf Ihrem Remote-Computer (Linux) Ihre IP-Adresse.
Erstellen Sie einen öffentlichen SSH-Schlüssel
Kopieren Sie den öffentlichen Schlüssel von einem lokalen (Windows) auf einen entfernten (Linux) Computer, damit Sie nicht ständig ein Kennwort eingeben müssen.
Beachten Sie, dass ssh-copy-id derzeit unter Windows nicht verfügbar ist.
Machen Sie dasselbe auf Ihrem Linux-Rechner (Hinweis, ssh-copy-id funktioniert nicht)
Die obige Methode hat bei mir nicht funktioniert, sodass ich den öffentlichen Schlüssel manuell über SCP verschoben und in die Datei C: /Users/YOU/.ssh/authorized_keys eingefügt habe.
Das hat immer noch nicht funktioniert, also musste ich die Datei sshd_config ändern.
Öffnen Sie den Editor als Administrator
Öffnen Sie% programdata% \ ssh \ sshd_config
Fügen Sie die folgenden Zeilen hinzu:
Erstellen Sie unter Windows ein Kennwort, falls Sie noch keines haben
- Beachten Sie, dass Sie den Windows-Anmeldebildschirm weiterhin deaktivieren können, indem Sie a) die Option "Anmeldung erforderlich" auf "Nie" setzen und b) das Kontrollkästchen "Benutzer müssen Kennwort eingeben ..." deaktivieren.
Jetzt sollten Sie in der Lage sein, SSH oder SCP von Ihrem Linux-Computer aus auszuführen
quelle
Sie können dies mit dem Linux Ubuntu-Subsystem für Windows tun (Sie müssen dies als Windows-Funktion aktivieren). Dann können Sie einen Linux-Terminal-Client verwenden, der unter Windows ausgeführt wird, indem Sie ihn aus dem Microsoft Store beziehen (z. B. Ubuntu 16.04 LTS). Wenn Sie ssh security auf Ihrem Linux-Rechner auf remote eingestellt haben, können Sie
scp
von Ihrem lokalen Windows Ubuntu-Terminal aus (wenn Sie als der Benutzername angemeldet sind, den Sie für Ihre Linux-Instanz festgelegt haben) Folgendes tun:scp -i ~/.ssh/my_rsa [email protected]:~/myfile ~/
... geben Sie die RSA-Passphrase einDie entfernte Datei wird in Ihr lokales Ubuntu-Dateisystem kopiert, das zB von Windows verwendet wird
C:\Users\my.username\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu16.04onWindows_79rhkp1fndgsc\LocalState\rootfs\home\my_linux_username
quelle
scp(.exe)
integriert. Sie müssen nichts installieren.Schritt 1: Laden Sie pscp
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html herunter
( Laden Sie basierend auf Ihrem Computer die entsprechende Version herunter)
Schritt 2: Machen Sie sich mit den pscp-Befehlen vertraut
Öffnen Sie dazu die Eingabeaufforderung auf Ihrem Windows-Computer, wechseln Sie in das Verzeichnis, in das Sie pscp.exe heruntergeladen haben, und geben Sie "pscp" ein.
Schritt 3: Übertragen Sie die Datei von Ihrem Linux-Computer auf einen Windows-Computer.
Öffnen Sie die Eingabeaufforderung und führen Sie den folgenden Befehl aus, um Ihre Details anzugeben:
pscp [email protected]:/path/of/your/File/nameofyourfile.txt ./
Dieser Befehl überträgt die Datei von Ihrem Linux-Computer in das aktuelle Verzeichnis Ihres Windows-Computers
Schritt 4: Übertragen Sie die Datei von Ihrem Windows-Computer auf einen Linux-Computer.
Öffnen Sie die Eingabeaufforderung und führen Sie den folgenden Befehl aus, und geben Sie Ihre Details ein:
pscp nameofyourfile.txt [email protected]:/path/where/youwantyourfile
Ich hoffe das ist klar und funktioniert für euch alle!
quelle