{"id":3412,"date":"2014-01-24T15:21:14","date_gmt":"2014-01-24T21:21:14","guid":{"rendered":"http:\/\/icesquare.com\/wordpress\/?p=3412"},"modified":"2014-07-06T18:32:38","modified_gmt":"2014-07-06T23:32:38","slug":"how-to-remote-desktop-to-linux-from-windows-xrdp","status":"publish","type":"post","link":"https:\/\/icesquare.com\/wordpress\/how-to-remote-desktop-to-linux-from-windows-xrdp\/","title":{"rendered":"How to Remote Desktop To Linux From Windows Using XRDP"},"content":{"rendered":"<p>If you are looking for ways to remote desktop to Linux from Windows, and you are sick of VNC, you are in the right place.<\/p>\n<p>I have been looking for a solution to do something very simple. I want to remotely access the desktop of my Linux servers from Windows machine. Of course, it must be at a usable level.<\/p>\n<p>I&#8217;ve tried different applications before, incluing XMing, XManager (X11 forwarding), VNC, 2X, NoMachine, ranging from open-source to commercial. Unfortunately, they offer nothing close to the Windows to Windows Remote Desktop experience.<\/p>\n<p><\/p>\n<h2>Why XMing is bad?<\/h2>\n<p>XMing allows you to run a remote application (e.g., Firefox) on your desktop. It works great as long as you keep the session available. Once you close your session, there is no way to go back to the previous session. For example, suppose I am browsing a website using the Firefox on the remote server via XMing. If I decide to close the XMing (without closing the browser), there is no way for me to go back to the page I left off later. Of course, in reality, it doesn&#8217;t make too much sense to use a Firefox on a remote server. I was referring to some software that takes days to run, such as R, Matlab etc.<\/p>\n<p>By the way, it is an application level, meaning that it does not work with the desktop level.<\/p>\n<h2>Why VNC is bad?<\/h2>\n<p>VNC is nearly perfect. It offers something similar to Windows Remote Desktop, i.e., I can access to the desktop level. If I work on something, I can get my previous session back even my session is closed. There are only two disadvantages: Slow, and not for multiple users.<\/p>\n<p>VNC uses a stone-age protocol to delivery the remote desktop experience: Screen capture. When there is a change on the remote server, it takes a screen shot and send it to the client. You can imagine how slow it will be over the Internet. Although they released a better algorithm, which works directly at the graphic card level, i.e., only send the modified area to the client instead of everything. However the new protocol is still far from usable. The Microsoft Remote Desktop just blows VNC far far away.<\/p>\n<p>Another thing I don&#8217;t like VNC is that it is at the machine\/server level, not the user level. VNC uses its own user authorization. When you set up a VNC service, you define your own password. That&#8217;s it. In the other words, if I open a desktop on the server as derrick. Everybody will be able to see my desktop content via VNC as long as they enter the correct password. Unless I go to the server physically and switch to a different user, otherwise there is no way to protect the content of my desktop.<\/p>\n<p>The good thing about VNC is that it is cross-platform. It works on OS X, Windows, Linux etc. Wait a minute. Java is cross-platform too. Do you want to use it?<\/p>\n<h2>Why XManager is bad?<\/h2>\n<p>XManager is better than VNC. It uses some special protocol such that the speed is not an issue. However, it is suffered in the session problem like XMing. If I remote desktop to the server using XManager, and I close my session later, there is no way for me to go back to my previous sessions. In the other words, I will lose all opened applications and contents.<\/p>\n<p>And no, the session is still running silently on the server. They are just orphans. XManager doesn&#8217;t allow you to connect to the old session when you try to establish a new connection.<\/p>\n<h2>Solution: xrdp<\/h2>\n<p>I am so happy that I finally found something useful and usable. That&#8217;s xrdp. Here is a step-by-step tutorial on how to install it on Fedora\/CentOS Linux. The instruction will be similar to Debian\/Ubuntu Linux. The set up time should take no more than 5 minutes.<\/p>\n<pre>\r\n#Install xrdp\r\nsudo yum install -y xrdp\r\n<\/pre>\n<p>If your Linux is too old, or your default repository does not have xrdp available, you may want to run the following:<\/p>\n<pre>\r\n#Don't forget to use the right (i686 or x86_64) architecture.\r\n\r\nsudo rpm -Uvh  http:\/\/dl.fedoraproject.org\/pub\/epel\/6\/x86_64\/epel-release-6-8.noarch.rpm\r\nsudo rpm -Uvh  http:\/\/rpms.famillecollet.com\/enterprise\/remi-release-6.rpm\r\nsudo yum update -y\r\n\r\nsudo yum install -y xrdp\r\n<\/pre>\n<p>Next, we want to start the xrdp service<\/p>\n<pre>\r\nsudo \/etc\/rc.d\/init.d\/xrdp start\r\n<\/pre>\n<p>You may want to enable this service during the boot up:<\/p>\n<pre>\r\nsudo chkconfig  xrdp on\r\n<\/pre>\n<p>Don&#8217;t forget to open the port 3389 in your firewall:<\/p>\n<pre>\r\nsudo nano \/etc\/sysconfig\/iptables\r\n\r\n-A INPUT -m state --state NEW -m tcp -p tcp --dport 3389 -j ACCEPT\r\n<\/pre>\n<p>Don&#8217;t forget to restart the firewall:<\/p>\n<pre>\r\nsudo service iptables stop\r\nsudo service iptables start\r\n<\/pre>\n<p>Now, run the remote desktop on Windows, and enter the IP address of the server to see what happen.<\/p>\n<p>&#8211;Derrick<\/p>\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>If you are looking for ways to remote desktop to Linux from Windows, and you are sick of VNC, you are in the right place. I have been looking for <a class=\"more-link\" href=\"https:\/\/icesquare.com\/wordpress\/how-to-remote-desktop-to-linux-from-windows-xrdp\/\">Continue Reading &rarr;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_hide_featured_image":false,"_jetpack_featured_image_duplicate_dismissed":0,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[94,146,144,6,69],"tags":[48,161],"class_list":["post-3412","post","type-post","status-publish","format-standard","hentry","category-computer-problems-computer-help-pc-support","category-everyday-computer-problem","category-sever-problem","category-technology","category-troubleshooting-technology","tag-linux","tag-remote-desktop"],"jetpack_publicize_connections":[],"jetpack_shortlink":"https:\/\/wp.me\/p1sqzr-T2","jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":5012,"url":"https:\/\/icesquare.com\/wordpress\/google-one-vpn-how-to-by-pass-vpn-in-windows\/","url_meta":{"origin":3412,"position":0},"title":"Google One VPN: How to by pass VPN in Windows","author":"Derrick","date":"February 14, 2024","format":false,"excerpt":"Recently I started using the Google One VPN service. I love it because of its simplicity. However, I quickly ran into problem because some services require my real IP addresses. Since the Google One VPN is designed for average Joe, it doesn't have any advanced features. It is either all\u2026","rel":"","context":"In &quot;Technology&quot;","block_context":{"text":"Technology","link":"https:\/\/icesquare.com\/wordpress\/category\/technology\/"},"img":{"alt_text":"","src":"\/wordpress\/wp-content\/uploads\/2024\/02\/Putty-01.fw_.png","width":350,"height":200},"classes":[]},{"id":5028,"url":"https:\/\/icesquare.com\/wordpress\/xrdp-error-problem-connecting\/","url_meta":{"origin":3412,"position":1},"title":"XRDP: error-problem connecting","author":"Derrick","date":"April 9, 2024","format":false,"excerpt":"Every once a while, I experience problem to connecting to my Linux servers via Windows Remote Desktop. This is a very annoying issue, because all servers use the same configurations, and some servers throw error while some servers are doing okay. After spending countless of hours, here are my solutions:\u2026","rel":"","context":"In &quot;Technology&quot;","block_context":{"text":"Technology","link":"https:\/\/icesquare.com\/wordpress\/category\/technology\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1067,"url":"https:\/\/icesquare.com\/wordpress\/package-ssh-is-not-available-but-is-referred-to-by-another-package-this-may-mean-that-the-package-is-missing-has-been-obsoleted-or-is-only-available-from-another-source\/","url_meta":{"origin":3412,"position":2},"title":"Package ssh is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source","author":"Derrick","date":"November 14, 2010","format":false,"excerpt":"Today, I helped my friend to install Debian. It was done via two GUI remote desktop connections (i.e., slow), and therefore I would like to access the server via SSH. So I tried to install the SSH package: sudo apt-get install -y ssh and I received the following message: Reading\u2026","rel":"","context":"In &quot;Computer Problems&quot;","block_context":{"text":"Computer Problems","link":"https:\/\/icesquare.com\/wordpress\/category\/technology\/computer-problems-computer-help-pc-support\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":237,"url":"https:\/\/icesquare.com\/wordpress\/does-most-popular-imply-the-best\/","url_meta":{"origin":3412,"position":3},"title":"Does the most popular imply the best?","author":"Derrick","date":"August 19, 2009","format":false,"excerpt":"Today, I had a discussion with my co-worker on the best languages for web applications. While I argued that Perl, and Ruby performs better than PHP, my co-worker had an opposite opinion. He believed that PHP is the best language overall because it is widely used. It brings me to\u2026","rel":"","context":"In &quot;Technology&quot;","block_context":{"text":"Technology","link":"https:\/\/icesquare.com\/wordpress\/category\/technology\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":923,"url":"https:\/\/icesquare.com\/wordpress\/freebsd-or-linux\/","url_meta":{"origin":3412,"position":4},"title":"FreeBSD or Linux in 6 Simple Questions","author":"Derrick","date":"February 18, 2016","format":false,"excerpt":"FreeBSD or Linux FreeBSD or Linux (Ubuntu\/RHEL)? This is a very old question. It's like asking iPhone or Android. There is no short answer. It all depends on your situation. To make things easier, I am going to break it down into six simple questions to help you making decision.\u2026","rel":"","context":"In &quot;Computer Problems&quot;","block_context":{"text":"Computer Problems","link":"https:\/\/icesquare.com\/wordpress\/category\/technology\/computer-problems-computer-help-pc-support\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1185,"url":"https:\/\/icesquare.com\/wordpress\/solvedwindows-7-taskbar-no-transparency\/","url_meta":{"origin":3412,"position":5},"title":"[Solved]Windows 7 Taskbar Loses Transparency","author":"Derrick","date":"January 12, 2011","format":false,"excerpt":"After letting Windows 7 to automatically upgrade my system, I found that the taskbar was no longer transparent. So I ran the trouble shooting features to find out why the transparency feature was gone. Desktop -> Right Click -> Personalize -> Window Color The transparency feature is not available. So\u2026","rel":"","context":"In &quot;Computer Problems&quot;","block_context":{"text":"Computer Problems","link":"https:\/\/icesquare.com\/wordpress\/category\/technology\/computer-problems-computer-help-pc-support\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/icesquare.com\/wordpress\/wp-content\/uploads\/2011\/01\/Windows7_Transparent_No-300x10.png?resize=350%2C200","width":350,"height":200},"classes":[]}],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/icesquare.com\/wordpress\/wp-json\/wp\/v2\/posts\/3412","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/icesquare.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/icesquare.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/icesquare.com\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/icesquare.com\/wordpress\/wp-json\/wp\/v2\/comments?post=3412"}],"version-history":[{"count":14,"href":"https:\/\/icesquare.com\/wordpress\/wp-json\/wp\/v2\/posts\/3412\/revisions"}],"predecessor-version":[{"id":3644,"href":"https:\/\/icesquare.com\/wordpress\/wp-json\/wp\/v2\/posts\/3412\/revisions\/3644"}],"wp:attachment":[{"href":"https:\/\/icesquare.com\/wordpress\/wp-json\/wp\/v2\/media?parent=3412"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/icesquare.com\/wordpress\/wp-json\/wp\/v2\/categories?post=3412"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/icesquare.com\/wordpress\/wp-json\/wp\/v2\/tags?post=3412"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}