2012-04-20 16:02:59 +0000 2012-04-20 16:02:59 +0000
24
24

SCP vom Linux-Server zum Windows-Client

Ich sende SSH mit PuTTY auf einen Linux-Rechner und versuche, eine Datei irgendwo (irgendwo) auf meinen lokalen Rechner herunterzukopieren. Ich figuriere SCP ist der beste Kandidat für diese Aufgabe, aber das ist mir eigentlich egal, solange die Lösung funktioniert!

Ich cd in das Verzeichnis mit der gewünschten Datei (app.war) und gebe folgendes ein:

scp app.war ./

Ich habe beides vergeblich versucht:

scp app.war ./C:/Users/myUser/
scp app.war ./Users/myUser/

Es brachte mich auf den Gedanken, daß SCP vielleicht ein Client/Server-Tool ist und einen Client auf meinem Windows-Rechner erfordert, der nicht vorhanden ist.

Benutze ich einfach die falsche Syntax? Oder liege ich völlig daneben? Wenn ja, welche Optionen habe ich dann? Vielen Dank im Voraus!

Antworten (6)

25
25
25
2012-04-20 16:12:55 +0000

damit Sie Dateien zurück auf Ihr Windows kopieren können, benötigen Sie einen SSH-Daemon/Dienst auf Ihrem Windows, es ist viel einfacher, stattdessen dieses Tool zu verwenden, es hat die Fähigkeit, Sitzungen von Putty zu importieren, ein sehr einfacher Forward-Client, Sie werden ihn lieben! WinSCP :: Kostenloser SFTP- und FTP-Client für Windows

12
12
12
2012-04-20 16:10:01 +0000

Sie haben Recht. SSHD ist der SSH-Serverdienst, der auf dem Host läuft. Er akzeptiert Verbindungen von SSH-Clients (wie PuTTy), SCP-Clients und SFTP-Clients.

Sie können pscp von derselben Website herunterladen, auf der auch PuTTY gehostet wird.

Von der Windows-Maschine aus würden Sie einen Befehl ähnlich

pscp.exe someuser@somehost.com:/path/to/app.war c:\tmp ausführen

2
2
2
2015-07-27 11:19:07 +0000

Zum SCP einer Datei auf einen Windows-Computer benötigen Sie einen SSH/SCP-Server unter Windows.

Standardmäßig gibt es in Windows keine SSH/SCP-Unterstützung. Sie können Microsoft-Build von OpenSSH für Windows Releases und Downloads ) installieren. Es ist als optionale Funktion für Windows 10 Version 1803 und neuer verfügbar. Auf älteren Windows-Versionen kann es auch manuell installiert werden.

Ich habe eine Anleitung für die Einrichtung von SSH/SFTP-Server unter Windows mit diesem Microsoft-Build von OpenSSH vorbereitet.

Siehe auch [ Wird IIS SFTP von Windows nativ unterstützt? Obwohl Sie beim Einrichten von SSH in den Linux-Server von der Windows-Maschine aus tatsächlich eine Datei vom Linux-Server auf den Windows-Server herunterladen können, 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 jeden verfügbaren SCP/SFTP-Client.

Sie können den WinSCP SFTP/SCP-Client verwenden, der sowohl über GUI als auch Befehlszeilenschnittstelle verfügt.

Eine weitere Alternative ist das PuTTY-Toolset, das das pscp-Befehlszeilen-Tool mit einer Syntax ähnlich dem OpenSSH-Befehl scp enthält. Auch die neuesten Versionen von Windows 10 enthalten OpenSSH scp und es kann auch auf älteren Versionen installiert werden.

(Ich bin der Autor von WinSCP)

1
1
1
2019-05-17 03:57:39 +0000

In Windows 10 ist jetzt OpenSSH integriert https://docs.microsoft. com/de-us/windows- server/administration/openssh/openssh_install_firstuse &003

Holen Sie sich eine Admin-Befehlszeile

Open PowerShell as an Administrator.

Verfügbare Versionen prüfen

Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'

Client installieren

Add-WindowsCapability -Online -Name OpenSSH.Client ~~~~ 0.0.1.0

Server installieren

Add-WindowsCapability -Online -Name OpenSSH.Server ~~~~ 0.0.1.0

Server starten und beim Booten aktivieren

Finden Sie Ihre Windows-IP-Adresse

Start-Service sshd
Set-Service -Name sshd -StartupType 'Automatic'

Auf Ihrem entfernten (Linux-)Rechner, Ihre IP-Adresse finden.

ipconfig

Erstellen Sie einen öffentlichen SSH-Schlüssel

ifconfig

Kopieren Sie den öffentlichen Schlüssel von einem lokalen (Windows) auf einen entfernten (Linux) Rechner, damit Sie nicht ständig ein Passwort eingeben müssen.

Beachten Sie, dass ssh-copy-id derzeit unter Windows nicht verfügbar ist.

ssh-keygen.exe

Machen Sie dasselbe auf Ihrem Linux-Rechner (Hinweis: ssh-copy-id funktioniert nicht)

cat C:\Users\YOU/.ssh/id_rsa.pub | ssh USER@REMOTE_IP 'mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys'
  • Die obige Methode funktionierte bei mir nicht, so dass ich den öffentlichen Schlüssel manuell mit SCP überschreiben und in die Datei C:/Users/YOU/.ssh/authorized_keys einfügen musste.

  • Das funktionierte immer noch nicht, so dass ich die sshd_config-Datei modifizieren musste.

ssh-keygen # if needed
cat ~/.ssh/id_rsa.pub | ssh USER@WINDOWS_IP 'mkdir -p ~/.ssh && type con >> C:/Users/YOU/.ssh/authorized_keys'
  • Neustart

Erstellen Sie ein Passwort unter Windows, falls Sie noch keins haben

Match User YOU
             AuthorizedKeysFile C:/Users/YOU/.ssh/authorized_keys

– Beachten Sie, dass Sie den Windows-Anmeldebildschirm immer noch deaktivieren können, indem Sie a) die Option ‘Anmeldung erforderlich’ auf nie setzen und b) den Befehl ‘netplwiz’ verwenden und das Häkchen bei ‘Benutzer müssen Passwort eingeben’ entfernen.

Jetzt sollten Sie in der Lage sein, SSH oder SCP von Ihrem Linux-Rechner aus zu benutzen

System Settings...Sign-in options
1
1
1
2019-12-05 02:57:19 +0000

Sie können dies tun, indem Sie das Linux-Ubuntu-Subsystem für Windows verwenden (Sie müssen dies als Windows-Funktion aktivieren). Dann können Sie einen Linux-Terminal-Client verwenden, der unter Windows läuft, indem Sie ihn aus dem Microsoft Store beziehen (z.B. Ubuntu 16.04 LTS). Wenn Sie die ssh-Sicherheit auf Ihrem Linux-Rechner auf Remote-Zugriff eingestellt haben, können Sie dann scp von Ihrem lokalen Windows-Ubuntu-Terminal aus (wenn Sie als der Benutzername angemeldet sind, den Sie für Ihre Linux-Instanz festgelegt haben) etwa wie folgt eingeben:

scp -i ~/.ssh/my_rsa username@11.11.11.11:~/myfile ~/… RSA-Passphrase

Die Remote-Datei wird in Ihr lokales Ubuntu-Dateisystem kopiert, das von Windows verwendet wird, z.B.

C:\Users\my.username\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu16.04onWindows_79rhkp1fndgsc\LocalState\rootfs\home\my_linux_username

-1
-1
-1
2017-05-30 13:43:58 +0000

Schritt 1: Laden Sie pscp herunter https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html (Je nach Rechner laden Sie die jeweilige Version herunter)

Schritt 2: Machen Sie sich mit den pscp-Befehlen vertraut Öffnen Sie dazu die Eingabeaufforderung in Ihrem Windows-Rechner, gehen Sie in das Verzeichnis, in das Sie pscp heruntergeladen haben. exe und geben Sie “pscp” ein

Schritt 3: Übertragen Sie die Datei von Ihrem Linux-Rechner auf Ihren Windows-Rechner öffnen Sie Ihre Eingabeaufforderung und führen Sie folgenden Befehl mit Ihren Angaben aus:

pscp usernameofyourlinuxmachine@10.40.000.000:/path/of/your/File/nameofyourfile.txt ./

und dieser Befehl überträgt die Datei von Ihrem Linux-Rechner in das aktuelle Verzeichnis Ihres Windows-Rechners

Schritt 4: Übertragen Sie die Datei von Ihrem Windows-Rechner auf Ihren Linux-Rechner öffnen Sie Ihre Eingabeaufforderung und führen Sie den folgenden Befehl mit Ihren Angaben aus:

pscp nameofyourfile.txt usernameofyourlinuxmachine@10.40.000.000:/path/where/youwantyourfile

Ich hoffe, dies ist klar und funktioniert für Sie alle!