_ uTorrent
Linux Server
If you’re like me one of the only reasons you’re still running a windows Seedbox is because uTorrent is the Best Client available. I have been an avid uTorrent user for years now and am happy to see that it has finally made its way to Linux.
The package will install on “Most” Debian Distro’s, But my in my instruction we are going to be using TurnKey Linux’s Torrent Server. TurnkeyLinux.org is dedicated to providing open source ready-to-use IT solutions.
The Turnkey Torrent Server Appliance is a file server with integrated multi-protocol file sharing that can be used to handle all types of file downloads. Files can be added to the download list using the Torrent Server handler extension for FireFox, or through a simple web interface that allows you to manage the server remotely. Especially useful for centralizing file sharing on a shared network. It also includes anti-virus scanning.
So lets get started!
The files you will need:
Turnkey Torrent Appliance ISO
Step 1. Configure:
Download the Turnkey Torrent Appliance ISO from the above link. Burn the image to a CD or use
UnetBootin to put it on a USB.
Boot up your PC to the media you have choses to install from, and Select the “Install to hard disk” option.
If you’re like me one of the only reasons you’re still running a windows Seedbox is because uTorrent is the Best Client available. I have been an avid uTorrent user for years now and am happy to see that it has finally made its way to Linux.
The package will install on “Most” Debian Distro’s, But my in my instruction we are going to be using TurnKey Linux’s Torrent Server. TurnkeyLinux.org is dedicated to providing open source ready-to-use IT solutions.
The Turnkey Torrent Server Appliance is a file server with integrated multi-protocol file sharing that can be used to handle all types of file downloads. Files can be added to the download list using the Torrent Server handler extension for FireFox, or through a simple web interface that allows you to manage the server remotely. Especially useful for centralizing file sharing on a shared network. It also includes anti-virus scanning.
So lets get started!
The files you will need:
Turnkey Torrent Appliance ISO
Step 1. Configure:
Download the Turnkey Torrent Appliance ISO from the above link. Burn the image to a CD or use
UnetBootin to put it on a USB.
Boot up your PC to the media you have choses to install from, and Select the “Install to hard disk” option.
Once started up the Package Configuration Wizard will start.
Select the “Guided – use entire disk “(option 2)
Select the “Guided – use entire disk “(option 2)
Select “YES” and press enter to write the changes to the hard disk.
Select “YES” and press enter to write the GRUB boot loader to the primary hard disk. If you have a special setup get message our site and we can walk you through that. For must setup’s selecting yes here works fine.
Select “YES” and press enter to reboot the system.
Once the system reboots you will be walked through the main application configuration.
Enter the password for root that you wont forget.( For this Demo we used “password”)
Enter the password for root that you wont forget.( For this Demo we used “password”)
Enter the password again to confirm and press enter.
Enter your applications password. Try to make it different than your root password
(in this Demo we used “pass123”)
(in this Demo we used “pass123”)
Confirm that password and press enter.
Select “Skip” and press enter to skip the cloud configuration. (Its not needed.)
If you are connected to the internet at this time select “INSTALL” to install updates,if not select “Skip” and press enter.
Press enter to go into the “Advanced Menu”.
Press enter to select “Networking”.
Select static to configure a static IP address. (Recommended for a Server)
This setup is typical for most home networks, if you know your home network setup and its different go ahead and use that.
And then select “Apply” and press enter.
And then select “Apply” and press enter.
Select “Back” and press enter.
Select “Quit” and press enter to quit the setup.
Press enter to quit the setup.
Login to the server with Root and the password you set in the setup.
Create a new user with useradd ( we used toruser for this Demo)
(the –m creates the home Directory which we need)
(the –m creates the home Directory which we need)
Create a password for that user
Type exit to logout
Login as your new user.
Make 3 Directories utorrent, downloads, and trackers.
Download Utorrent
wget download.utorrent.com/linux/utorrent-server-3.0-25053.tar.gz
wget download.utorrent.com/linux/utorrent-server-3.0-25053.tar.gz
Extract the tarball
Change into the extracted directory
ls to list the files in the directory.
Move all the files to utorrent directory
(remember to use your username instead of toruser)
(remember to use your username instead of toruser)
Change into the utorrent directory
(remember to use your username instead of toruser)
(remember to use your username instead of toruser)
Everything is installed now we all we have to do is make a configuration file and a startup script.
Create the utserver configuration file (utserver.conf)
Paste the following Text into the nano text editor window.
# preferred_interface: eth1
# BIND_IP
# UT_WEBUI_PORT (integer): Default=8080. Port for HTTP interface.
ut_webui_port: 6880
# DIR_ROOT (string): Default=“”. If not empty, dir_active, dir_completed, and dir_torrent_files are relative to this directory.
# dir_root: /your_path/utorrent-server-v3_0/
# UT_WEBUI_DIR (string): Default="". Directory where the web UI file archive webui.zip is stored.
ut_webui_dir: /home/toruser/utorrent/
# DIR_ACTIVE (string): Default=“./”. Directory in which currently downloaded data is saved.
dir_active: /your_path/utorrent-server-v3_0/torrents.active/
# DIR_COMPLETED (string): Default=“”. Directory where completed downloads are stored. If the value is an empty string, the value of dir_active is used.
dir_completed: /home/<userid>/Downloads/
# DIR_DOWNLOAD (string): Default=“”. Optional directory where completed downloads can be stored, instead of in dir_completed.
# dir_download: /home/<userid>/Downloads/
# dir_download: /home/<userid>/Music/
# dir_download: /home/<userid>/Videos/
# DIR_TORRENT_FILES (string): Default=“”. Directory where torrent files are stored. If the empty string, the value of dir_active is used.
dir_torrent_files: /your_path/utorrent-server-v3_0/
# DIR_TEMP_FILES (string): Default="". Directory where temporary files are stored. If the empty string, the value of dir_active is used.
# dir_temp_files: /your_path/utorrent-server-v3_0/tmp
# DIR_AUTOLOAD (string): Default=“”. Directory where torrent files will be recognized and auto-loaded. If the empty string, auto-load is disabled.
# dir_autoload: /your_path/utorrent-server-v3_0/torrents.queue/
# DIR_AUTOLOAD_DELETE (bool): Default=false. If true, torrent files in the autoload directory will be deleted after being loaded.
# dir_autoload_delete: 0
# DIR_REQUEST (string): Default=“”. Directory where maintenance request files will be recognized, loaded, and deleted. If the empty string, empty=disabled
# dir_request: /your_path/utorrent-server-v3_0/maint
# UPNP (bool): Default=true. If true, UPNP functionality for mapping ports is used by utserver.
# NATPMP (bool): Default=true. If true, NAT-PMP functionality for mapping ports is used by utserver.
# LSD (bool): Default=true. If true, Local Service Discovery is enabled.
# DHT (bool): Default=true. If true, Distributed Hash Table extension is enabled.
# PEX (bool): Default=true. If true, Peer Exchange extension is enabled.
# RATE_LIMIT_LOCAL_PEERS (bool): Default=false. If true, rate limiting also applies to communications with peers in the local subnet.
# DISK_CACHE_MAX_SIZE (integer): Default=0. Maximum amount of memory used (in MB) by each of the read, write, and piece caches. Maximum value is 512.
# ADMIN_NAME (string): Default=“admin”. If defined, this name must be supplied (along with the password) when authenticating to the server via the HTTP interface.
# ADMIN_PASSWORD (string): Default=“”. If defined, this password must be supplied (along with the name) when authenticating to the server via the HTTP interface.
# BIND_PORT (integer): Default=6881. Port used for BitTorrent protocol. This can be any value in the range 1025-65000.
# MAX_UL_RATE (integer): Default=-1. Maximum total upload rate in kilobytes per second. -1 means unlimited.
# MAX_UL_RATE_SEED (integer): Default=-1. Maximum per-torrent upload rate when seeding, in kilobytes per second. -1 means unlimited.
# CONNS_PER_TORRENT (integer): Default=50. Maximum number of connections for a given torrent.
# MAX_TOTAL_CONNECTIONS (integer): Default=200. Maximum number of connections opened at the same time.
# AUTO_BANDWIDTH_MANAGEMENT (boolean): Default=true. If true, upload bandwidth is automatically throttled in order to not impact other applications.
# MAX_DL_RATE (integer): Default=-1. Maximum total download rate in kilobytes per second. -1 means unlimited.
# SEED_RATIO (integer): Default=0. Seed ratio in percent (%). If not 0, seeding will stop after reaching this upload/download ratio.
# SEED_TIME (integer): Default=0. Time after which seeding will stop, in seconds. 0 means seeding won’t stop.
# BIND_IP
# UT_WEBUI_PORT (integer): Default=8080. Port for HTTP interface.
ut_webui_port: 6880
# DIR_ROOT (string): Default=“”. If not empty, dir_active, dir_completed, and dir_torrent_files are relative to this directory.
# dir_root: /your_path/utorrent-server-v3_0/
# UT_WEBUI_DIR (string): Default="". Directory where the web UI file archive webui.zip is stored.
ut_webui_dir: /home/toruser/utorrent/
# DIR_ACTIVE (string): Default=“./”. Directory in which currently downloaded data is saved.
dir_active: /your_path/utorrent-server-v3_0/torrents.active/
# DIR_COMPLETED (string): Default=“”. Directory where completed downloads are stored. If the value is an empty string, the value of dir_active is used.
dir_completed: /home/<userid>/Downloads/
# DIR_DOWNLOAD (string): Default=“”. Optional directory where completed downloads can be stored, instead of in dir_completed.
# dir_download: /home/<userid>/Downloads/
# dir_download: /home/<userid>/Music/
# dir_download: /home/<userid>/Videos/
# DIR_TORRENT_FILES (string): Default=“”. Directory where torrent files are stored. If the empty string, the value of dir_active is used.
dir_torrent_files: /your_path/utorrent-server-v3_0/
# DIR_TEMP_FILES (string): Default="". Directory where temporary files are stored. If the empty string, the value of dir_active is used.
# dir_temp_files: /your_path/utorrent-server-v3_0/tmp
# DIR_AUTOLOAD (string): Default=“”. Directory where torrent files will be recognized and auto-loaded. If the empty string, auto-load is disabled.
# dir_autoload: /your_path/utorrent-server-v3_0/torrents.queue/
# DIR_AUTOLOAD_DELETE (bool): Default=false. If true, torrent files in the autoload directory will be deleted after being loaded.
# dir_autoload_delete: 0
# DIR_REQUEST (string): Default=“”. Directory where maintenance request files will be recognized, loaded, and deleted. If the empty string, empty=disabled
# dir_request: /your_path/utorrent-server-v3_0/maint
# UPNP (bool): Default=true. If true, UPNP functionality for mapping ports is used by utserver.
# NATPMP (bool): Default=true. If true, NAT-PMP functionality for mapping ports is used by utserver.
# LSD (bool): Default=true. If true, Local Service Discovery is enabled.
# DHT (bool): Default=true. If true, Distributed Hash Table extension is enabled.
# PEX (bool): Default=true. If true, Peer Exchange extension is enabled.
# RATE_LIMIT_LOCAL_PEERS (bool): Default=false. If true, rate limiting also applies to communications with peers in the local subnet.
# DISK_CACHE_MAX_SIZE (integer): Default=0. Maximum amount of memory used (in MB) by each of the read, write, and piece caches. Maximum value is 512.
# ADMIN_NAME (string): Default=“admin”. If defined, this name must be supplied (along with the password) when authenticating to the server via the HTTP interface.
# ADMIN_PASSWORD (string): Default=“”. If defined, this password must be supplied (along with the name) when authenticating to the server via the HTTP interface.
# BIND_PORT (integer): Default=6881. Port used for BitTorrent protocol. This can be any value in the range 1025-65000.
# MAX_UL_RATE (integer): Default=-1. Maximum total upload rate in kilobytes per second. -1 means unlimited.
# MAX_UL_RATE_SEED (integer): Default=-1. Maximum per-torrent upload rate when seeding, in kilobytes per second. -1 means unlimited.
# CONNS_PER_TORRENT (integer): Default=50. Maximum number of connections for a given torrent.
# MAX_TOTAL_CONNECTIONS (integer): Default=200. Maximum number of connections opened at the same time.
# AUTO_BANDWIDTH_MANAGEMENT (boolean): Default=true. If true, upload bandwidth is automatically throttled in order to not impact other applications.
# MAX_DL_RATE (integer): Default=-1. Maximum total download rate in kilobytes per second. -1 means unlimited.
# SEED_RATIO (integer): Default=0. Seed ratio in percent (%). If not 0, seeding will stop after reaching this upload/download ratio.
# SEED_TIME (integer): Default=0. Time after which seeding will stop, in seconds. 0 means seeding won’t stop.
There are 5 lines in the file that you must change to accommodate your setup:
Change the Following port number to the port you want to connect to the uTorrent Web User Interface on:
ut_webui_port: 6880
Change the Follwoing Path to match where the webui.zip is (You should just have to change the username from toruser to your username)
ut_webui_dir: /home/toruser/utorrent/
Change the Following Path to match where you want the downloads to go (For the Demo we use the "downloads" folder we creaeted earlier)
dir_active: /home/toruser/downloads/
Change the Following to where you want your completed downloads to be (I like to keep them in the same folder when finished so I can seed the torrents)
dir_completed: /home/toruser/downloads/
Change the Following to where you want to store your trackers. ( For the Demo we user the "trackers" folder we created)
dir_torrent_files: /home/toruser/trackers/
After Making the Above changes to the file in the nano editor press Ctrl+X to exit saving changes and then press Enter to keep the current file name.
Start uTorrent -- With the configuration file in the background. (The & runs the process in the background) (again be sure to change /toruser/ to yourusername
Change the Following port number to the port you want to connect to the uTorrent Web User Interface on:
ut_webui_port: 6880
Change the Follwoing Path to match where the webui.zip is (You should just have to change the username from toruser to your username)
ut_webui_dir: /home/toruser/utorrent/
Change the Following Path to match where you want the downloads to go (For the Demo we use the "downloads" folder we creaeted earlier)
dir_active: /home/toruser/downloads/
Change the Following to where you want your completed downloads to be (I like to keep them in the same folder when finished so I can seed the torrents)
dir_completed: /home/toruser/downloads/
Change the Following to where you want to store your trackers. ( For the Demo we user the "trackers" folder we created)
dir_torrent_files: /home/toruser/trackers/
After Making the Above changes to the file in the nano editor press Ctrl+X to exit saving changes and then press Enter to keep the current file name.
Start uTorrent -- With the configuration file in the background. (The & runs the process in the background) (again be sure to change /toruser/ to yourusername
Thats it. Soon I will post how to easily add SSL and have uTorrent start at boot.
Rich L
Great write up. I have been looking for an easy way to set up a torrent box and have been having fits getting it done on Fedora. Have you tried to set up 'Flexget' and RSS source for automations sake? That would be something I'd be very interested in and will probably give that a go off of the back of your work here. Thanks!
Author:
No Sir,
I have not used Flexget or RSS feeds. Most of the stuff I get is random. I will look into it for you I'm sure we can get it up and running no problem.
Great write up. I have been looking for an easy way to set up a torrent box and have been having fits getting it done on Fedora. Have you tried to set up 'Flexget' and RSS source for automations sake? That would be something I'd be very interested in and will probably give that a go off of the back of your work here. Thanks!
Author:
No Sir,
I have not used Flexget or RSS feeds. Most of the stuff I get is random. I will look into it for you I'm sure we can get it up and running no problem.
