Server Core is a minimalistic MicrosoftWindows Server installation option, debuted in Windows Server 2008. Server Core provides a server environment with functionality scaled back to core server features, and because of limited features, it has reduced servicing and management requirements, attack surface, disk and memory usage.[1][2] Andrew Mason, a program manager on the Windows Server team, noted that a primary motivation for producing a Server Core variant of Windows Server 2008 was to reduce the attack surface of the operating system, and that about 70% of the security vulnerabilities in Microsoft Windows from the prior five years would not have affected Server Core.[3] Most notably, no Windows Explorer shell is installed.[1] All configuration and maintenance is done entirely through command-line interface windows, or by connecting to the machine remotely using Microsoft Management Console (MMC), remote server administration tools, and PowerShell.
Configuration levels
As Server Core implementations matured, it has evolved from an installation option to a configuration level.[4] Server Core is less looked down as a stripped version, instead the full GUI version is being thought of having a rarely needed client layer on top of the server layer[5]
Configuration levels in order of increasing complexity[4] for Windows server installations
As Server Core is not a different version of Windows Server 2008, but simply an installation option, it has the same file versions and default configurations as the full server version.[1] In Windows Server 2008 and 2008 R2, if a server was installed as Server Core, it cannot be changed to the full GUI version and vice versa.[2]
To make administration of a Server Core machine easier, a Windows script called "scregedit.wsf" was included to make basic changes like turning Automatic Updates on or off, turning Remote Desktop on or off and change page file settings.[9]
Windows Server 2008 R2
In Windows Server 2008 R2, Server Core includes a subset of the .NET Framework, so that some applications (including ASP.NET web sites and Windows PowerShell 2.0) can be used. Having .NET support, it is also the first Server Core version where Microsoft SQL Server can be installed (a supported scenario only with SQL Server 2012+).[10][11] Server Manager has become remoteable.[4] New roles had been enabled to run on Server Core, including Active Directory Certificate Services and the File Server Resource Manager component of the File Services role. WoW64 is available by default, but can be disabled.[12]
In addition to the DISM command, a new command line Server Configuration tool (Sconfig.cmd) has arrived to configure and manage several common aspects of Server Core installations.[13] Server Manager can be used to remotely administer a Server Core machine.
Windows Server 2012
Unlike its predecessors, Windows Server 2012 can switch between "Server Core" and server with a DE installation option without reinstallation.[4] Server Core is now the default configuration level.[4] There is also a new installation option, "minimal server interface" that allows some GUI elements such as MMC and Server Manager to run, but without the normal desktop, shell or default programs like File Explorer.[14] The "minimal server interface" is in fact a server role (Server-Gui-Mgmt-Infra), the full GUI version contains the Server-Gui-Shell role as well. Some new roles are available, like Windows Server Update Services (WSUS), Active Directory Rights Management Server, and Routing and Remote Access Server, and many new features as well.[15]
Windows Server 2016 has a minimal footprint installation option (smaller than Server Core) called Nano Server, optimized for Windows Server Containers and Hyper-V Containers, as well as other cloud-optimized scenarios. Microsoft removed the GUI stack, WoW64 and Windows Installer. There is no local logon or Remote Desktop support.[17][18]
On installation, Server 2016 offers two options: Windows Server 2016 (which is Server Core) and Windows Server 2016 Desktop Experience. Switching between these versions, as is available in Server 2012, is not supported (the possibility was removed in Technical Preview 3).[19]
Mitch Tulloch, Windows Server Core Team at Microsoft (2008). Windows Server 2008 Server Core Administrator's Pocket Consultant. Microsoft Press. ISBN9780735626263
John Paul Mueller (2008). Administering Windows Server 2008 Server Core. John Wiley & Sons. ISBN9780470238400