Transmission on CentOS 7 with no GUI

Want to run a bittorrent client on CentOS Linux 7? Here’s how. There are two tricks to bear in mind: i) you’ll need to add a library manually, ii) Transmission is now maintained on GitHub.

First, you’ll need to add the EPEL repository:

yum install epel-release
yum -y update

Once that is done, add the packages for transmission:

yum install transmission-cli transmission-common transmission-daemon libnatpmp

Note that libnatpmp is a required library dependency that is currently broken, so we need to add and install it manually.

Now you can start Transmission, which will create an empty, default, configuration file. Check that Transmission is running.

systemctl start transmission-daemon.service
systemctl status transmission-daemon.service

Then stop Transmission and edit the configuration file:

systemctl stop transmission-daemon.service
vi /var/lib/transmission/.config/transmission-daemon/settings.json

Transmission have moved their source and wiki from trac to GitHub due to a security breach. You can now get the full documentation for the configuration file here.

Adjust the access control to the web user interface, such as by setting a password, and allow password free access for anyone on your local network. Additionally, I set a fixed port that transmission will be reachable on, that I NAT through my firewall:

“rpc-authentication-required”: true,
“rpc-whitelist”: “,192.168.1.*”,
“rpc-whitelist-enabled”: true,
“peer-port”: 11111,

Quit and save, then restart Transmission:

systemctl start transmission-daemon.service

Now use your browser to connect to http://ip_of_your_server:9091/

If you’d like to have transmission start automatically at the next reboot, use:

systemctl enable transmission-daemon

A word on firewalls: I’ve disabled my host-base firewall entirely so am not showing how you would open local ports to be accessible firewalld.