This topic provides the information needed to install and configure Server Core servers. It also includes a quick reference table of common tasks and the commands for accomplishing them on a Server Core server.
Server Core Installation
The Server Core installation differs not much compared to the full installation. When you install Windows Server, you can choose between Server Core Installation and Server with a GUI.
- Boot from Windows Server installation media to start the installation.
- When the auto-run dialog box appears, click Install Now.
- Select one of the Server Core options.
- Follow the instructions on the screen to complete Setup.
- After Setup completes, press CTRL+ALT+DELETE to logon.
Server Core is installed and the command prompt is up.
Now a minimum configuration is required through the command-prompt interface like naming, IP addressing and firewall settings. After this, the server can be also managed remotely using GUI tools provided by RSAT.
Configure a Server Core Server
With Server Configuration tool (Sconfig.cmd)
You can use the Server Configuration tool (Sconfig.cmd) to configure and manage several common aspects of Server Core installations.
Run Sconfig.cmd in Command Prompt. The Server Configuration tool interface opens:
Note If you closed all command prompts, to recover, press CTRL+ALT+DELETE, click Start Task Manager, click More Details, click File, click Run, and then type cmd.exe |
Quick PowerShell Reference for System Administration Tasks
Server Core Server can be configured by many PowerShell cmdlets by running powershell.exe in Command Prompt. Many of the System Administration tasks are described in this quick reference guide.
Basic tasks
Task | PowerShell cmdlet / Command prompt |
Determine the current servername | Hostname or ipconfig command |
Rename the server | Rename-Computer -NewName <String> [-ComputerName <String> ] [-DomainCredential <PSCredential> ] [-Force] [-LocalCredential <PSCredential> ] [-PassThru] [-Restart] [-Confirm] [-WhatIf] [ <CommonParameters>]Rename-Computer -NewName “DC” -Restart |
Activate the server | slmgr.vbs –ipk <productkey> Then run slmgr.vbs –ato If activation is successful, no message will return. Internet connection is required. |
Set the local administrative password | Net user administrator * |
Show local groups | net localgroup |
add a domain user account to the local group | net localgroup “<GroupName>” /add <DomainName><UserName> net localgroup “hyper-v administrators” /add administrator |
Add a user / group to the local computer | net user <domainuser name> /add *net localgroup <group name> /add |
change the time zone | Set-Date |
change international settings | run control intl.cpl |
Time settings | Timedate.cpl or Intl.cpl |
Restart Server | Restart-Computer |
Changing the Windows PowerShell Script Execution Policy | Set-ExecutionPolicy Restricted | Unrestricted |
Convert Windows Server Core mode server to a full installation by installing the GUI | Install-WindowsFeature Server-Gui-Mgmt-Infra, Server-Gui-Shell -Restart |
Networking
To view your current network configuration | Get-NetIPConfiguration |
To view the IP addresses you are already using | Get-NetIPAddress |
To view Interface numer | Get-NetAdapter -physical |
Get all of the network adapters | Get-NetAdapter -Name * -IncludeHidden |
Display the common properties for the network adapter named Ethernet 2 | Get-NetAdapter –Name “Ethernet 2” | Format-List –Property * |
Rename a network adapter | Rename-NetAdapter –Name Ethernet –NewName “Publiek”get-netadapter -interfaceindex 12 | rename-netadapter -newname “Public” |
Disable a network adapter | Disable-NetAdapter -Name “Ethernet 2” |
Enable the network adapter | Enable-NetAdapter -Name “Ethernet 2” |
Restarts network adapter | Restart-NetAdapter -Name “Ethernet 2” |
Set a static IP address | New-NetIPAddress –InterfaceIndex 12 –IPAddress 192.0.2.2 –PrefixLength 24 –DefaultGateway 192.0.2.1(InterfaceIndex is the value of IfIndex from previous steps ) |
Set DNS | Set-DNSClientServerAddress –InterfaceIndex 12 -ServerAddresses 192.0.2.4,192.0.2.5 |
Configure dns client settings | Set-DNSClient -InterfaceIndex 12 -ConnectionSpecificSuffix “lab.int” -RegisterThisConnectionsAddress $true -UseSuffixWhenRegistering $true |
Deletes an IP address and the configuration properties of that IP address | Remove-NetIPAddress |
Set the network adapter named Ethernet 1 to have VLAN ID 10 | Set-NetAdapter –Name “Ethernet 1” -VlanID 10 |
Set the MAC Address of the network adapter named Ethernet 1 | Set-NetAdapter –Name “Ethernet 1” -MacAddress “00-10-18-57-1B-0D” |
switch to using DHCP | Set-DnsClientServerAddress –InterfaceIndex 12 –ResetServerAddresses |
Join a domain | Add-Computer |
Remove a computer from a domain | Remove-Computer |
Configure your server to use a proxy server. | netsh Winhttp set proxy <servername>:<port number> |
Configure your server to bypass the proxy for Internet addresses. | Run netsh winttp set proxy <servername>:<port number>bypass-list=”<local>” |
Firewall
Configure Windows Firewall | Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled True |
Allow Remote Server Manager | Enable-NetFirewallRule -DisplayGroup “Windows Remote Management” |
Show Firewall DisplayGroups | Get-NetFirewallRule | Select DisplayGroup -Unique | Sort DisplayGroup |
Enable remote administration of the firewall | Enable-NetFirewallRule –DisplayGroup ”Windows Firewall Remote Management” |
Enable * of the firewall | Enable-NetFirewallRule –DisplayGroup ”*” |
Disable All Firewall profile’s (BLOCK) | Disable-NetFirewallRule –All |
Query example | Get-NetFirewallRule | Where { $_.DisplayGroup –Eq “Remote Volume Management”} | Format-Table |
Remote Management
Enable remote use of Windows PowerShell | Enable-PSRemoting |
Enable Server Manager Remote Management | Configure-SMRemoting.exe –enable |
Allow Remote Server Manager | Enable-NetFirewallRule -DisplayGroup “Windows Remote Management” |
Services
List Service Information | Get-Service |
List stopped services | Get-Service | Where-Object {$_.status -eq “stopped”} |
List running services | Get-Service | Where-Object {$_.status -eq “running”} |
Modify Properties of a Service | Set-Service clipsrv -startuptype “manual” |
Start Service | Start-Service -displayname “Bluetooth service” |
Stop Service | Stop-Service -displayname “Bluetooth service” |
Restart Service | Restart-Service -displayname “bluetooth service” |
Kill Process | Stop-Process -processname notepad |
Files and Folders
Copy Files or Folders | Copy-Item c:scripts*.txt c:test |
Create a New File or Folder | New-Item c:scriptsWindows PowerShell -type directoryNew-Item c:scriptsnew_file.txt -type file |
Delete a File or Folder | Remove-Item c:scriptstest.txt |
Remove-Item c:scripts* -recurse | |
Remove-Item c:scripts* -exclude *.wav | |
Rename a File or Folder | Rename-Item c:scriptstest.txt new_name.txt |
Append Data to a Text File | Add-Content c:scriptstest.txt “`nThe End”`n — New line`r — Carriage return`t — Horizontal tab |
add a timestamp | $A = Get-Date; Add-Content c:scripts*.log $A |
Output to a Text File | Get-Process | Out-File c:scriptstest.txt |