|
||||||||
Hi, as promised, I have started working on m0n0BSD (= "instant miniBSD"), and there are already some results: http://neon1.net/temp/m0n0bsd-4.8-net45xx-std-20030504.img (upload capped to 300 kbps, you can also try http://cable.neon1.net/temp/m0n0bsd-4.8-net45xx-std-20030504.img - alternate connection (180 kbps)) Download size: about 6 MB. It's an image for net45xx', based on FreeBSD 4.8-RELEASE, that fits on 16 MB (or larger) CF cards. The kernel supports IPsec (FAST_IPSEC), HiFn (for the crypto accelerator cards) and wireless (awi/wi/an). ipfilter, ipfw, netgraph and BRIDGE are compiled as modules. The goal for m0n0BSD is simply to provide CF-card-ready binary images of stripped (but not minimalistic) FreeBSD as a convenience to those who just want to give FreeBSD a quick try or who don't like working through the miniBSD guide over and over again as new versions of FreeBSD are released. There will be no GUI, of course - that's where m0n0wall fits in (for less exotic applications). Custom patches: disabled annoying (and pointless, in this case) warnings in sys/ev/wi/if_wi.c and sys/kern/subr_diskslice.c and added a patch for the ipfilter MSS clamping bug. /etc/rc has been modified to reload rc.conf after calling the diskless boot script. rc.diskless2 has been modified and renamed to rc.m0n0wall. The rest is pretty much standard FreeBSD (everything compiled with -march=i486). I also went to the trouble of writing a shell script for the initial setup that handles the following things: - hostname - pccardd configuration (on/off) - root password - network interface configuration - interface list from ifconfig -> should work regardless of which interfaces are present - static IP address or DHCP - can handle wireless interfaces (SSID/channel/hostap/IBSS/WEP) - default gateway - IP forwarding on/off - DNS servers - SSH key generation The script is automatically run on the first boot, but can be executed again later with sh /etc/rc.initial. There is no homepage or documentation on m0n0BSD at the moment, but that will change as soon as I get some feedback on whether m0n0BSD is going in the right direction. Install as follows: UNIX: gzcat m0n0bsd-4.8-net45xx-std-20030504.img | dd of=[CF raw device] bs=16k Windows: get physdiskwrite 0.2: http://neon1.net/m0n0wall/downloads/physdiskwrite-0.2.zip and drag the .img file onto physdiskwrite.exe (physdiskwrite 0.2 can now automatically detect gzipped images and uncompress them on-the-fly) I have decided to name the images .img (and not .bin.gz) because some browsers try to decompress them while downloading (most notably Internet Explorer for Windows). m0n0wall images are going to be named .img in the future, too. Note that the image contains just the programs that I deemed necessary (more or less the file list from the miniBSD guide), and the filesystem is pretty much full. If you have a bigger CF card and want to add other programs, use disklabel and growfs. I'd really like to modularize m0n0BSD and provide something like packages for software that is commonly used on net45xx (like MPD, DHCPD, racoon, perl, zebra, etc.). I'm still thinking of a way to do that. I could make a web-based image building system where you could put your custom image together with a few clicks (probably powered by PHP), provide several images with different options (and CF card sizes), or release a "base" CF image and separate packages that can be installed over the network on the net45xx. I like the first approach best, but then I'll have to solve the bandwidth problem (I don't think I can host it all on my feeble 512 kbps. ;) On a side note, I went crazy and registered the domain m0n0.ch (and m0n0.com as well, just for the sake) to host m0n0BSD and m0n0wall in the future. I have a nice little machine (AMD 1.7 GHz) around that I will put to new use as a server (running FreeBSD of course) soon. Please let me know what you think! - Manuel |