Guest User

Untitled

a guest
Feb 28th, 2017
193
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.97 KB | None | 0 0
  1. ################################################################
  2. # Script_Name : xrdp-install.sh
  3. # Description : Perform an automated custom installation of xrdp
  4. # on Linux Mint 18.1 when systemd is used
  5. # Date : December 2016
  6. # written by : Griffon
  7. # Web Site :http://www.c-nergy.be - http://www.c-nergy.be/blog
  8. # Version : 1.7.1
  9. #
  10. # Disclaimer : Script provided AS IS. Use it at your own risk....
  11. #
  12. ##################################################################
  13.  
  14. ##################################################################
  15. #Step 1 - Install prereqs for compilation
  16. ##################################################################
  17.  
  18. echo "Installing prereqs for compiling xrdp..."
  19. echo "----------------------------------------"
  20.  
  21. sudo apt-get -y install libx11-dev libxfixes-dev libssl-dev libpam0g-dev libtool libjpeg-dev flex bison gettext autoconf libxml-parser-perl libfuse-dev xsltproc libxrandr-dev python-libxml2 nasm xserver-xorg-dev fuse automake
  22.  
  23. #Install git
  24. echo "Installing git software..."
  25. sudo apt-get -y install git
  26.  
  27. ##################################################################
  28. #Step 2 - Obtain xrdp packages and xorgxrdp packages
  29. ##################################################################
  30.  
  31. #-Go to your Download folder
  32. echo "Moving to the ~/Download folders..."
  33. echo "-----------------------------------"
  34. cd ~/Downloads
  35.  
  36. #Download the xrdp latest files
  37. echo "Ready to start the download of xrdp package"
  38. echo "-------------------------------------------"
  39. git clone https://github.com/neutrinolabs/xrdp.git
  40.  
  41. #move to xorgxrdp folder and download needed packages
  42. cd xrdp
  43. git clone https://github.com/neutrinolabs/xorgxrdp.git
  44.  
  45. ##################################################################
  46. #Step 3 - Add/Remove Ubuntu xrdp packages (used to create startup service)
  47. ##################################################################
  48.  
  49. echo "Add/Remove xrdp packages..."
  50. echo "---------------------------"
  51. sudo apt-get -y install xrdp
  52. sudo apt-get -y remove xrdp
  53.  
  54. ##################################################################
  55. #Step 4 - compiling xrdp packages
  56. ##################################################################
  57.  
  58. #Compile and make xrdp
  59.  
  60. echo "Installing and compiling xrdp..."
  61. echo "--------------------------------"
  62.  
  63. # needed because libtool not found in Ubuntu 15.04 and later
  64. # Need to use libtoolize
  65.  
  66. sudo sed -i.bak 's/which libtool/which libtoolize/g' bootstrap
  67.  
  68. sudo ./bootstrap
  69. sudo ./configure --enable-fuse --enable-jpeg
  70. sudo make
  71. sudo make install
  72.  
  73. ##################################################################
  74. #Step 5 - compiling xorgxrdp packages
  75. ##################################################################
  76.  
  77. cd xorgxrdp
  78. sudo ./bootstrap
  79. sudo ./configure
  80. sudo make
  81. sudo make install
  82. cd ..
  83.  
  84. ##################################################################
  85. #Step - Final Post Setup configuration
  86. ##################################################################
  87.  
  88. echo "---------------------------"
  89. echo "Post Setup Configuration..."
  90. echo "---------------------------"
  91.  
  92. echo "Set Default xVnc-Sesman"
  93. echo "-----------------------"
  94.  
  95. sudo sed -i.bak '/\[X11rdp\]/i [xrdp0]\nname=Sesman-Griffon \nlib=libxup.so \nusername=ask \npassword=ask \nip=127.0.0.1 \nport=-1 \ncode=20 \n' /etc/xrdp/xrdp.ini
  96.  
  97. echo "Symbolic links for xrdp"
  98. echo "-----------------------"
  99.  
  100. #sudo mv /etc/xrdp/startwm.sh /etc/xrdp/startwm.sh.backup
  101. #sudo ln -s /etc/X11/Xsession /etc/xrdp/startwm.sh
  102. sudo mkdir /usr/share/doc/xrdp
  103. sudo cp /etc/xrdp/rsakeys.ini /usr/share/doc/xrdp/rsakeys.ini
  104.  
  105. ## Needed in order to have systemd working properly with xrdp
  106. echo "-----------------------"
  107. echo "Modify xrdp.service "
  108. echo "-----------------------"
  109.  
  110. #Comment the EnvironmentFile - Ubuntu does not have sysconfig folder
  111. sudo sed -i.bak 's/EnvironmentFile/#EnvironmentFile/g' /lib/systemd/system/xrdp.service
  112.  
  113. #Replace /sbin/xrdp with /sbin/local/xrdp as this is the correct location
  114. sudo sed -i.bak 's/sbin\/xrdp/local\/sbin\/xrdp/g' /lib/systemd/system/xrdp.service
  115. echo "-----------------------"
  116. echo "Modify xrdp-sesman.service "
  117. echo "-----------------------"
  118.  
  119. #Comment the EnvironmentFile - Ubuntu does not have sysconfig folder
  120. sudo sed -i.bak 's/EnvironmentFile/#EnvironmentFile/g' /lib/systemd/system/xrdp-sesman.service
  121.  
  122. #Replace /sbin/xrdp with /sbin/local/xrdp as this is the correct location
  123. sudo sed -i.bak 's/sbin\/xrdp/local\/sbin\/xrdp/g' /lib/systemd/system/xrdp-sesman.service
  124.  
  125. #Issue systemctl command to reflect change and enable the service
  126. sudo systemctl daemon-reload
  127. sudo systemctl enable xrdp.service
  128.  
  129. # Set keyboard layout in xrdp sessions
  130. cd /etc/xrdp
  131. test=$(setxkbmap -query | awk -F":" '/layout/ {print $2}')
  132. echo "your current keyboard layout is.." $test
  133. setxkbmap -layout $test
  134. sudo cp /etc/xrdp/km-0409.ini /etc/xrdp/km-0409.ini.bak
  135. sudo xrdp-genkeymap km-0409.ini
  136.  
  137. echo "Restart the Computer"
  138. echo "----------------------------"
  139. sudo shutdown -r now
Advertisement
Add Comment
Please, Sign In to add comment