Ubuntu 10.10 LAN Torrent Seedbox With Avalanche-rt, Lighttpd, Rtorrent, Vsftpd And Samba
|
Submitted by sftp (Contact Author) (Forums) on Mon, 2011-04-18 15:57. :: Linux | Ubuntu | Web Server | FTP | Lighttpd | Samba
Ubuntu 10.10 LAN Torrent Seedbox With Avalanche-rt, Lighttpd, Rtorrent, Vsftpd And SambaThis tutorial is based on a LAN setup, but it should also be applicable for an Internet seedbox (e.g. on a vps or rootds), but some additional steps may need to be performed (firewall, securing rpc-mount, generally hardening of the server). The best lightweight software combination for a seedbox is lighttpd with rtorrent/libtorrent and a nifty web interface. So we use avalanche-rt, an actively developed project which looks very promising.
SystemFirst step is to install the distribution of your choice on your box. Use a minimal installation if possible. The rest of the steps are Ubuntu specific. At the end of the installation choose the ssh-server as additional service which should be installed. After the reboot, first thing we need to do, is to connect to the Internet (if not already). If you, like me, use a laptop as your server, you may want or need to use a wireless connection to connect to the Internet. You can do this without a graphical interface with the neat tool wicd-curses, an ncurses frontend for wicd. Get it with (obviously you need to be connected to the Internet to perform this step, so in most cases you need a wired connection for at least this step): sudo apt-get install wicd-ncurses Afterwards, you may have to manually start the wicd-daemon: sudo /etc/init.d/wicd start Then you should be able to use wicd-curses and connect to your wireless network. If you are connected, perform a system update: sudo apt-get update && sudo apt-get upgrade Next, we install some software which makes live a bit more easy: sudo apt-get install htop mc pydf htop lets you check you system, mc comes in kind handy when handling a lot of files and pydf gives you nice overview over the space left on your harddrive. Let’s set up the seedbox:
WebserverFirst step is to install lighttpd and php: sudo apt-get install lighttpd php5-cgi php5-curl Then we create a file to test if php is working: sudo nano /var/www/phpinfo.php Fill it with: <?php phpinfo(); ?> If you now go to <yourip>/phpinfo.php you will just see a 403 (Forbidden) error So we have to set up php to work with lighttpd: sudo nano /etc/php5/cgi/php.ini Search (strg + w)) for cgi.fix_pathinfo and uncomment the line. Save and exit (strg + x). Next, we configure lighttpd to use php5. Open lighttpd.conf... sudo nano /etc/lighttpd/lighttpd.conf and add to the server.modules section (right at the beginning of the file) "mod_fastcgi" and at the end of the file the following: fastcgi.server = ( ".php" => ((
"bin-path" => "/usr/bin/php5-cgi",
"socket" => "/tmp/php.socket"
)))
Then restart lighttpd: sudo /etc/init.d/lighttpd restart If we now go to <yourip>/phpinfo.php you should see some information about php.
rTorrentNow we install more rtorrent and other needed software: sudo apt-get install screen libtorrent11 rtorrent Get the default-config for rtorrent (we're in our home-directory now): wget "http://libtorrent.rakshasa.no/export/1135/trunk/rtorrent/doc/rtorrent.rc" and move it to the right location: mv rtorrent.rc .rtorrent.rc Create needed folders: mkdir downloads Next, edit .rtorrent.rc: nano .rtorrent.rc Look for directory = and uncomment it and change it to your needs (in our case: directory = /home/downloads/). Next, search for session and uncomment it and change it to your needs (in our case: session = /home/.session/). Go to the end of .rtorrent.rc an insert the following: #SCGI Server scgi_port = 127.0.0.1:5001 Save & exit nano (strg + x). Now we can start rtorrent and check if scgi support is enabled: rtorrent You should see something like "XMPLRPC initialized with 519 functions." Next step is to enable RPC with lighttpd: sudo nano /etc/lighttpd/lighttpd.conf Add to the server.modules section the following: "mod_scgi" and at the end of the file the following: #SCGI Server scgi.server = ( "/RPC2" => ( "127.0.0.1" => ( "host" => "127.0.0.1", "port" => 5001, "check-local" => "disable" ) ) ) and reload lighttpd: sudo /etc/init.d/lighttpd restart Because this is a LAN setup, we do not protect the RPC-mount with a username / password combination. You will find it on almost every other tutorial out there and you really should protect the RPC-mount-directory with a strong password if you intend to use your seedbox on a server exposed to the Internet. But in our case it is not necessary and just an additional point of failure. So we now have rtorrent with xmlrpc enabled, and lighttpd with xmlrpc enabled. Now we need the avalanche-rt web interface.
|

![Creative Commons Attribution-NonCommercial-ShareAlike 2.0 License [Creative Commons Attribution-NonCommercial-ShareAlike 2.0 License]](http://creativecommons.org/images/public/somerights20.gif)


Recent comments
8 hours 28 min ago
17 hours 56 min ago
18 hours 45 min ago
22 hours 18 min ago
1 day 2 hours ago
1 day 3 hours ago
1 day 5 hours ago
1 day 15 hours ago
1 day 20 hours ago
1 day 21 hours ago