A poor man's seedbox for $15 a year

Seedbox is basically just a server with torrent client installed. A seedbox usually goes for $15 a month for a decent one and $7 a month for a cheap one. It’s rather easy to setup a VPS as a seedbox and save yourself some money.

I have a pretty good experience with RamNode. In fact, I’m running my website on one of their VPS right now. Though it’s cheap but it’s actually more than what I need for my static website.

For $15 a year, you will get 80GB of space/500GB bandwidth monthly, 128MB RAM and 100Mbps ethernet, which is ok if you’re just a casual torrent downloader like me. If you’re looking for more, I suggest you take a look at Hetzner or OVH.

Get a VPS at RamNode

Sign up for the massive plan (cheapest one) for $15 a year and select the geolocation closeast to your location. There are 4 datacenters that you can select from which are NYC, ATL, SEA and NL. Also, select Ubuntu 14.04 64bit as OS for the sake of this tutorial. Enter your domain if you have one. If not, you’re going to access to your seedbox by IP address.

I got myself one at Atlanta and the speed is very decent from Thailand.

RamNode will send you an email with the VPS’s login information few minutes after signing up.

Connecting to your VPS

If you’re on Linux or Mac, ssh is pre-installed and ready to use. To connect on Mac/Linux, use the command below. Enter password when asked.

ssh username@ip-address

If you’re using Windows, you need to download a SSH client to connect to your VPS and set it up. PuTTY is a decent one.

Open PuTTY, enter IP address you get from the email and click open. Enter username and password you get from the email.

Now if you’re panic about server’s security, you can go ahead and follow this tutorial to add a few extra layers. As for me, I usually just installed fail2ban, disable login by password, and using public key authentication only.

Installing deluge and deluge-web

I’m going to ignore all the security practices so that this tutorial can be as simple as possible. I’m assuming you’re still using root account for now.

Copy and paste the commands below, press Y when asked. These commands will update/upgrade to lateast package and then install deluge, deluge-weband nginx. Append sudo if needed.

apt-get update
apt-get upgrade
apt-get install deluged
apt-get install deluge-web 
apt-get install nginx

deluge is a torrent client, deluge-web is deluge’s web interface for easy management and nginx allows you to download files to your computer.

rtorrent is another decent torrent client (better web ui, lower memory footprint) but requiring a bit more work to setup it up and running. Also, you can setup FTP and download your files using FTP instead of direct HTTP. I choose direct HTTP simply because I have nginx server already installed so less work for me. You can also secure your public folder in nginx by following this tutorial.

Once finished, start deluged and deluge-web.

service nginx start
deluge-web --fork

You can access your deluge-web at your seedbox’s IP address, default port 8112 with default password deluge.

Now, in order to download your files from seedbox, you will change the root of nginx to your downloads folder. Your files will be accessible at http://ip-address.

sudo nano /etc/nginx/sites-available/default
# point root to your downloads folder
# root /home/username/downloads;
# restart nginx afterward
sudo service nginx restart

If you hit any problem, feel free to drop me an email or tweet me at @tuananh_org. I’ll be happy to help.

Update: I added a blog post for those who doesn’t want to tinker much with command line.