This is part 02 in my Seedbox From Scratch series. In this series I start at the most basic level, assuming no server or Linux skills. We will first build the easiest and most basic seedbox possible, and then work our way up to some pretty advanced topics.
Zero to seeding
Today we go from a brand new server with a freshly installed operating system, to seeding torrents and building your ratio, in less than 5 minutes - even if you have no prior knowledge about any of this.
To the novice, this can seem like an overwelming task. That’s why there are plenty of seedbox hosting companies willing to do it for you. But if you are willing to step out of your comfort zone for 5 minutes, I’ll show you how to bypass the middleman. (No disrespect to these companies, there are some really good seedbox hosting companies that add a lot of value. Most of them provide services beyond what you will get from me in these next five minutes.)
What we are building
A seedbox is just a server that is set up and used for BitTorrent activity. For our first seedbox, we are going to set up the Transmission BitTorrent client on the server. I wrote about setting up a server in the first post of this series. If you don’t know how or where to get a server, read that first and then come back here.
OK, now that you have a freshly installed Ubuntu server and know how to use SSH to get to the root prompt, lets get a BitTorrent client installed on that server.
I chose Transmission for the same reasons that the Ubuntu operating system chooses it as it’s default BitTorrent client. It is full featured, uses very little resources, and is simple to set up. It is also respected and white-listed at most private trackers.
Lets do this
Ready to go? Start your stop watch. ;-)
Standard Ubuntu includes Transmission, but it can quickly become outdated. So the first thing we’ll do is add a Transmission repository to keep us up to date with the latest Transmission release (currently 2.51 at the time of this article being published).
Add a repository
Add the repository by copy/pasting this command into your Terminal or Putty and hitting enter.
root@KATBOX001:~# aptitude install python-software-properties -y && add-apt-repository ppa:transmissionbt
Add the BitTorrent Client
Next we need to install the Transmission Daemon. This is the program that is always running in the background and giving love to your tracker ratios. It also includes the web interface.
root@KATBOX001:~# aptitude update && aptitude install transmission-daemon -y
So now that we have a BitTorrent client running, we need to control it somehow. Transmission comes with a simple web interface. To use it we have to edit a configuration file on the server. On Ubuntu, that file lives here:
Add a text editor
To the Linux programmer and system administrator, a powerful text editor is their main tool. I use Vim. In my opinion, it has no equal. However, it has a slight learning curve and we won’t reach our goal of seeding in the next three minutes if we dive into Vim right now. Beginners are often encouraged to use Nano because it is simple and easy to get started with. You can find more help with Nano on the community help page.
Let’s install Nano with this command.
root@KATBOX001:~# aptitude install nano -y
Update your password
Nano is a simple command line text editor. You can start it and load up the file we want to edit with this command.
root@KATBOX001:~# nano /etc/transmission-daemon/settings.json
There will be a lot of text. Use your arrow keys to move the cursor down to the line that looks something like this.
The jumbled text will be different; it is the encrypted password. We’ll simply replace it with the new password that we want to use. Transmission is smart enough to detect the unencrypted plain text password and encrypt it. It will then rewrite this text file with the encrypted version of the password when Transmission exits.
Change the password line to look like this, making sure to preserve the quotations and comma at the end.
Open it to the world
We need to change one more line in this settings file before we are done. Use your arrow keys to move the cursor down to the line that looks like this.
false. No quotes needed here, but leave the comma.
In Nano, you save the file being edited by pressing
Ctrl-O as can be seen at the bottom menu. It will then ask you where to save the file with
File Name to Write: /etc/transmission-daemon/settings.json. Just hit enter to save the file in the same place.
To exit Nano, press
We still have to tell Transmission about these changes. We can do that by sending it this command:
root@KATBOX001:~# invoke-rc.d transmission-daemon reload
Next, we want to restart Transmission so it can write the encrypted password to the settings file:
root@KATBOX001:~# /etc/init.d/transmission-daemon restart
Now the web interface is available anywhere as long as you have the password you just set.
You can get to the web interface in your browser by visiting
http://xx.xx.xx.xx:9091/. (Obviously replacing xx.xx.xx.xx with your
server’s seedbox’s real IP address). Enter
transmission for the user name and then enter the password we just set in the settings file. Click “Open”, and load up a few torrents.
Transmission’s web gui is a bit light on features, but it sure is cute. :)
TaDa, your new server has magically become a seedbox in less than 5 minutes. You’re a rockstar!
In the next installment of this series I’ll introduce a simple of way to get your media back to your home computer without resorting to FTP.
I’ll try to answer any questions people have in the comments.
Good luck guys,