Server Core

Definitive list of Windows Server installations without GUIs

Datacenter

‘Server Core’ has been around for quite a while. Roughly for as long as this domain exists (registered on January 19, 2008, while Windows Server 2008 was released on February 4, 2008).

 

About Server Core

Server Core is a significantly scaled-back installation and/or run type for Windows Server where no Windows Explorer shell is installed. All configuration and maintenance is done entirely through command-line interface windows, or by connecting to the machine remotely using Microsoft Management Console. However, Notepad and some control panel applets, such as Regional Settings, are available.

Microsoft’s primary motivation for producing a Server Core variant of Windows Server was to reduce the attack surface of the operating system.

 

List of Windows Server versions

A question I get regularly is which Windows Server versions can be run without Graphical User Interface, which Windows Server versions come without a GUI and which Windows Server offer the Server Core installation option.

The list below serves as the definitive list of released Windows Server versions.
It will be updated when Microsoft releases new versions of Windows Server.

Windows Server 2008

Released: February 4, 2008
Server Core: Installation option

Windows Server 2008 was the first version of Windows Server 2008, where the Server Core installation option could be chosen. Server Core was not the default installation option. Server Core installations of Windows Server 2008 do not offer .NET or PowerShell, but do offer the pre-release version of Hyper-V out of the box.

Hyper-V Server 2008

Released: December 30, 2008
Server Core: Only

Hyper-V Server 2008 was the first release of Microsoft’s purpose-built Hypervisor installation version. It is unavailable with a GUI and most Server Roles cannot be installed or configured. To facilitate configuring Hyper-V Server, it came with hvconfig.cmd, hvconfig.vbs and WUA_SearchDownloadInstall.vbs.

Windows Server 2008 R2

Released: October 22, 2009
Server Core: Installation option

Windows Server 2008 R2 added .NET and Windows PowerShell to the Server Core installation option.

Hyper-V Server 2008 R2

Released: October 22, 2009
Server Core: Only

Hyper-V Server 2008 R2 was introduced alongside Windows Server 2008 R2.

Windows Server 2012

Released: October 30, 2012
Server Core: Default installation option, switchable

Windows Server 2012 did away with the Enterprise edition of Windows Server. However, it added the ability to add and remove the GUI layers in full installations of Windows Server to get to a Server Core installation from an attack surface point of view.

Server Core installation of Windows Server 2012 were the first installations that featured sconfig.cmd, a derivative of Hyper-V Server’s hvconfig.cmd.

Hyper-V Server 2012

Released: October 30, 2012
Server Core: Only

Hyper-V Server 2012 is a logical upgrade to Hyper-V Server 2008 R2.

Windows Server 2012 R2

Released: November 25, 2013
Server Core: Default installation option, switchable

Windows Server 2012 R2 introduced several new roles, including the new Web Application Proxy role, that are perfectly suitable to be outfitted as Server Core installations. This is the last version where the GUI layers can be removed and added.

Hyper-V Server 2012 R2

Released: November 25, 2013
Server Core: Only

Hyper-V Server 2012 R2 is the purpose-built version of Windows Server for Hyper-V.

Windows Server 2016

Released: October 15, 2016
Server Core: Default installation option

Windows Server 2016 removed the ability to add and remove the GUI layers. If Server Core is needed, it needs to be installed as Server Core installation. In this version, ‘Full installation’ is remarketed as ‘Windows Server with Desktop Experience’.

Windows Server 2016 is the first Long Term Servicing Channel (LTSC) release in Microsoft’s new release schedule for Windows Server.

Hyper-V Server 2016

Released: October 15, 2016
Server Core: Only

Windows Server, version 1803

Released: April 30, 2018
Server Core: Only

Windows Server version 1803 was the first semi-annual (SAC) release of Windows Server. Semi-annual releases are available as Server Core, only. Windows Server version 1803 focused on making container technology available to organizations.

Windows Server, version 1809

Released: November 13, 2018
Server Core: Only

Windows Server version 19809 is a semi-annual release of Windows Server as Server Core only. Its release coincided with the release of Windows Server 2019, but offered many skip-ahead features.

Windows Server 2019

Released: November 13, 2018 (December 2018)
Server Core: Default installation option

After being announced at Ignite 2018 in Orlando, Microsoft released Windows Server 2019 on November 23, 2018. It was released for two short days, until reported problems lead to the conclusion at Microsoft that the quality of the Operating Systems was sub-par. It was rereleased in December 2018 and features Features on Demand for application compatibility.

Windows Server, version 1903

Released: May 21, 2019
Server Core: Only

Windows Server version 1903 is a semi-annual release of Windows Server as Server Core only.

Hyper-V Server 2019

Released: November 13, 2018 (June 2019)
Server Core: Only

After many months of delays, Hyper-V Server 2019 was released in June 2019.

 

Further reading

Windows Server release information

Exchange Server 2019 is coming to Server Core

Last week, the Microsoft Exchange Product Group announced the release of the Exchange Server 2019 public preview! They also lifted the veil on some of the new features/capabilities etc. of this new major build of Exchange Server. To say that I’m excited about this release is an understatement… I feel this Exchange Server version is groundbreaking due to one of its new features, touted by the team as making Exchange Server 2019 the safest Exchange Server yet.

 

Of course, you’ll think I drank too much of the Kool-Aid and simply bought the same line the team has been marketing for the last couple of years for many Microsoft products, including Windows. This time it’s different. This time, it’s not really an Exchange Server feature, but more a platform support feature:

Exchange Server 2019 is coming to Server Core.

 

Yes!

It will be finally possible to install Exchange Server 2019 on Server Core installations of Windows Server 2016 and Windows Server 2019. The Product Group mentions that they consider this the best deployment option. It means there isn’t really a need for a desktop experience. However, it remains an option.

Preview

Exchange Server 2019 and Windows Server 2019 is still in preview, but you can download the Windows Server Insider Preview here (after signup) and the Exchange Server 2019 Preview here. As both versions are still in preview, anything in the above text might still change before either of these products reach Release to Manufacturers (RTM)…

My Server Core April Fools’ Day Prank

We are rapidly closing in on April 1st and, as a Server Core afficianado, I can’t resist playing a practical joke on my colleagues managing our Server Core installations. Inspired by the Scripting Guy blogpost yesterday, I’ll disable all network adapters using the following PowerShell Oneliner:

Get-NetAdapter | Disable-NetAdapter -Confirm:$false

I’ll be running these commands via remote block execution pointing to a couple of Server Core installations offering non-vital and redundant services.  Since we have monitoring, it’ll be interesting to see in what manner and timeframe my colleagues will be able to solve the riddle of their servers falling off the network. Luckily, it’s been a while since anything happened to these hosts, but that is to be expected when you go Server Core.

Some Active Directory Domain Controllers, that second DHCP server, perhaps that second issuing Certification Authority, but certainly the Windows Server Update Services (WSUS) Server will see some action in one week’s time. *evilgrin*

Server Core installations now benefit from Windows Defender, too.

While I write this, Windows Server 2012 R2 is Microsoft’s latest and greatest Windows Server version.

I planned on writing a blogpost on all the new features, specific to Server Core, but decided that this one blogpost would suffice…

  

Server Core vs. Full Installations

Don’t get me wrong, though. Server Core installations offer tons of new features and I really advice you to check it out.

The point is, however, that, these days, Server Core installations aren’t that special anymore. Most of the Server Roles and Features are available for both Full installations and Server Core installations. Also, since Windows Server 2012, you can switch between Server Core and Full (and minumum shell) after installation, making for a really interesting story when admins don’t run Server Core installations.

 

Windows Defender

Which brings me to the one feature specific for Server Core installations in Windows Server 2012 R2. According to the What’s Changed in Security Technologies in Windows 8.1 page on Microsoft TechNet:

In Windows Server 2012 R2 and Windows 8.1, Windows Defender is available on Server Core installation options (without the user interface), and it is enabled by default.

Windows Defender is primarily intended for consumer and unmanaged PC scenarios, and most large organizations will want to use an enterprise antimalware solution such as System Center 2012 Endpoint Protection, which also includes support for ELAM.

  

Concluding

With Windows Defender built into Server Core installations, these installations are now more malware resistant from day 1.

Of course, when you decide to implement an anti-malware solution, like Microsoft’s System Center 2012 Endpoint Protection, the malware scanning part of Windows Defender will be disabled, until such time you uninstall the anti-malware solution (properly).

How to disable Password complexity on Server Core installations

I feel Microsoft is doing a great job when it comes to the default security of their products. I’m not the only one, as Microsoft attitude towards security and user-friendliness has even earned it kudos in the keynote of the Australian Linux Conf last week for its default SecureBoot implementations on OEM hardware.

However, many people struggle with the default password requirements in Windows Server. While it’s pretty easy to change the password requirements in Server with a GUI installations, it’s not that straightforward on Server Core installations. So, here’s a detailed how-to:

    • First, perform your Server Core installation and provide a complex password for the built-in Administrator account, when you’re prompted to do so after the initial installation. This password must meet the following requirements:
      1. Passwords cannot contain the user’s account name or parts of the user’s full name that exceed two consecutive characters.
      2. Passwords must be at least six characters in length.
      3. Passwords must contain characters from three of the following four categories:
        1. English uppercase characters (A through Z).
        2. English lowercase characters (a through z).
        3. Base 10 digits (0 through 9).
        4. Non-alphabetic characters (for example, !, $, #, %)
    • Now, while logged on as this user, open a command prompt.
    • Type the following command:

secedit.exe /export /cfg C:\secconfig.cfg

Export the Security Configuration (click for original screenshot)

    • This will dump the security configuration settings of the local computer to the file C:\secconfig.cfg.
    • Open Notepad by typing Notepad.exe on the command prompt. In Notepad, use the Open… command from the File menu or Ctrl+O to open C:\secconfig.cfg. In the Open window, click on This PC in the left pane and then select Local Disk (C:). In the bottom right corner change the selection criteria from Text documents (*.txt) to  All Files.

Open the Security Configuration (click for original screenshot)

Now, select secconfig.cfg, double-click it or click Open.

    • In secconfig.cfg we’re going to need to change the value for PasswordComplexity from 1 to 0. Scroll down, until you get to the line that reads PasswordComplexity = 1. Change the 1 to 0. Of course, you can also use Ctrl+F to find it. When you’re really lazy (like I am), you can also deploy a straight Ctrl+H to replace PasswordComplexity = 1 to PasswordComplexity = 0.

Tip!
When you also dislike the passwords of accounts expiring, you can also configure that here. Looking to enable the guest account? Go ahead.

    • When done, use the Save command from the File menu to save the new settings to the file. Next, close Notepad by either clicking on the red tab in the top right corner of the application or by pressing Alt+F4.
    • To load the edited file as your new security configuration, use the following command:

secedit.exe /configure /db %windir%\securitynew.sdb /cfg C:\secconfig.cfg /areas SECURITYPOLICY

Apply the Security Configuration (click for original screenshot)

    • The new Security configuration will apply to all password changes and new password. So, you can change the password for the built-in administrator to whatever you like:

net user .\administrator Z

Change the password for the built-in Administrator account (click for original screenshot)

In the example above, we’ve given the password ‘Z’ to the administrator. Glimlach

 

Further reading

Windows Web Server 2008 R2 Server Core local password complexity
HOWTO: Disable complex password policy on Hyper-V Server 2008?
Disable complexity password on Windows 2008 Server Core

Statistics on 2013

As an avid Server Core fan, I though you might be interested on the topics that were most read on this blog in 2013…

So here goes:

  1. How to install a Server Core R2 Domain Controller
  2. How to disable the Windows firewall on Server Core installations of Windows Server 2012 and Hyper-V Server 2012 
  3. Switching between the four GUI layers in Windows Server 2012 with PowerShell one-liners
  4. Switching between GUI modes in Windows Server 8 
  5. KnowledgeBase: Errors connecting to Windows Server 2008 R2 or Windows Server 2012 Device Manager remotely 
  6. Fun with FSMO roles and functional levels on Server Core Domain Controllers 
  7. Get your Server Core Freak on! 
  8. Updating Server Core and Swithing GUIs 
  9. What would you choose? Flexibility vs. Disk space 
  10. Running into vague errors in Windows Server 2012 Server Core but not in Server with a GUI installation? Here’s one solution 

See you in 2014!

Upgrade your Windows Server 2012 R2 RTM Server Core Installs

Today, Microsoft has made Windows Server 2012 R2 available to the public.

It’s no longer the fortunate TechNet and MSDN subscribers and Volume Licensing Service Center (VLSC) aficionados who have Windows Server 2012 R2 RTM Server Core bragging rights:

Now everyone and their moms gain access to Microsofts latest and greatest Windows Server product family (and its System Center cousins).

For those of you who have been playing with Windows Server 2012 R2 RTM and Hyper-V Server 2012 R2 RTM since they became available, it’s important to upgrade your Server Core installations from the Release to Manufacturers (RTM) version to the General Availability (GA) version.

For this, you’ll need to download and install these two Windows Server updates:

 

You can easily install these updates through Server Configuration (sconfig.cmd), option 6) Download and Install Updates.

Enjoy! Glimlach

Get your Server Core Freak On!

When you’re a current TechNet and/or MSDN subscriber, you’re in luck today!

Microsoft has made the Release to Manufacturers (RTM) bits for Windows Server 2012 R2 and Hyper-V Server 2012 R2 available to current TechNet and/or MSDN subscribers.

Here’s the info:

  • Microsoft Hyper-V Server 2012 R2 (x64) – DVD (English)
    en_microsoft_hyper-v_server_2012_r2_x64_dvd_2708236.iso    
    1917 MB
    SHA1 1EEC2EE8DD77E8EB970B210C9B0E01986D7210DD
      
  • Windows Server 2012 R2 (x64) – DVD (English)
    en_windows_server_2012_r2_x64_dvd_2707946.iso
    4071 MB
    SHA1 B6F063436056510357CB19CB77DB781ED9C11DF3

  

Enjoy! Smile

Server Roles in Windows Server 2012 Server Core

WebYou might be interested in working with the available Server Roles in Server Core installations of Windows Server 2012.

While you can always install Windows Server 2012 as a Full Installation, you will not gain all the benefits of having it installed as a Server Core installations. Among other things, the sources to pile on the Graphical User Interface (GUI) are still present on a previously converted installation. That’s why I wrote a series on implementing and managing Server Roles on Server Core installations of Windows Server 2012, natively.

I’ve posted this series on 4sysops.com, the free resource for Windows Administrators. You can find all 12 posts through the links below:

  1. Looking at available Server Roles in Windows Server 2012 Server Core
  2. Configuring a Windows Server 2012 Server Core installation as an Active Directory Domain Controller
  3. Configuring a Windows Server 2012 Server Core installation as a DNS Server
  4. Configuring a Windows Server 2012 Server Core installation as a DHCP Server
  5. Configuring a Windows Server 2012 Server Core installation as a File Server
  6. Configuring a Windows Server 2012 Server Core installation with Active Directory Certificate Services 
  7. Configuring a Windows Server 2012 Server Core installation as a Print Server
  8. Configuring a Windows Server 2012 Server Core installation as a Remote Access Server with RRAS, DirectAccess and Routing
  9. Configuring a Windows Server 2012 Server Core installation as a Hyper-V Host
  10. Configuring a Windows Server 2012 Server Core installation as a Web Server
  11. Configuring a Windows Server 2012 Server Core installation as a FTP Server
  12. Configuring a Windows Server 2012 Server Core installation as a Windows Server Update Server (WSUS)

Enjoy! Smile

Meet the new Server Core Program Manager!

When I took my first steps with Server Core installations, I met the Principal Program Manager for Server Core within Microsoft at its TechEd event: Andrew Mason.

Andrew is responsible for all the work done in the Server Core area, wrote at the Server Core blog, supplied answers on the TechNet Forums, and presented several times on the benefits of using Server Core installations compared to Full installations. Andrew is also responsible for making Server Core the default installation option in Windows Server 2012.

A while ago, I noticed Andrew wasn’t with Microsoft anymore.

After some investigation, I found out Andrew is now working with Amazon, apparently following the path laid out by Steve Riley and Jesper Johansson. Of course, I wish him the best of luck!

It also leaves the question on who’s the Program Manager for Server Core today unanswered…

Well. That question didn’t last long unanswered, since I met the Program Manager for Server Core last month, during a special MVP party at the balcony of the Palacio de Cibiles in Madrid during TechEd Europe 2013.

Benjamin Herila

Benjamin Herila

Not only is Benjamin currently leading the team improving on Server Core functionality in Windows Server. He also is the guy that wrote the Get-DisplayResolution and Set-DisplayResolution PowerShell Cmdlets and the underlying setres.exe executable. These bits allows us to easily change the display resolution on the command line in both Server Core and Full installations of Windows Server 2012 and beyond.

So why is this important?

If you want to keep up to date with Server Core (or any featureset of a Microsoft product), it’s good to have the name of the Program Manager, since this is the person responsible for most of the communication around the featureset and most of the presentations at both internal and external Microsoft events.

For instance, one of Benjamin’s presentations is already available online through Channel 9. Also, the last five posts on the Server Core blog have been written by Benjamin.

So, when you attend a Microsoft event and are looking for Server Core presentations, pick Benjamin Herila from the speaker list and go see his presentation(s)!

On the TechNet Forums, Benjamin has already supplied answers on several questions, related to the work his team does. It’s not just Server Core, but also Windows Server Update Services (WSUS). If you see an answer from Benjamin, you’ll know it’s the definitive answer.

Cheers, Benjamin! Martini glass