Wie kann ich über eine Befehlszeilenschnittstelle eine Verbindung zu einem Windows-Server herstellen? (CLI)

90

Insbesondere mit der Option, Server Core in Server 2008 und höher zu installieren, wird das Herstellen einer Verbindung zu Windows-Servern über eine CLIzunehmend nützliche Funktion, wenn nicht eine, die unter Windows-Administratoren sehr verbreitet ist.

Praktisch jedes Windows- GUIVerwaltungstool verfügt über eine Option zum Herstellen einer Verbindung mit einem Remotecomputer. Im integrierten Windows CLI( cmd.exe) ist jedoch keine solche Option vorhanden , sodass der erste Eindruck entsteht, dass dies möglicherweise nicht möglich ist.

Ist es möglich, einen Windows-Server mithilfe einer CLI remote zu verwalten oder zu verwalten? Und wenn ja, welche Möglichkeiten gibt es, um dies zu erreichen?

HopelessN00b
quelle

Antworten:

102

Für die Remoteverwaltung eines Windows-Remoteservers über eine Befehlszeile stehen mehrere recht einfache Optionen zur Verfügung, darunter einige native Optionen.

Native Optionen:

  1. WinRS / WinRM

    • Das Windows Remote Shell / Management-Tool ist die einfachste Möglichkeit, einen Windows- Remoteserver mit einem Befehlszeilendienstprogramm aus der Ferne zu verwalten. Wie die meisten Windows-Befehlszeilendienstprogramme verfügt auch ss64 über eine gute Seite mit Optionen und Syntax .
    • Obwohl dies nicht ausdrücklich in der Microsoft-Dokumentation angegeben ist, kann dies zum Starten einer Remote-Instanz von verwendet werden cmd.exe, die eine interaktive Befehlszeile auf dem Remote-System erstellt, anstatt als Befehlszeilenoption zum Ausführen eines einzelnen Befehls auf einem Remote-Server.
      • Wie bei: winrs -r:myserver.mydomain.tld cmd
    • Dies ist auch die nativ unterstützte Option, die Administratoren anderer Systeme (* nix BSDusw.), die hauptsächlich auf CLI-basierten Systemen basieren , wahrscheinlich am besten bekannt ist .

  2. Power Shell

  3. Remotedesktop

    • Wahrscheinlich ist dies nicht das erste, was als Windows- CLIOption in den Sinn kommt. mstsc.exeWenn Sie RDPjedoch Remotedesktopprotokoll ( ) verwenden , um eine Verbindung zu einem Server herzustellen, wird die Verwendung einer Befehlszeile auf dem Remoteserver ermöglicht.
    • Eine Verbindung zu einer Server Core-Installation über RDPist tatsächlich möglich und bietet dieselbe Schnittstelle wie die Verbindung zur Konsole - eine Instanz von cmd.exe.

Beliebte, nicht native Optionen:

Obwohl Windows jetzt einige native Optionen für den Zugriff auf einen Remote-Server über a bereitstellt CLI, war dies nicht immer der Fall, und infolgedessen wurden eine Reihe recht beliebter Lösungen von Drittanbietern erstellt. Die drei bemerkenswertesten sind unten.

  1. Installieren Sie SSH auf Ihrem Windows Server

    • Wenn Sie nur müssen SSH, ist dies auch eine Option, und auf social.technet finden Sie eine Anleitung zum Installieren von OpenSSH auf Server 2008.
    • Dies ist wahrscheinlich am nützlichsten für Administratoren anderer Systeme (* nix BSDusw.), die viel von SSHdiesem Zweck Gebrauch machen , obwohl auch Windows-Administratoren Vorteile haben, wenn ein einzelner Terminalemulator-Client (wie PuTTY ) eine Reihe von Dateien speichert Zielcomputer und angepasste (oder standardisierte) Einstellungen für jeden.

  2. PSExec

    • CLIDies ist die ursprüngliche Option zum Ausführen von Remote-Befehlen auf einer Windows-Box über Windows und Teil der hervorragenden SysInternals-Suite . Als eines der wenigen "must have" -Pakete für Windows-Administratoren wurden die SysInternals-Tools so weithin anerkannt und verwendet, dass SyInternals von Microsoft aufgekauft wurde. Die Tools werden nun offiziell von Microsoft unterstützt.
    • Genau wie bei WinRS/ RM, PSExeckann einzelne Befehle an einen entfernten Server zu erteilen oder zu starten , eine interaktive Instanz verwendet wird , cmd.exeauf einem entfernten Computer.
      • Wie bei: psexec \\myserver.mydomain.tld cmd
    • Wie bei den anderen Optionen müssen zunächst einige Schritte ausgeführt werden, um sicherzustellen, dass PSExec tatsächlich eine Verbindung zum Zielcomputer herstellen kann .

  3. Fügen Sie dem Server einen Dienstprogrammordner hinzu und speichern Sie dessen Wert in der Systemvariablen% PATH%

    • Wie in den Kommentaren erwähnt, gibt es viele gute SysInternals-Programme, die über die Befehlszeile ausgeführt werden können und auf ein Remote-System abzielen. Dies gilt nicht nur für SysInternals.
    • Packen Sie im Grunde genommen ein Bündel Ihrer bevorzugten Windows-Dienstprogramme in einen Ordner, den Sie auf alle Ihre Server übertragen, und fügen Sie diesen Ordner der %PATH%Umgebungsvariablen Ihrer Systeme hinzu . Beides ist einfach zu erledigen GPO.
    • Natürlich ist dies nicht nur für die Verwaltung von Windows-Systemen CLInützlich, sondern ich finde es auch so nützlich, dass es sich lohnt, es einzuschließen.
HopelessN00b
quelle
6
Vergessen Sie nicht, die anderen PSTools wie PSList, PSKill usw. zu verwenden. PSExec ist nur ein kleiner Teil dieses Toolsets und die meisten davon werden nur sehr wenig genutzt.
John Gardeniers
4
Ich würde auch hinzufügen, dass mehrere Befehlszeilendienstprogramme wie shutdownund iisreset(wenn IIS installiert ist), die es einem ermöglichen, einen Computer anzugeben, auf dem ausgeführt werden soll, und daher remote verwendet werden können.
Joshua Drake
1
Warum haben Sie die Telnet-Server-Funktion nicht erwähnt?
Abatischtschew
3
@abatishchev Weil heutzutage niemand mehr einen Telnet-Server für irgendetwas betreiben sollte.
HopelessN00b
1
Funktioniert einwandfrei, um Konsolenbefehle auszuführen, wenn diese ordnungsgemäß konfiguriert und in einer gesicherten Umgebung ausgeführt werden.
Abatischtschew
5

Der Vollständigkeit halber: Obwohl dies aus verschiedenen Gründen möglicherweise nicht die beste Lösung ist, unterstützt jedes Windows-System den Telnet-Dienst, der über die Featureliste aktiviert werden kann.

Die Telnet-Implementierung von Microsoft unterstützt auch die NTLM-Authentifizierung, sodass im Gegensatz zu Standard-Telnet für ein Unix-System bei Verwendung kein Klartextkennwort im Netzwerk gesendet wird.

Massimo
quelle
Der Telnet-Server wurde in Windows 10 entfernt
typelogic
Verwenden Sie diese Option nur, wenn kein anderer sicherer Weg möglich ist. der verkehr sollte noch durch ein gesichertes vpn
mit