Because of an exploit ( btw.: to be a VIP on a2s rocks!
) some people asked me how to setup a linux VPS for desktop connection like RDP on Windows.
Here is a simple step by step guide for absolute beginners how to connect to your
Ubuntu VPS (the commands on other linux OS are a bit different).
You can't really make mistakes by using this guide.
Requirements for your home PC:
- Tight VNC
(DOWNLOAD)
- PuTTY
(DOWNLOAD)
1. Open a connection from PuTTY
Type in the IP from your server and the port (default is 22, so if you don't know the port, dont edit it) and click on "open"
Then you'll see a console window asking you "login as".
Type in: root and click enter, then type in your password and click enter.
Note
When you type there are no characters or *** shown, so you have to take a look at your keyboard to avoid making mistakes. After that your console will look like this:
You find this easy? Great, because that was the hardest part, after that you will only do copy and paste work!
Copy / paste in PuTTY is not like on windows "CTRL + C ; CTRL +V".
If you want to copy something from Windows, just use CTRL + C, but if you want to paste it in the console, just do a right click it gets pasted.
2. Update and upgrade Ubuntu
Code:
apt-get update; apt-get dist-upgrade -y --force-yes
Depending on the internet connection of your VPS this will normally take about 10-20 seconds
3.Install GUI on Ubuntu 14.04 Server
Code:
apt-get install xubuntu-desktop xfce4 firefox nano -y --force-yes
This will take a little bit more time, so just wait until its finished.
4. Install VNC Server on Ubuntu 14.04
Code:
apt-get install vnc4server -y --force-yes
5. Add a user + password
Now you'll need to add a user and a password with which you want to login to vnc. In this case it's the user "vncuser"
6. Switch to the created user
7. Start VNC server
This is needed because VNC server needs to create some files first, which we can edit after this step
8. Kill VNC server
9. Edit xstartup file
This will be a little bit more complicated now, but don't worry, it's also very easy if you follow my steps:
You will see something like this now:
Now press the DEL key on your keyboard and delete everything!
When you are done, just copy this code and paste it:
Code:
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
startxfce4 &
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
Now press CTRL + X to save it.
Now press Y to confirm it and press enter to finally save the file.
10. Get root access and edit vncserver file
Enter your root password now and hit enter.
Code:
nano /etc/init.d/vncserver
This creates a new file. Now paste this code into the file again:
Code:
#!/bin/bash
### BEGIN INIT INFO
# Provides: tightvncserver
# Required-Start: $syslog
# Required-Stop: $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: vnc server
# Description: http://www.namhuy.net
#
### END INIT INFO
unset VNCSERVERARGS
VNCSERVERS=""
[ -f /etc/vncserver/vncservers.conf ] && . /etc/vncserver/vncservers.conf
prog=$"VNC server"
start() {
. /lib/lsb/init-functions
REQ_USER=$2
echo -n $"Starting $prog: "
ulimit -S -c 0 >/dev/null 2>&1
RETVAL=0
for display in ${VNCSERVERS}
do
export USER="${display##*:}"
if test -z "${REQ_USER}" -o "${REQ_USER}" == ${USER} ; then
echo -n "${display} "
unset BASH_ENV ENV
DISP="${display%%:*}"
export VNCUSERARGS="${VNCSERVERARGS[${DISP}]}"
su ${USER} -c "cd ~${USER} && [ -f .vnc/passwd ] && vncserver :${DISP} ${VNCUSERARGS}"
fi
done
}
stop() {
. /lib/lsb/init-functions
REQ_USER=$2
echo -n $"Shutting down VNCServer: "
for display in ${VNCSERVERS}
do
export USER="${display##*:}"
if test -z "${REQ_USER}" -o "${REQ_USER}" == ${USER} ; then
echo -n "${display} "
unset BASH_ENV ENV
export USER="${display##*:}"
su ${USER} -c "vncserver -kill :${display%%:*}" >/dev/null 2>&1
fi
done
echo -e "\n"
echo "VNCServer Stopped"
}
case "$1" in
start)
start $@
;;
stop)
stop $@
;;
restart|reload)
stop $@
sleep 3
start $@
;;
condrestart)
if [ -f /var/lock/subsys/vncserver ]; then
stop $@
sleep 3
start $@
fi
;;
status)
status Xvnc
;;
*)
echo $"Usage: $0 {start|stop|restart|condrestart|status}"
exit 1
esac
Press CTRL + X, then press Y and finally ENTER to save the file.
11. Make the VNC startup script executable
Code:
chmod +x /etc/init.d/vncserver
12. Create the VNC server config file
Create the directory
Code:
mkdir -p /etc/vncserver
Create the file
Code:
nano /etc/vncserver/vncservers.conf
Copy and paste this code again now:
Code:
VNCSERVERS="1:vncuser"
VNCSERVERARGS[1]="-geometry 1024x768"
Press CTRL + X, then Y, then ENTER to finally save the file.
12. Make VNC server start on boot
Code:
update-rc.d vncserver defaults 99
13. Reboot your VPS
Finally you need to reboot your VPS
14. Connect with TightVNC
Now you'll need to connect to your VPS with TightVNC.
Open TightVNC Viewer and put in your IP address. After the IP address, write :1
That means that you are connecting to the IP on port 1.
Finally click on "connect".
You will be asked for a password. Enter your password which you've chosen to you vncuser.
Now you are connected via desktop connection with your VPS!
It will look like this:
Click on "Use default config".
Congratulations, that's it! You have created a desktop connection to Ubuntu 14.04!
NOTE:
If you want to run my java bots which i posted in the subscriber section, you'll need to download java first and after you've done that you'll need to mark the .jar file as executable.
If you don't mark it as executable, the following error will occur:
To install java, click here:
Then search for OpenJDK Java 7 and click on install.
Now open the Terminal.
Type in this code:
Code:
chmod +x pathtothefile
In my case to mark my iRazoo bot as executable i have to type in this code:
chmod +x /home/vncuser/Desktop/iRazooBot_v1.4_by_Chillivanilli/irazoo_bot_v_1_4.jar
Thats it!
I hope you enjoyed my step by step tutorial and could create a VNC connection to your Ubuntu VPS.
If you have any questions, feel free to ask!
Bookmarks