I setup my SheevaPlug to act as a firewall between my Motorola Surfboard cable modem and my local ethernet. I cross-compiled the 2.6.30 kernel using info from this wiki:
http://www.computingplugs.com/index.php/Building_a_custom_kerneland added usbnet, cdc_ether, rndis_host and rndis_wlan modules.
Also used apt-get to install iptables and ipmasq (plus traceroute to aid in debugging.) The usb interface now shows up as eth1 and can configured just as any ethernet interface. I'm a Slackware guy and this is my first exposure to Ubuntu/Debian, so I spent some time learning how to configure the interfaces, but the whole project was pretty straightforward. This system has now replaced my big, loud, hot (but cheap) Pentium 120 firewall.
I'd prefer to run Slackware from a usb drive (and have done that, thanks to mozes) and connect to the modem via usb at the same time, but can't seem to find a hub that works with the plug.
I can post the details somewhere if there is any interest.