Skip to main content

Enable-RemoteDesktop -computername DexServerCore

Now, Basically why to enable remote desktop on a ServerCore ? When you have already WinRM and PowerShell remoting already kicking.

Well, I honestly can't say why to enable it...cause I have the ServerCore machine sitting up on my Hyper-V Server and I could "connect" to it as easily. But it's good to know that it could be done.

With Server 2012 you could add a GUI or a Servercore...but there is something called Minimal Server Interface as well in Server 2012 (plus Server 2012 gives you ability to switch between all these installations too). So you might want to read up on this here . So a use scenario can be to add Minimal Server Interface on a remote host for the time being , Enable Remote Desktop  and perform Admin tasks which occur rarely.

How to Enable Remote Desktop ?

Well from what I could understand there are 2 registry entries which control this.
1. fDenyTSConnections under  'HKLM:\System\CurrentControlSet\Control\Terminal Server'. This Reg Entry tells if the Remote Desktop Connections are allowed to the Machine are not.


2. UserAuthentication under 'HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' . This Reg Entry if set to 1 indicates that "Only Secure Connections are allowed" and if set to 0 then it means "All Connections allowed".



Now , all the cool PowerShell kids (Guess I am one..lol ) would just open a PSSession to the remote machine and set these Reg Entries properly to allow Remote Desktop Connection. Legacy method would be to use remote registry to edit entries, but there is yet another way.....I stumbled across it recently on someone's blog (sorry! don't remember the blog address).




The above method is using WinRM to essentially call the scregedit.wsf script on remote machine dexservercore from my local machine.

Once done, fire up the mstsc.exe and connect to the remote machine, it prompts for the credentials.




So here it is Remote Desktop working on your Server Core.

 

Popular posts from this blog

Test connectivity via a specific network interface

Recently while working on a Private cloud implementation, I came across a scenario where I needed to test connectivity of a node to the AD/DNS via multiple network adapters.  Many of us would know that having multiple network routes is usually done to take care of redundancy. So that if a network adapter goes down, one can use the other network interface to reach out to the node. In order to make it easy for everyone to follow along, below is an analogy for the above scenario: My laptop has multiple network adapters (say Wi-Fi and Ethernet) connected to the same network. Now how do I test connectivity to a Server on the network only over say Wi-Fi network adapter?

PowerShell + SCCM : Run CM cmdlets remotely

Today I saw a tweet about using implicit remoting to load the Configuration Manager on my machine by Justin Mathews . It caught my eye as I have never really tried it, but theoretically it can be done. Note - The second tweet says "Cannot find a provider with the name CMSite", resolution to which is in the Troubleshooting section at the end.

PowerShell : Trust network share to load modules & ps1

Problem Do you have a central network share, where you store all the scripts or PowerShell modules ? What happens if you try to run the script from a network share ? or if you have scripts (local) which invoke scripts or import PowerShell modules stored on this network share ? Well you would see a security warning like below (Note - I have set execution policy as 'Unrestricted' not 'bypass' here): Run a .ps1 from the network share Well this is a similar warning, which you get when you download scripts from Internet. As the message says run Unblock-File cmdlet to unblock the script and then run it, let's try it.