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


Vor allem mit der Option zu installieren Serverkern in Server 2008 und höher, die Verbindung zu Windows-Servern über eine CLI ist eine zunehmend nützliche Fähigkeit, wenn nicht eine, die unter Windows-Administratoren sehr verbreitet ist.

Praktisch jedes Windows GUI Management-Tool verfügt über eine Option zum Herstellen einer Verbindung mit einem Remote-Computer, aber keine solche Option im integrierten Windows vorhanden CLI (cmd.exe), die den ersten Eindruck vermitteln, dass dies möglicherweise nicht möglich ist.

Ist es möglich, einen Windows Server über eine CLI fern zu verwalten oder zu verwalten? Und wenn ja, welche Möglichkeiten gibt es, dies zu erreichen?


79
2017-09-18 11:11


Ursprung




Antworten:


Es gibt mehrere ziemlich einfache Optionen für die Remoteverwaltung eines Remote-Windows-Servers über eine Befehlszeile, einschließlich einiger systemeigener Optionen.

Native Optionen:

  1. WinRS / WinRM

    • Windows Remote Shell / Management Tool ist die einfachste Möglichkeit, einen Windows-Remote-Server in einem Befehlszeilen-Dienstprogramm zu verwalten, und wie bei den meisten Windows-Befehlszeilendienstprogrammen ss64 hat eine gute Seite über seine Optionen und Syntax.
    • Obwohl dies in der Microsoft-Dokumentation nicht explizit angegeben ist, kann dies zum Starten einer Remote-Instanz von Microsoft verwendet werden cmd.exe, die eine interaktive Befehlszeile auf dem Remote-System statt als Befehlszeilenoption zum Ausführen eines einzelnen Befehls auf einem Remote-Server erstellt.
      • Wie mit: winrs -r:myserver.mydomain.tld cmd
    • Dies ist auch die nativ unterstützte Option, die Administratoren von anderen Systemen wahrscheinlich am vertrautesten ist (* nix, BSDusw.), die in erster Linie sind CLI-basierend.

  2. Power Shell

  3. Remotedesktop

    • Wahrscheinlich nicht gerade das erste, was einem als Fenster einfällt CLI Option, aber natürlich, mit mstsc.exe Verbindung zu einem Server über Remote Desktop Protocl (RDP) aktiviert die Verwendung einer Befehlszeile auf dem Remote-Server.
    • Herstellen einer Verbindung zu einer Server Core-Installation über RDP, ist tatsächlich möglich und wird die gleiche Schnittstelle wie die Verbindung mit der Konsole geben - eine Instanz von cmd.exe.

Beliebte, nicht-native Optionen:

Obwohl Windows jetzt einige native Optionen für den Zugriff auf einen Remote-Server über eineCLIDies war nicht immer der Fall, und als Ergebnis wurden einige ziemlich populäre Lösungen von Drittanbietern geschaffen. Die drei bemerkenswertesten sind unten.

  1. Installieren SSH auf Ihrem Windows Server

    • Wenn du es einfach haben musst SSHdas ist auch eine Option, und da ist es ein Leitfaden auf social.technet für die Installation von OpenSSH auf Server 2008.
    • Wahrscheinlich am nützlichsten für Administratoren anderer Systeme (* nix, BSDusw.), die viel Gebrauch machen SSH zu diesem Zweck, obwohl es selbst für Windows-Administratoren Vorteile gibt, einen einzigen Terminal-Emulator-Client (wie z Kitt) Speichern Sie eine Reihe von Zielcomputern und benutzerdefinierte (oder standardisierte) Einstellungen für jeden.

  2. PSExec

    • Die ursprüngliche Option zum Ausführen von Remote-Befehlen in einer Windows-Box über Windows CLIDas ist Teil des Ausgezeichneten SysInternals Suite. Als eines der ganz wenigen "Muss" -Pakete für Windows-Administratoren wurden die SysInternals-Tools so weithin beachtet und verwendet, dass SyInternals von Microsoft gekauft wurde, und die Tools werden nun offiziell von Microsoft unterstützt.
    • Genauso wie mit WinRS/RM, PSExec kann verwendet werden, um einzelne Befehle an einen Remote-Server zu senden oder um eine interaktive Instanz von zu starten cmd.exe auf einem Remote-Computer.
      • Wie mit: psexec \\myserver.mydomain.tld cmd
    • Wie bei den anderen Optionen gibt es Schritte, die man als Erstes durchführen muss PSExec kann sich tatsächlich mit dem Zielrechner verbinden.

  3. Fügen Sie dem Server einen Dienstprogramme-Ordner hinzu und speichern Sie seinen Wert in der Systemvariablen% PATH%

    • Wie in den Kommentaren erwähnt, gibt es viele gute SysInternals-Programme, die auf der Kommandozeile ausgeführt werden können und auf ein entferntes System abzielen, und dies gilt für mehr als nur SysInternals.
    • Im Grunde genommen packen Sie ein Paket Ihrer bevorzugten Windows-Dienstprogramme in einen Ordner, den Sie auf alle Ihre Server schieben Fügen Sie diesen Ordner dem hinzu %PATH% Umgebungsvariable Ihrer Systeme. Beide sind leicht durch zu machen GPO.
      • (Ich schließe die SysInternals Suite, Kitt, WinDirStat und eine Reihe von benutzerdefinierten Skripts, die ich selbst wiederverwende) in einen Ordner, der an alle meine Server gesendet wird
    • Offensichtlich ist dies nützlich, um mehr als nur Windows-Systeme zu verwalten CLI, aber ich finde es so nützlich, ich denke, es lohnt sich sowieso.

91
2017-09-18 11:11



Vergessen Sie nicht die anderen PSTools, wie PSList, PSKill usw. PSExec ist nur ein kleiner Teil dieses Toolsets und die meisten sind sehr wenig ausgelastet. - John Gardeniers
Ich würde auch hinzufügen, dass mehrere Befehlszeilenprogramme wie shutdown und iisreset (wenn IIS installiert ist), die es einem ermöglichen, einen Computer anzugeben, auf dem ausgeführt werden soll, und daher remote verwendet werden kann. - Joshua Drake
Warum hast du die Telnet-Server-Funktion nicht erwähnt? - abatishchev
@abatishchev Weil niemand heutzutage einen Telnet-Server für irgendwas betreiben sollte. - HopelessN00b
Funktioniert einwandfrei, um Konsolenbefehle auszuführen, wenn sie ordnungsgemäß konfiguriert und in einer gesicherten Umgebung ausgeführt werden. - abatishchev


Nur der Vollständigkeit halber: Obwohl es aus verschiedenen Gründen nicht die beste Lösung ist, unterstützt jedes Windows-System den Telnet-Dienst, der aus der Liste der Funktionen aktiviert werden kann.

Die Telnet-Implementierung von Microsoft unterstützt auch die NTLM-Authentifizierung, sodass im Gegensatz zu einem Standard-Telnet zu einem Unix-System bei der Verwendung kein Klartext-Passwort im Netzwerk gesendet wird.


5
2018-03-31 13:09



Telnet-Server wurde in Windows 10 entfernt - daixtr
Verwenden Sie dies nur, wenn kein anderer sicherer Weg möglich ist. Der Verkehr sollte noch durch einen gesicherten VPN gehen - mit