The last thing I wanted to do, was set up a BitTorrent client, so I could leave torrents downloading straight to the NAS box, without having to keep a power-hungry PC going overnight.
In the ipkg system, Enhanced Ctorrent is available. This is a console BitTorrent client and works fine. However, it's not ideal to have to SSH into the router every time you want to set a torrent to download.
I came across CTCS – Ctorrent Control Server. This is a web front end for Ctorrent. This is written in Perl, and despite my best efforts to get all the relevant libraries from a full Perl install, I couldn't get it to work with the microperl ipkg.
OpenWRT, with the X-Wrt web interface, makes for an excellent replacement firmware, even you never intend on customising it. However, if you have the time and the patience, OpenWRT can be made to do some amazing things. Just looking around the OpenWRT forums, I see evidence of some great projects that are working.
Some routers even have USB ports, enabling many possibilities. At under £100 for one of these routers, they suddenly become cheap Linux project boxes.
I spent over two solid days working with OpenWRT, and although getting very close, I also got incredibly frustrated and didn't achieve what I set out to. I do feel, that given enough time, I could have at least got a PHP web server up and running, even if I had to resort to using lighthttpd.
I was disappointed that the dropbear SSH server included doesn't support tunneling as standard, and needs recompiling to support it. With an SSH connection, one can tunnel ports from anywhere on the local network to an external source for access. However, it does fully support OpenVPN, which would give the same functionality.