Torrent downloads with web based client “Transmission” for headless download server

This post depicts the installation and configuration of Torrent client called Transmission (This is the default torrent client in Ubuntu). I am using Debian Squeeze (6.0). Though the following instructions are more relevant to Debian, many of them are applicable for most other linux distros also.

Some times before I had a discussion with Reddit users on good torrent client for my headless linux server. One of the purpose of this server is to download the files through torrent and serve to home network user. I used to download the big file through my laptop, but it needs my laptop to be ON for whole day and night which I don’t prefer. So I was in need of a torrent client which should run as daemon in my server and provides a interface to control. Since my server is headless (QNAP with Debian installed – Here is how I did it?), I preferred a web based interface. I can use this interface to start, pause and stop the downloads. Transmission does exactly what I was in need. I was satisfied with it. Here is how I got it done in Debian Squeeze (6.0).

How to install?

# apt-get install transmission-daemon

How to configure?

Once installed, the transmission daemon will start listening at port 9091. You can connect to this from any machine in your network with any browser at “<server ip address>:9091”. By default when I connect this way I got the following error message.

403: Forbidden
Unauthorized IP Address.
Either disable the IP address whitelist or add your address to it.
If you’re editing settings.json, see the ‘rpc-whitelist’ and ‘rpc-whitelist-enabled’ entries.
If you’re still using ACLs, use a whitelist instead. See the transmission-daemon manpage for details.

Then I edited the configuration file /etc/transmission-daemon/settings.json to configure it properly. Before editing this file ensure that you have stopped the transmission daemon using following command.

# /etc/init.d/transmission-daemon stop

Then edited the /etc/transmission-daemon/settings.json with following settings.

“rpc-authentication-required”: false,

“rpc-whitelist”: “*.*.*.*”,
The above settings basically does setting that authentication not required and client with any IP address (*.*.*.*) can access and control. If you want more more secured system, you can play with following settings also.
“rpc-bind-address”: “”,
“rpc-enabled”: true,
“rpc-port”: 9091,
“rpc-username”: “transmission”,
“rpc-whitelist-enabled”: true,
Once edited, restarted the transmission daemon as shown below.
# /etc/init.d/transmission-daemon start
Yes, it is done now. I am able to connect to daemon through a browser and able to control it.
My another requirement was to control the bandwidth usage for torrent downloads. Since I have a slow connection, I don’t want the torrent to encroach the complete bandwidth at day time while home users are active on internet. So I set the different connection speeds in a preference icon at bottom most left side of the client as shown below.

Share this post