1
0
forked from mir/linux-vm-tools

103 lines
3.1 KiB
Bash
Raw Normal View History

2018-03-02 09:10:52 +01:00
#!/bin/bash
2018-02-09 14:26:53 -08:00
#
# This script is for Ubuntu 18.04 Bionic Beaver to download and install XRDP+XORGXRDP via
# source.
#
# Major thanks to: http://c-nergy.be/blog/?p=11336 for the tips.
#
###############################################################################
# Update our machine to the latest code if we need to.
#
if [ ! $(id -u) ] ; then
echo 'This script must be run with root privileges' >&2
exit 1
fi
2018-03-02 09:10:52 +01:00
apt update && apt upgrade -y
2018-02-09 14:26:53 -08:00
if [ -f /var/run/reboot-required ]; then
2018-03-02 09:10:52 +01:00
echo "A reboot is required in order to proceed with the install." >&2
echo "Please reboot and re-run this script to finish the install." >&2
exit 1
2018-02-09 14:26:53 -08:00
fi
###############################################################################
# XRDP
#
# Install the xrdp service so we have the auto start behavior
apt install -y xrdp
2018-02-09 14:26:53 -08:00
systemctl stop xrdp
systemctl stop xrdp-sesman
2018-02-09 14:26:53 -08:00
# Configure the installed XRDP ini files.
# use vsock transport.
sed -i_orig -e 's/use_vsock=false/use_vsock=true/g' /etc/xrdp/xrdp.ini
2018-02-09 14:26:53 -08:00
# use rdp security.
sed -i_orig -e 's/security_layer=negotiate/security_layer=rdp/g' /etc/xrdp/xrdp.ini
2018-02-09 14:26:53 -08:00
# remove encryption validation.
sed -i_orig -e 's/crypt_level=high/crypt_level=none/g' /etc/xrdp/xrdp.ini
2018-02-09 14:26:53 -08:00
# disable bitmap compression since its local its much faster
sed -i_orig -e 's/bitmap_compression=true/bitmap_compression=false/g' /etc/xrdp/xrdp.ini
2018-02-09 14:26:53 -08:00
# use the default lightdm x display
# sed -i_orig -e 's/X11DisplayOffset=10/X11DisplayOffset=0/g' /etc/xrdp/sesman.ini
2018-02-09 14:26:53 -08:00
# rename the redirected drives to 'shared-drives'
sed -i_orig -e 's/FuseMountName=thinclient_drives/FuseMountName=shared-drives/g' /etc/xrdp/sesman.ini
2018-02-09 14:26:53 -08:00
# Changed the allowed_users
sed -i_orig -e 's/allowed_users=console/allowed_users=anybody/g' /etc/X11/Xwrapper.config
2018-02-09 14:26:53 -08:00
# Enable the hv_sock module
rmmod vmw_vsock_vmci_transport
rmmod vsock
modprobe hv_sock
2018-02-09 14:26:53 -08:00
# Blacklist the vmw module
if [ ! -e /etc/modprobe.d/blacklist_vmw_vsock_vmci_transport.conf ] ; then
cat >> /etc/modprobe.d/blacklist_vmw_vsock_vmci_transport.conf <<EOF
blacklist vmw_vsock_vmci_transport"
EOF
fi
2018-02-20 09:32:29 -08:00
#Ensure hv_sock gets loaded
if [ ! -e /etc/modules-load.d/hv_sock.conf ] ; then
echo "hv_sock" > /etc/modules-load.d/hv_sock.conf
fi
2018-02-09 14:26:53 -08:00
# Configure the policy xrdp session
cat >/etc/polkit-1/localauthority.conf.d/02-allow-colord.conf <<EOF
2018-02-09 14:26:53 -08:00
polkit.addRule(function(action, subject) {
if ((action.id == "org.freedesktop.color-manager.create-device" ||
action.id == "org.freedesktop.color-manager.modify-profile" ||
action.id == "org.freedesktop.color-manager.delete-device" ||
action.id == "org.freedesktop.color-manager.create-profile" ||
action.id == "org.freedesktop.color-manager.modify-profile" ||
action.id == "org.freedesktop.color-manager.delete-profile") &&
subject.isInGroup("{group}"))
{
return polkit.Result.YES;
}
});
EOF
2018-02-09 14:26:53 -08:00
# reconfigure the service
systemctl daemon-reload
systemctl start xrdp
2018-02-09 14:26:53 -08:00
#
# End XRDP
###############################################################################
# Install Gmone Tweak
apt-get install gnome-tweak-tool -y
2018-02-16 08:59:58 -08:00
echo "Install is complete."
echo "Reboot your machine to begin using XRDP."