Linux on the WRT54G
BatBox wrt54g distribution Version 0.61
This is a mini Linux distribution for the Linksys wrt54g. In about 20 seconds, you can install a small set of Linux tools to your access point's ramdisk. The distribution is geared towards those who are curious about casually exploring the internal workings of this device. The installation is strictly to the ram disk of the box. No permanent changes are made. If you mess something up, power-cycle the box.
Upon completion of the installation, you'll be able to telnet into the box and have a system with basic tools such as syslog, httpd (with cgi-bin support), vi, snort, mount, insmod, rmmod, top, grep, ls, ifconfig, iptables, ssh, iptraf etc.
To install from MS Windows, see the README file. To install from Linux or OSX, do the following : Either modify the script "wrt54g.sh" for the ip address and password of your router, or pass them in as arguments to the script. By default the script uses Java to move files to the wrt54g. If you would prefer wget or curl, uncomment the appropriate lines in the script. I had a problem with older version of wget translating escaped characters before passing the URL on to the server. Your mileage may vary. The WAN port of the box must be configured for the installation to succeed.
The distribution has been tested on Linksys firmware up to version version 4.00.7. I believe it will work on most other versions of official Linksys firmware. My installation has been tested on Linux, OSX, and Windows (with the addition of the Cygwin toolset). I have had reports that my distribution also works on wrt54gs boxes.
Upon successful execution of the script, you will be able to telnet to your box and start exploring its capabilities. Note that there is no login prompt, you telnet directly in as root. Be careful. This is for development use and is not meant to be deployed on the open Internet. You may want to review the iptables commands executed in the install script. They work for my Version 1 wrt54g, but later versions may have different logical ethernet devices. With my Version 1 box, the telnet daemon is not available on the WAN side of the box. A small wrt54g ssh daemon is included ( but not installed by default ) for those that need security.
The alternate web server is installed on port 8000 of the box.
In current versions of the distribution, the tar file "distro.tar" is quite sparse. If you wish to change the files sent to the box, untar distro.tar and add or subtract files from the "options" subdirectory, then recreate the tar file. Normally you should not run the install script more than once for a power-cycle of the box. i.e. if you want to run the install again, reset the wrt54g first.
I have attempted to limit all changes to the ram disk, but there are no guarantees that you will not damage your unit by using these tools.
Not much news on the wrt54g in quite a while. As for me, I've been a bit busy trying my hand at writing an iPhone and iPod touch application. It's a bit of a different endeavor for me, but I had a good time doing it. The application was inspired by the AppleTV that I reviewed a while back. It doesn't make rude noises or calculate your tips for you, but you can check it out here.
For you weather fans, I now have my weather station online being served up through my wrt54g and my NSLU2