{"id":2437,"date":"2015-08-28T10:57:53","date_gmt":"2015-08-28T07:57:53","guid":{"rendered":"https:\/\/upcloud.com\/global\/us\/resources\/tutorials\/resolve-problems-windows-remote-desktop\/"},"modified":"2015-08-28T10:57:53","modified_gmt":"2015-08-28T07:57:53","slug":"resolve-problems-windows-remote-desktop","status":"publish","type":"tutorial","link":"https:\/\/upcloud.com\/global\/resources\/tutorials\/resolve-problems-windows-remote-desktop\/","title":{"rendered":"How to resolve common problems with Windows Remote Desktop"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">If you have problems using Remote Desktop (RDP) with your Windows server, there are a couple of things you can fix. This troubleshooting guide aims to help rule out some of the most common causes of poor functionality.<\/p>\n\n\n\n\n\n<h2 class=\"wp-block-heading\">Problems connecting<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Even while you might have trouble connecting using Windows Remote Desktop, you should always be able to log in to the <a href=\"https:\/\/hub.upcloud.com\/\">web console at your UpCloud Control Panel<\/a> or by VNC connection, the settings of which are in your server details.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Once you\u2019ve connected to your server through either of the abovementioned methods, you should be greeted by a Windows lock screen. Sign into your server with an account that has administrator privileges to continue troubleshooting.<tt id=\"remote-desktop-settings\"><\/tt><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If the connection shows something other than the lock screen, try to see if the server seems responsive. If it does not react to commands, you might have to restart your server.<\/p>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/signup.upcloud.com\/\">Try UpCloud for free!<\/a><\/div>\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Windows Remote Desktop settings<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">When you are logged in, and the server seems to be working, but Remote Desktop still cannot connect, make sure a&nbsp;remote connection is allowed. The easiest way to get to the option is to open <tt>sysdm.cpl<\/tt> by searching for it on the start menu. Then, move to the Remote tab.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The Remote Desktop needs to allow connections from other computers for the feature to work. If your server was set to allow remote control with Network Level Authentication, make sure your own computer supports this or select to allow any connection. You can find more information about Network Level Authentication at&nbsp;<a href=\"https:\/\/technet.microsoft.com\/en-us\/library\/cc742818.aspx\" target=\"_blank\" rel=\"noopener\">Microsoft\u2019s TechNet<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">While still in the RDP settings, check the allowed users by clicking the <tt>Select Users<\/tt> or by pressing <tt>S<\/tt>. All users with administrator access are automatically permitted to connect. All normal users must be added to this list.<tt id=\"firewall\"><\/tt> If you were trying to connect with user credentials that do not have admin rights, add the username you wish to connect with to the list of allowed users.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Firewall<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The Windows Firewall might be a little restrictive at times, for example, the inbound ICMP protocol that ping connections use is disabled by default. Open the <tt>Windows Firewall with Advanced Security<\/tt>&nbsp;by searching for \u201cfirewall\u201d in the start menu. Move to the <tt>Inbound Rules<\/tt> list and scroll down to <tt>Remote Desktop<\/tt> rules by pressing <tt>R<\/tt>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Windows Server 2008 should show two rules: <tt>Remote Desktop (TCP-In)<\/tt> and <tt>Remote Desktop - RemoteFX (TCP-In)<\/tt>. Both of these would in most cases be enabled as long as the server still uses the standard 3389 TCP port for RDP connections.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">With 2012 Windows Servers, the rules are split between Domain and Private, or Public profiles as well as TCP and UDP protocols, which translates to 4 separate <tt>Remote Desktop - User Mode<\/tt> rules, all of which would usually be enabled.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Optionally, while at the firewall settings, you may wish to enable ICMP for ping. Press F to find the rules called <tt>File and Printer Sharing (Echo Request - ICMPv4 - In)<\/tt> and <tt>v6<\/tt> for both IP versions.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">When you are confident that the Windows Firewall allows Remote Desktop connections, check the server-specific firewall settings on your UpCloud control panel. If you have set the default incoming rule to reject, remember to add a rule to permit traffic to the port the Remoter Desktop server is listening to, 3389, by default. Find out more about the <a href=\"https:\/\/upcloud.com\/global\/docs\/guides\/managing-firewall\/\" target=\"_blank\" rel=\"noreferrer noopener\">UpCloud Firewall<\/a> at the tutorials.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Network connection<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Test the internet connection on your server to make sure all your network resources work as they should. Start to ping out from your server. Open the Command Prompt and type <tt>cmd<\/tt> in the start menu search. Press enter then use the command below.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">ping 8.8.8.8<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">If you enabled the echo requests from Windows Firewall, you can also attempt to ping your server from your own computer. Find the server\u2019s public IP address on your <a href=\"https:\/\/hub.upcloud.com\/\">UpCloud Control Panel<\/a> under Network and Public Network.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In case the internet connection does not seem to work, check your IP configuration on Command Prompt with the following command.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">ipconfig<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">The output will list all of your server&#8217;s network connections, you should see 3 Ethernet adapters: the private network, public IPv4 and public IPv6. Check that these match with the network information in your server details under the Network tab at your&nbsp;<a href=\"https:\/\/hub.upcloud.com\/\">UpCloud control panel<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you see differences in the <tt>ipconfig<\/tt> output and your server network details page, check that all network interfaces are set to obtain the IP addresses automatically. To do this, search for <tt>Network Connections<\/tt> in the start menu and press enter to open it. Open the <tt>Properties<\/tt> for one of the Ethernet adapters, select <tt>Internet Protocol Version 6<\/tt> or <tt>4<\/tt> and click on the <tt>Properties<\/tt> button underneath. Make sure both radial buttons are set to automatic and press OK to save. Check through all of the network adapters on the server the same way.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Slow connection<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If your Remote Desktop connection works, but feels slow or disconnects at times, you should try updating the network drivers. Download <a href=\"https:\/\/fedorapeople.org\/groups\/virt\/virtio-win\/direct-downloads\/latest-virtio\/virtio-win.iso\" target=\"_blank\" rel=\"noopener\">the latest Virtio drivers for Windows<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">After downloading the ISO file on your server, with Windows Server 2008 you will need to have a program like 7zip to unpack it. On Server 2012 you can simply mount the file as a disk.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">With the files available, open the <tt>Device Manager<\/tt> simply by searching for it by name in the start menu and pressing enter. Browse down to <tt>Network adapters<\/tt>, select each adapter one by one and run the <tt>Update Driver Software<\/tt>. In the update wizard, select <tt>Browse my computer for driver software<\/tt>, enter the driver&nbsp;location into the search field and press next. Note to keep the <tt>Include subfolders<\/tt> selected.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you were connected through Remote Desktop while updating the network drivers, you\u2019ll probably get disconnected for a moment. The client should be able to restore the connection automatically after the drivers have been installed successfully.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Port conflict<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">In some cases, it is possible that another application unintentionally uses the same port as Remote Desktop. This can cause connection issues or prevent Remote Desktop from connecting.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Check the ports used by programs. Enter the command below on Command Prompt.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">netstat -a -o<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Netstat will print out a list of IP addresses and port numbers they use. Look for rows with your Remote Desktop port number (3389 by default) and check the program ID (PID) at the end of these lines. One PID will belong to the RDP service. If you see another PID that uses the same port, these will conflict with one another.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To find out which programs the PIDs belong to, use the following on Command Prompt.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">tasklist \/svc<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Remote Desktop is listed as <tt>svchost.exe TermService<\/tt>, any other PID that uses the same port number causes issues.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Change RDP port number<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If there is a port conflict, you can resolve it by changing the port used by one of the applications. Microsoft recommends to ideally change the port used by any other applications. If this is not possible, the port number Remote Desktop listens to can be changed with a couple of steps.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Change the port number because it can also help to reduce intrusion attempts through obfuscation. This should not be your only method of security.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To change the port number, you\u2019ll first need to choose a free port not used by anything else on your server. Check the ports currently in use with <tt>netstat -a -o<\/tt> as described previously. The new port number can be anything from 1024 through 49151.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Add the port number you\u2019ve selected to the <tt>Windows Firewall Inbound<\/tt> rules by creating a new rule. In the <tt>New Inbound Rule Wizard<\/tt>, select the following<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Rule Type: Port<\/li>\n\n\n\n<li>Protocol and Ports: TCP, Specific local ports, &lt;port number&gt;<\/li>\n\n\n\n<li>Action: Allow the connection<\/li>\n\n\n\n<li>Profile: all options ticked<\/li>\n\n\n\n<li>Name: Remote Desktop \u2013 TCP &lt;port number&gt;<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">In the steps above the &lt;port number&gt; is the new port you wish RDP to listen to. Make sure your new firewall rule is set up correctly. Once you change the RDP port you\u2019ll need it to work to be able to connect again.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The port number for Remote Desktop was not designed to be changed, and the only way to do so is through editing the registry. We highly recommend that you make a backup of your server before making any changes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Open the editor by searching for <tt>regedit<\/tt> in the start menu and pressing enter.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Locate the following key in the registry file system.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal SErverWinStationsRDP-TcpPortNumber<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Open the <tt>PortNumber<\/tt> registry key for editing, change the display to <tt>Decimal<\/tt>, enter your new port number and click <tt>OK<\/tt> to save the changes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You will need to restart the RDP service to apply the changes. Open <tt>Services<\/tt>&nbsp;again by searching for it in the start menu and pressing enter to run the program.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In the <tt>Services (Local)<\/tt> list, scroll down to find <tt>Remote Desktop Service<\/tt>, and restart it. A confirmation popup asks to restart other related services as well, click <tt>Yes<\/tt> to continue.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You will get disconnected if you were using RDP to make these changes. Afterwards, just reconnect to your new port by defining it in the Computer field on the RDP connection.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">windows.server.example.com:34567<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">With the new port, you should get uninterrupted reliable remote access.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Getting help<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If you run into deeper trouble or need help with something else, don\u2019t hesitate to ask. When you contact UpCloud Support, try to explain the problem to the best of your ability. Include any steps you\u2019ve already taken together with their results when you troubleshoot the issue. It will help our support team to solve your problem.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"closed","template":"","community-category":[289,286],"class_list":["post-2437","tutorial","type-tutorial","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/upcloud.com\/global\/wp-json\/wp\/v2\/tutorial\/2437","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/upcloud.com\/global\/wp-json\/wp\/v2\/tutorial"}],"about":[{"href":"https:\/\/upcloud.com\/global\/wp-json\/wp\/v2\/types\/tutorial"}],"author":[{"embeddable":true,"href":"https:\/\/upcloud.com\/global\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/upcloud.com\/global\/wp-json\/wp\/v2\/comments?post=2437"}],"version-history":[{"count":0,"href":"https:\/\/upcloud.com\/global\/wp-json\/wp\/v2\/tutorial\/2437\/revisions"}],"wp:attachment":[{"href":"https:\/\/upcloud.com\/global\/wp-json\/wp\/v2\/media?parent=2437"}],"wp:term":[{"taxonomy":"community-category","embeddable":true,"href":"https:\/\/upcloud.com\/global\/wp-json\/wp\/v2\/community-category?post=2437"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}