forked from mir/linux-vm-tools
Compare commits
11 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
d656bfb984 | ||
|
cea3730f87 | ||
|
a62e669547 | ||
|
e7b964edc1 | ||
|
c782cf334e | ||
|
6520635acb | ||
|
97115e61e9 | ||
|
0aaade981d | ||
|
86e30b9c4d | ||
|
0e053d87fc | ||
|
7b9d8fba58 |
24
ubuntu/16.04/config-user.sh
Normal file
24
ubuntu/16.04/config-user.sh
Normal file
@@ -0,0 +1,24 @@
|
||||
#! /bin/bash
|
||||
|
||||
#
|
||||
# This script configures the logged in users xsession to properly
|
||||
# configure unity to launch
|
||||
#
|
||||
# Major thanks to: http://c-nergy.be/blog/?p=10752 for the tips.
|
||||
#
|
||||
|
||||
sudo bash -c "cat >~/.xsession <<EOF
|
||||
|
||||
/usr/lib/gnome-session/gnome-session-binary --session=ubuntu &
|
||||
/usr/lib/x86_64-linux-gnu/unity/unity-panel-service &
|
||||
/usr/lib/unity-settings-daemon/unity-settings-daemon &
|
||||
|
||||
for indicator in /usr/lib/x86_64-linux-gnu/indicator-*;
|
||||
do
|
||||
basename='basename \\\${indicator}'
|
||||
dirname='dirname \\\${indicator}'
|
||||
service=\\\${dirname}/\\\${basename}/\\\${basename}-service
|
||||
\\\${service} &
|
||||
done
|
||||
unity
|
||||
EOF"
|
@@ -1,5 +1,12 @@
|
||||
#! /bin/bash
|
||||
|
||||
#
|
||||
# This script is for Ubuntu 16.04+ to download and install XRDP+XORGXRDP via
|
||||
# source.
|
||||
#
|
||||
# Major thanks to: http://c-nergy.be/blog/?p=10752 for the tips.
|
||||
#
|
||||
|
||||
###############################################################################
|
||||
# Update our machine to the latest code if we need to.
|
||||
#
|
||||
@@ -14,22 +21,32 @@ sudo apt install -y git
|
||||
sudo apt install -y linux-azure
|
||||
|
||||
if [ -f /var/run/reboot-required ]; then
|
||||
reboot
|
||||
echo
|
||||
echo "A reboot is required in order to proceed with the install."
|
||||
echo "Please reboot and re-run this script to finish the install."
|
||||
echo
|
||||
|
||||
exit
|
||||
fi
|
||||
|
||||
###############################################################################
|
||||
# XRDP
|
||||
#
|
||||
export XRDP_PATH=~/git/src/github.com/neutrinolabs/xrdp
|
||||
|
||||
# Install the xrdp service so we have the auto start behavior
|
||||
sudo apt install -y xrdp
|
||||
|
||||
# Get XRDP requirements
|
||||
sudo apt install -y autoconf libtool libssl-dev libpam0g-dev libx11-dev libxfixes-dev libxrandr-dev libjpeg-dev libfuse-dev nasm
|
||||
# sudo apt install -y xrdp
|
||||
|
||||
# Get XRDP
|
||||
git clone https://github.com/neutrinolabs/xrdp ~/git/xrdp
|
||||
if [ ! -d $XRDP_PATH ]; then
|
||||
git clone https://github.com/neutrinolabs/xrdp $XRDP_PATH
|
||||
fi
|
||||
|
||||
# Configure XRDP
|
||||
cd ~/git/xrdp
|
||||
cd $XRDP_PATH
|
||||
./bootstrap
|
||||
./configure --enable-vsock --enable-jpeg --enable-fuse
|
||||
|
||||
@@ -44,10 +61,38 @@ sudo sed -i_orig -e 's/use_vsock=false/use_vsock=true/g' /etc/xrdp/xrdp.ini
|
||||
sudo sed -i_orig -e 's/security_layer=negotiate/security_layer=rdp/g' /etc/xrdp/xrdp.ini
|
||||
# remove encryption validation.
|
||||
sudo sed -i_orig -e 's/crypt_level=high/crypt_level=none/g' /etc/xrdp/xrdp.ini
|
||||
# disable bitmap compression since its local its much faster
|
||||
sudo sed -i_orig -e 's/bitmap_compression=true/bitmap_compression=false/g' /etc/xrdp/xrdp.ini
|
||||
#
|
||||
# sudo sed -n -e 's/max_bpp=32/max_bpp=24/g' /etc/xrdp/xrdp.ini
|
||||
|
||||
# use the default lightdm x display
|
||||
sudo sed -i_orig -e 's/X11DisplayOffset=10/X11DisplayOffset=0/g' /etc/xrdp/sesman.ini
|
||||
# sudo sed -i_orig -e 's/X11DisplayOffset=10/X11DisplayOffset=0/g' /etc/xrdp/sesman.ini
|
||||
|
||||
# 16.04.3 changed the allowed_users
|
||||
sudo sed -i_orig -e 's/allowed_users=console/allowed_users=anybody/g' /etc/X11/Xwrapper.config
|
||||
|
||||
# reconfigure the service
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl enable xrdp.service
|
||||
sudo systemctl enable xrdp-sesman.service
|
||||
|
||||
# Configure the policy xrdp session
|
||||
sudo bash -c 'cat >/etc/polkit-1/localauthority.conf.d/02-allow-colord.conf <<EOF
|
||||
|
||||
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'
|
||||
|
||||
#
|
||||
# End XRDP
|
||||
@@ -56,16 +101,23 @@ sudo sed -i_orig -e 's/X11DisplayOffset=10/X11DisplayOffset=0/g' /etc/xrdp/sesma
|
||||
###############################################################################
|
||||
# XORGXRDP
|
||||
#
|
||||
export XORGXRDP_PATH=~/git/src/github.com/neutrinolabs/xorgxrdp
|
||||
|
||||
# Get XORGXRDP requirements
|
||||
sudo apt install -y autoconf libtool xserver-xorg-dev libxfont1-dev
|
||||
# sudo apt install -y xorgxrdp
|
||||
sudo apt install -y autoconf libtool xserver-xorg-core xserver-xorg-dev
|
||||
|
||||
# 16.04.3 is missing fontutil.h
|
||||
if [ ! -f /usr/include/X11/fonts/fontutil.h ]; then
|
||||
sudo apt install -y libxfont1-dev
|
||||
fi
|
||||
|
||||
# Get XORGXRDP
|
||||
git clone https://github.com/neutrinolabs/xorgxrdp ~/git/xorgxrdp
|
||||
if [ ! -d $XORGXRDP_PATH ]; then
|
||||
git clone https://github.com/neutrinolabs/xorgxrdp $XORGXRDP_PATH
|
||||
fi
|
||||
|
||||
# Configure XORGXRDP
|
||||
cd ~/git/xorgxrdp
|
||||
cd $XORGXRDP_PATH
|
||||
./bootstrap
|
||||
./configure
|
||||
|
||||
@@ -77,17 +129,10 @@ sudo make install
|
||||
# End XORGXRDP
|
||||
###############################################################################
|
||||
|
||||
# configure lightdm to use xrdp's xorg.conf on startup.
|
||||
|
||||
if [ -f /etc/lightdm/lightdm.conf ]; then
|
||||
sudo grep -f /etc/lightdm/lightdm.conf "xserver-config=/etc/X11/xrdp/xorg.conf"
|
||||
if [ "$?" != "0" ]; then
|
||||
echo "xserver-config=/etc/X11/xrdp/xorg.conf" | sudo tee --append /etc/lightdm/lightdm.conf > /dev/null
|
||||
fi
|
||||
else
|
||||
# No lightdm config file.
|
||||
echo "[Seat:*]" > sudo tee /etc/lightdm/lightdm.conf > /dev/null
|
||||
echo "xserver-config=/etc/X11/xrdp/xorg.conf" | sudo tee --append /etc/lightdm/lightdm.conf > /dev/null
|
||||
fi
|
||||
|
||||
#reboot
|
||||
echo
|
||||
echo "Install is complete."
|
||||
echo "Reboot your machine to begin using XRDP."
|
||||
echo
|
||||
echo "Note: If this is the user account you would like to use for remote access run ./config-user.sh."
|
||||
echo
|
||||
echo
|
||||
|
109
ubuntu/18.04/install.sh
Normal file
109
ubuntu/18.04/install.sh
Normal file
@@ -0,0 +1,109 @@
|
||||
#! /bin/bash
|
||||
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
|
||||
# Check if we have the bionic-proposed sources list
|
||||
sudo cat /etc/apt/sources.list | grep bionic-proposed > /dev/null
|
||||
if [ "$?" == "1" ]; then
|
||||
sudo bash -c 'echo "deb http://archive.ubuntu.com/ubuntu/ bionic-proposed restricted main multiverse universe" >> /etc/apt/sources.list <<EOF
|
||||
EOF'
|
||||
fi
|
||||
|
||||
sudo apt update && sudo apt dist-upgrade -y
|
||||
|
||||
if [ -f /var/run/reboot-required ]; then
|
||||
echo
|
||||
echo "A reboot is required in order to proceed with the install."
|
||||
echo "Please reboot and re-run this script to finish the install."
|
||||
echo
|
||||
|
||||
exit
|
||||
fi
|
||||
|
||||
###############################################################################
|
||||
# XRDP
|
||||
#
|
||||
|
||||
# Install the xrdp service so we have the auto start behavior
|
||||
sudo apt install -y xrdp
|
||||
|
||||
sudo systemctl stop xrdp
|
||||
sudo systemctl stop xrdp-sesman
|
||||
|
||||
# Configure the installed XRDP ini files.
|
||||
# use vsock transport.
|
||||
sudo sed -i_orig -e 's/use_vsock=false/use_vsock=true/g' /etc/xrdp/xrdp.ini
|
||||
# use rdp security.
|
||||
sudo sed -i_orig -e 's/security_layer=negotiate/security_layer=rdp/g' /etc/xrdp/xrdp.ini
|
||||
# remove encryption validation.
|
||||
sudo sed -i_orig -e 's/crypt_level=high/crypt_level=none/g' /etc/xrdp/xrdp.ini
|
||||
# disable bitmap compression since its local its much faster
|
||||
sudo sed -i_orig -e 's/bitmap_compression=true/bitmap_compression=false/g' /etc/xrdp/xrdp.ini
|
||||
|
||||
# use the default lightdm x display
|
||||
# sudo sed -i_orig -e 's/X11DisplayOffset=10/X11DisplayOffset=0/g' /etc/xrdp/sesman.ini
|
||||
|
||||
# Changed the allowed_users
|
||||
sudo sed -i_orig -e 's/allowed_users=console/allowed_users=anybody/g' /etc/X11/Xwrapper.config
|
||||
sudo dpkg-reconfigure xserver-xorg-legacy
|
||||
|
||||
# Enable the hv_sock module
|
||||
# sudo rmmod vmw_vsock_vmci_transport
|
||||
# sudo rmmod vsock
|
||||
# sudo modprobe hv_sock
|
||||
|
||||
# Blacklist the vmw module
|
||||
sudo cat /etc/modprobe.d/blacklist.conf | grep vmw_vsock_vmci_transport > /dev/null
|
||||
if [ "$?" == "1" ]; then
|
||||
sudo bash -c 'echo "blacklist vmw_vsock_vmci_transport" >> /etc/modprobe.d/blacklist.conf <<EOF
|
||||
EOF'
|
||||
fi
|
||||
|
||||
#Ensure hv_sock gets loaded
|
||||
sudo cat /etc/modules | grep hv_sock > /dev/null
|
||||
if [ "$?" == "1" ]; then
|
||||
sudo bash -c 'echo "hv_sock" >> /etc/modules <<EOF
|
||||
EOF'
|
||||
fi
|
||||
|
||||
# Configure the policy xrdp session
|
||||
sudo bash -c 'cat >/etc/polkit-1/localauthority.conf.d/02-allow-colord.conf <<EOF
|
||||
|
||||
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'
|
||||
|
||||
# reconfigure the service
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl start xrdp
|
||||
|
||||
#
|
||||
# End XRDP
|
||||
###############################################################################
|
||||
|
||||
# Install Gnome Tweak
|
||||
sudo apt-get install gnome-tweak-tool -y
|
||||
|
||||
echo
|
||||
echo "Install is complete."
|
||||
echo "Reboot your machine to begin using XRDP."
|
||||
echo
|
Reference in New Issue
Block a user