Dateien von Remote-RDP auf lokalen Computer kopieren [geschlossen]

71

Gibt es eine Möglichkeit, eine RDP-Sitzung auf einem Remote-Windows-Server zu starten und eine Dateiübertragung auf den lokalen Computer durchzuführen? Die Versionen des Remote-Windows-Servers variieren. Bereich von 2000 bis 2008.

Ich habe versucht, nach Lösungen zu suchen, und es scheint überall verstreut zu sein. Einige schlagen die Verwendung von mstsc.exe vor, andere die Verwendung von PowerShell / Java / ASP Net. Ich bin verwirrt. Schätzen Sie hier einige Anleitungen.

Vielen Dank!

Update unten: 17. Februar 2012

Danke für alle Vorschläge. Ich möchte hinzufügen, dass die Remoteserver sicher gesperrt sind und ich keine SSH-Server, FTP-Server oder freigegebenen Laufwerke installieren darf. Der einzige Weg, auf den Remotecomputer zuzugreifen, ist über RDP. Diese Computer befinden sich auch in separaten VLANs, auf die nur autorisierte Benutzer mit RDP auf diese Computer zugreifen können. Ich versuche, ein Skript zu erstellen, mit dem autorisierte Benutzer die erforderlichen Dateien herunterladen können.

Louis Xie
quelle
Müssen Sie RDP verwenden? Können Sie einen SSH-Server auf dem Remote-Windows-Server installieren und die Dateien auf diese Weise übertragen (mit SCP)
Alan
Wenn Sie eine RDP-Sitzung mit dem Server durchführen können, sollten Sie Zugriff auf die Administratorfreigaben (C $, D $ usw.) auf den Serverlaufwerken haben. Sie sollten in der Lage sein, auf Dateien zuzugreifen und diese zu kopieren, ohne dass RDP erforderlich ist.
Mjolinor
-Alan, ich darf keinen SSH-Server installieren. -mjolinor, ich darf auch keine freigegebenen Laufwerke hinzufügen.
Louis Xie
Ziemlich alle (die meisten? ... wahrscheinlich alle ...) Methoden der Dateiübertragung stehen Ihnen dann nicht zur Verfügung.
Andy Arismendi
Wenn ich RDP verwenden kann, um Dateien vom Remote-Server auf meinen lokalen Computer zu übertragen, lautet die Frage dann, ob ich diesen Prozess automatisieren kann.
Louis Xie

Antworten:

77

Sie können ein Laufwerk über den Remotedesktop zuordnen.

Optionen> Lokale Ressourcen> Mehr

Geben Sie hier die Bildbeschreibung ein

Andy Arismendi
quelle
Danke, aber das darf ich nicht.
Louis Xie
3
Der RDP-Client muss eine Option anbieten, bei der die Remote-Laufwerke auf Ihren lokalen Computer übertragen werden, damit Sie remote arbeiten und dann Dateien zurück auf Ihren lokalen Computer synchronisieren können (wo die Synchronisierung lokal initiiert wird), und sie muss innerhalb getunnelt werden die RDP-Sitzung. Das Öffnen Ihrer lokalen Laufwerke für den Remote-Computer ist zumindest für mich eine viel größere Sicherheitslücke. Ein regulärer SMB-Zugriff auf \\ Computer ist für entfernte Windows-VMs in der Cloud normalerweise nicht möglich.
Jarmod
2
Kompromiss: Erstellen Sie eine Netzwerkfreigabe auf Ihrem Computer und verbinden Sie diese Freigabe als Laufwerk (über Explorer, Extras> Netzwerklaufwerk zuordnen). Fügen Sie dieses Laufwerk dann der Liste der Laufwerke hinzu, auf die der Remoteserver zugreifen soll. Nur die Dateien in diesem Ordner sind dann für den Remote-Server zugänglich.
Sleblanc
Sie sollten auch sicherstellen, dass Sie keine Einschränkungen für den Computer haben, auf den Sie ein Remoting durchführen, indem Sie Remotedesktopdienste-Manager oder tsconfig.msc (oder tscc.msc) auf dem Windows-Server ausführen. Siehe @ Nixphoes Antwort auf diesen Beitrag
BornToCode
1
Anstatt ein ganzes Laufwerk zuzuordnen, können Sie einen Ordner zuordnen, indem Sie mit subst einen neuen Laufwerksbuchstaben erstellen, z. B. subst p: C: \ users \ Example
eug
50

Strg + C auf dem Remotedesktop und Strg + V auf lokaler Ebene, wenn Sie keine automatisierte Lösung suchen. (Bitte überprüfen Sie RD Config, um das Kopieren und Einfügen zu aktivieren.)

Raymond
quelle
11
Ich habe nicht nach einer Skriptlösung gesucht, also danke dafür, @Raymond.
Joshua Pinter
1
funktioniert bei mir nicht
Keramat
23

Nachdem Sie die gewünschten Laufwerke mit mstsc zugeordnet haben, können Sie \\tsclientauf das Dateisystem des lokalen Computers zugreifen, dh auf den Terminaldiensteclient, von dem aus Sie RDP auf die Remote-Box übertragen haben.

Wenn Sie nur versuchen, eine Datei von einer Remote-Box zu kopieren, tun Sie einfach \\machine\c$\pathusw. oder geben Sie den Ordner frei \\machine\share, um sie abzurufen. RDP ist in diesem Fall nicht erforderlich.

Manojlds
quelle
Um es zu verwenden \\tsclient, müssen Sie zuerst die Laufwerke auswählen, die in die RDP-Sitzung aufgenommen werden sollen.
Andy Arismendi
@AndyArismendi - Nicht, wenn Sie \\tsclient\cusw. tun . Tsclient ist ein Literal und kein Platzhalter für die Maschine. Ich werde es jedoch bestätigen.
Manojlds
Ich habe es gerade versucht ... Keine Arbeit, es sei denn, ich wähle zuerst Laufwerke über die mstsc-GUI aus.
Andy Arismendi
@AndyArismendi - Es scheint nur zu funktionieren, wenn die Laufwerke zugeordnet sind. Da meine Laufwerke immer zugeordnet waren, dachte ich, dass dies nicht benötigt wurde.
Manojlds
Wäre wahrscheinlich eine Sicherheitslücke, wenn Ihre lokalen Laufwerke immer zugänglich wären ... Ich habe die mstsc-Flags überprüft und es gibt keine Möglichkeit, sie über die Befehlszeile zuzuordnen.
Andy Arismendi
10

Sobald Sie die benötigten Laufwerke gemappt haben wie Andy sagt, können Sie aus der Ferne eine ausführen LOCAL Batch - Datei jedes Mal , wenn es den lokalen Pfad verbinden Angabe (mit dem \\tsclient\clokalen Laufwerk verweisen) in der Registerkarte Programme auf RDP - Eigenschaften.
Denken Sie daran, vor diesem Pfad cmd / c zu schreiben .
Die rdp-Verbindung wird automatisch geschlossen, sobald die Batchdatei endet. Sie können den pauseBefehl jedoch am Ende hinzufügen , um zu sehen, was während der Ausführung passiert ist.

Auf diese Weise können Sie die Batchdatei bearbeiten, bevor Sie eine Verbindung herstellen.

rdp BAT ausführen

Ivan Ferrer Villa
quelle
7

Stellen Sie sicher, dass Ihr Remote-Computer PSRemoting aktiviert, indem Sie den folgenden Befehl in Powershell ausführen

Enable-PSRemoting –Force

Führen Sie auf dem Clientcomputer den folgenden Befehl aus, um die Verbindung herzustellen.

net use "\\{RemoteIP}\c$" "{Password}" /USER:"{Username}" /persistent:no

Hier, nachdem Sie Copy-Item, Delete-Item über das Netzwerk verwenden können.

Copy-Item [PACKAGEPATH]\* \\[COMPUTER]\c$\installers -recurse
Dasun
quelle
4
  1. Führen Sie auf dem Client-Computer Ausführen-> mstsc.exe-> Lokale Ressourcen-> Zwischenablage aktivieren aus.
  2. In Remote-Maschine-> Windows Befehl ausführen (Windows-Taste + R).
  3. Öffnen Sie den Befehl cmd -> (Taskkill.exe / im rdpclip.exe)
  4. Sie haben also "Erfolg"
  5. Geben Sie dieselbe Eingabeaufforderung "rdpclip.exe" ein.
  6. Kopieren Sie nun beide und fügen Sie sie ein
Raghulraj Palanisamy
quelle
1

eug hat geschrieben, was ich denke , ist ein äußerst nützlicher Kommentar , der von allen übersehen zu werden scheint:

Sie können einen einzelnen Ordner ganz einfach freigeben, indem substSie ihn einem Laufwerksbuchstaben zuordnen und dann dieses Laufwerk auf dem Remotedesktop auswählen.

Beachten Sie, dass es ziemlich leicht zu Problemen mit dieser Methode kommt, da substdie Zuordnung nur für den Benutzer durchgeführt wird, unter dem sie ausgeführt wird.
Daher empfehle ich, alles an einer einzigen Eingabeaufforderung auszuführen:

  1. Öffnen Sie eine Eingabeaufforderung (Win + R -> cmd)
  2. Art subst <lettertomap>: <pathtofolder>
  3. Typ mstsc(der Remotedesktop startet)

substBeachten Sie natürlich, dass die Zuordnungen bei Neustarts nicht dauerhaft sind. Dies ist daher meistens für eine einmalige Sitzung der Dateiübertragung praktisch.

Es gibt auch andere Möglichkeiten, das Mapping durchzuführen , siehe raymond.cc .

Und ja, das Mapping scheint den Zugriff auf den Rest des Laufwerks nicht zuzulassen, obwohl ich mein Leben nicht darauf wetten würde, dass es keine chroot-ähnlichen "Schwachstellen" aufweist (vorausgesetzt, es soll überhaupt sicher sein). .

gbr
quelle
0

1) Installieren Sie Dropbox oder ein gleichwertiges Cloud-Speicherprodukt und synchronisieren Sie die erforderlichen Dateien auf diese Weise zwischen Computern. Denken Sie daran, dass Sie nur bestimmte Ordner auf bestimmten Geräten synchronisieren können (Sie müssen nicht die gesamte Dropbox synchronisieren, sondern nur die Ordner, die Sie benötigen).

2) Wenn Sie mehr als einen Benutzer auf dem Remote-Server einrichten dürfen, haben Sie einen zweiten Benutzer und lassen Sie dann die Sitzung von Benutzer2 die RDP-Sitzung mit Benutzer1 verbinden. Dadurch bleibt die Benutzeroberfläche von Benutzer1 in der Cloud am Leben, ohne dass Sie lokal bei rdp angemeldet bleiben müssen.

Dieses Video sollte Ihnen zeigen, wie Sie dieses 2-Benutzer-Setup auf Ihrem Server implementieren, um eine rdp-Sitzung offen zu halten. Beachten Sie, dass dies "permanent" 1 RDP-Sitzung verwendet, bis Sie sich entscheiden, sie zu schließen. [Markdown kann kein Video einbetten :(]

Verwenden Sie dann AmmyyAdmin AnyDesk auf dem Desktop von Benutzer1, um eine Verbindung herzustellen und den Desktop zu bearbeiten. Dies beinhaltet die Verwendung der Fähigkeit des Dateimanagers von AnyDesk, jeden benötigten Ordner zu durchsuchen und zu kopieren. AnyDesk kann kostenlos sein, wenn Sie eine direkte IP-Verbindung herstellen. Die meisten vps-Server haben dedizierte IP-Adressen oder Subdomain-Adressen, daher sollte dies kein Problem sein. Es empfiehlt sich, Ihr AnyDesk-Login mit einem Kennwort zu schützen und festzustellen, welche IDs Zugriff auf unbeaufsichtigte Remoteverbindungen haben. Der AnyDesk-Dateimanager ist etwas grob, funktioniert aber. Ihre große Sache ist Einfachheit und Geschwindigkeit.

Hinweis: Verwenden Sie den tragbaren Modus nur auf dem Desktop des Remotebenutzers. Installieren Sie AnyDesk NICHT vollständig. Außerdem kann sich die CPU-Auslastung erhöhen, um den Desktop-Bildschirm zu streamen. Dies hängt etwas mit der Größe des RDP-Fensters zusammen. Ich verwende ein 1280 x 2048-Fenster mit 4 Kernen und die CPU-Auslastung beträgt 22-25% im Leerlauf oder beim Bewegen von Objekten. Dies kann sich verringern, wenn sich auf dem Zielserver mehr Video-RAM oder Grafikprozessor befindet. Wenn Sie jedoch nur "Dateien durchsuchen" (nur den Dateimanager verwenden, ohne den Desktop zu streamen), beträgt die CPU-Auslastung> 0,3% Leerlauf und> 1 Durchschnitt% beim Übertragen von Dateien (Burst bis zu 5-6%, wenn das Hochladen der Datei abgeschlossen ist und die Stücke werden finalisiert).

Sie müssten Ihre eigenen Skripte (Java, .net, c # / c ++, AutoIT usw.) schreiben , um AnyDesk lokal zu starten und das Verbinden und Herunterladen bestimmter Dateien zu automatisieren.

Diese Strategie ist etwas komplexer, sollte aber den Job machen. Ich bin mir nicht sicher, warum Microsoft RDP keinen einfachen, schnellen Dateimanager haben kann, wie ihn Ammyy Admin AnyDesk hat. Naja.


Hinzufügen: Kann auch AnyDesk oder Teamviewer verwenden. Teamviewer wurde viel restriktiver in Bezug auf das, was als "nichtkommerzielle Nutzung" angesehen wird, aber Anydesk ist sicher, hat einen viel geringeren Platzbedarf und wenn Sie eine direkte Verbindung haben können, scheint die Nutzung nicht allzu wichtig zu sein. Wenn Sie eine Lizenz benötigen, schont diese die Brieftasche erheblich.

AnyDesk funktioniert einwandfrei, ohne dass eine Installation erforderlich ist. Bei Verwendung in einer Serverumgebung wie oben beschrieben wird keine Installation empfohlen.

Bearbeiten: AmmyyAdmin wird aus Sicherheits- und technischen Gründen seit einigen Monaten nicht mehr empfohlen. AutoIT als Skriptfunktion zur Automatisierung der Interaktion mit der GUI / nahezu jeder Windows-Funktion hinzugefügt.

Jon Grah
quelle
Ich bin mir nicht sicher, warum Leute ohne Kommentare abstimmen. Meine Lösung umgeht die Servereinschränkungen des Administrators UND bietet möglicherweise eine skriptbasierte Lösung zum Verschieben von Dateien auf den Server.
Jon Grah
1
2019 und die AnyDesk-Lösung funktionieren für ein ähnliches Problem immer noch perfekt.
Craig.Feied