Transmission is a popular torrent client on modern Linux systems. It has both a GUI for desktop and a daemon that can run on headless servers such as an Amazon VPS. An advantage of running it on Amazon is that torrents will be downloaded faster since the VPS bandwidth is higher, then you can just directly download your file from your VPS. This helps offload the torrent traffic from your own internet connection.
This tutorial will help you setup transmission daemon on your cloud VPS. In my case, I’m running transmission daemon on an Amazon EC2 instance and setup it’s web panel to easily add/delete/manage your torrents.
Setup your YUM repos and install packages
Use yum to search and install the transmission packages. No GUI on this setup, only a web access portal.
# yum install epel-release
# yum search transmission
# yum install transmission-cli transmission-common transmission-daemon
Start the transmission-daemon to create the default config file. The stop it to make sure it is not running when you edit the config files.
# systemctl start transmission-daemon.service
#systemctl stoptransmission-daemon.service
Or
# service transmission-daemon start
# service transmission-daemon stop
Configure Transmission Daemon
Next, you need to edit the transmission settings.json config file. In Red Hat Enterprise Linux 7, the location is below. This is also the default location on where downloaded torrents are saved.
# nano /var/lib/transmission/.config/transmission-daemon/settings.json
The following options are the settings to be changed:
"rpc-authentication-required": true,
--> Set true to force user authentication on accessing the web panel
"rpc-bind-address": "0.0.0.0",
--> Bind daemon to listen on all network interface
"rpc-password": "{4e4c5c9da27dbd2ec81b1f14a6f8692f47368efaz91CysYE",
--> change the password to access the web portal, this will be re-encrypted upon daemon restart
"rpc-port": 9091,
--> port for the web panel access
"rpc-username": "user",
--> username for the web panel access
"rpc-whitelist": "0.0.0.0",
--> IP addresses allowed to access the web panel (security purposes)
"rpc-whitelist-enabled": false,
--> set to false, whitelisting is disabled. Anyone can access the web panel, so be sure to set rpc-authentication-required to true (for security purposes)
After editing and saving the settings.json file, start the transmission daemon.
# systemctl start transmission-daemon.service
Or
# service transmission-daemon start
If no errors are encountered, then you should be able to access the transmission web panel from your browser. Just type the IP of the server and set port to 9091. You should be required to provide credentials which you have set earlier on the settings.json file.
Example:
http://192.168.10.10:9091
You should now be able to upload torrent files or URLs and start torrenting.
If you have an error 403 Forbidden on the web panel, try to review the settings on the settings.json file as stated above, also check if you have the port open/allowed on your VPS firewall.
– masterkenneth