The Ultimate Personal Server, Movies, Music, Ebooks, Cloud Storage, Remote Desktop, VPN and Web Server With Email.
When I think of what my ultimate personal server would be I think of having all my files and content in one place, limited only by disc space and my budget. It should be accessible from anywhere in the world by PC, phone or tablet. It should be able to host all my websites and be able to handle all my email. It should be able to stream all my videos and music, while having all my photos and ebooks at my fingertips. Throw in a VPN for privacy and a remote desktop and I think I would be a happy camper, as long as the campsite had a signal for my phone.
This is a tutorial to make such a server. I tried to make this as newbie proof as possible. If you can SSH in to your server as root and copy and paste you can have your own Ultimate Personal Server.
I wrote none of the software we will use, I couldn’t program anything to save my life. No software is downloaded from my server, it is all downloaded from the software authors site. I am just showing how to install everything on a server or VPS and have it all work together.
What you will need:
A domain:
It just makes it easier to remember instead of an IP number. Plus you can use it to host a website or blog and have email addresses. Any domain will do, but make sure you are able to create your own nameservers with your registrar’s interface. I recommend NameSilo, ( has my referral code in the link, throw me a bone) they have $8.99 .com domains and you can register lesser known tlds for less than $2, like .bid or .win.
A VPS or dedicated server:
A VPS or dedicated server with root access running Debian 9 Stretch. I recommend at least 16 gb of ram and as much disc space as you can afford if you will be streaming videos and music. If you just want access to files, email, websites and books you may be able to get away with a VPS with 2-4 gb of ram and as much hard drive space as possible. I have a Kimsufi server in France that works quite well on the East Coast of the U.S. . It costs €18.99, or about $22 U.S. dollars a month ( I got mine for €9.99 a month when they had a promotion) and runs everything on this tutorial like a champ. It is the KS-10 model with an I5-2300 processor, 16 gb ram and a 2tb hard drive. LowendBox.com is also a good place to find cheap dedicated and VPS servers. We will be using Debian 9 Stretch, minimal install is best.
What we will in installing
This is a modular system. In order to install some things like OpenVPN , Nextcloud and Plex we will depend on VestaCP Control Panel and XFCE Remote Desktop. VestaCP is the “core” of this project and is used to configure other servers and the firewall, so we must install this first.
VestaCP Control Panel installation:
VestaCP is an extremely easy to use web page based control panel to configure all your websites ,email, DNS and a firewall. It comes with a Gmail type interface for email and the ability to use an email client such as Thunderbird or Outlook. You will also have the ability to have your own vanity nameserver (ns1.yourdomain.com and ns2.yourdomain.com). It has a built in Firewall and Fail2Ban server to help keep the bad guys out.
WordPress is a site building script that is very popular. This tutorial will install WordPress on your server using VestaCP and SSH.
Nextcloud is Dropbox like cloud file server. It gives you access to all your files through your PC, Android or IOS apps. It also has a web page interface and a synced directory on your PC.
XFCE Remote Desktop installation:
XFCE Desktop is a lightweight linux based remote desktop that you can work on from anywhere in the world. Have all your browser bookmarks, email accounts and files. It has Libreoffice, a Microsoft type Office suite so you can always be productive. Most important of all, it has a torrent client so you can download videos, music, books and programs. I do not condone the act of illegal file downloading, but the option is there if you feel the need (I’m just sayin’). We will connect to the remote desktop via X2go server and/or RDP, the choice is yours.
Plex Media Server installation:
Plex Media Server is a powerful and feature rich video, music, photo and podcast server. It has apps for your PC, phone, tablet and set top boxes like Roku, Apple TV, Xbox and Playstation. Share all your content with family and friends and access it anywhere you have an internet connection.
Calibre Ebook Management and Server installation:
Calibre is a powerful Ebook manager and server. Start your own ebook library server. You can change file formats and share your books to PC, phone or tablet. Like an Itunes for your ebooks.
OpenVPN is a software server that runs on your server and provides a VPN service that can be accessed on any smart device or PC. A VPN is a way to make sure no one can intercept your unencrypted internet traffic and collect personal data. It provides a secure connection from your local device to your VPN server. Great for use when on public networks like in a coffee shop and you want to keep your username and password info private. Can be used on your PC, phone or tablet and has free apps for all operating systems.