I was introduced to the +Freedombox project +in 2010, when Eben Moglen presented his vision about serving the need +of non-technical people to keep their personal information private and +within the legal protection of their own homes. The idea is to give +people back the power over their network and machines, and return +Internet back to its intended peer-to-peer architecture. Instead of +depending on a central service, the Freedombox will give everyone +control over their own basic infrastructure.
+ +I've intended to join the effort since then, but other tasks have +taken priority. But this summers nasty news about the misuse of trust +and privilege exercised by the "western" intelligence gathering +communities increased my eagerness to contribute to a point where I +actually started working on the project a while back.
+ +The initial +Debian initiative based on the vision from Eben Moglen, is to +create a simple and cheap Debian based appliance that anyone can hook +up in their home and get access to secure and private services and +communication. The initial deployment platform have been the +Dreamplug, +which is a piece of hardware I do not own. So to be able to test what +the current Freedombox setup, I had to come up with a way to install +it on some hardware I do got access to. I have rewritten the +freedom-maker +image build framework to use .deb packages instead of only copying +setup into the boot images, and thanks to this rewrite I am able to +set up any machine supported by Debian Wheezy as a Freedombox, using +the previously mentioned deb (and a few support debs for packages +missing in Debian).
+ +The current Freedombox setup consist of a set of bootstrapping +scripts +(freedombox-setup), +and a administrative web interface +(plinth + exmachina + +withsqlite), as well as a privacy enhancing proxy based on +privoxy +(freedombox-privoxy). There is also a web/javascript based XMPP +client (jwchat) +trying (unsuccessfully so far) to talk to the XMPP server +(ejabberd). The +web interface is pluggable, and the goal is to use it to enable OpenID +services, mesh network connectivity, use of TOR, etc, etc. Not much of +this is really working yet, see +the +project TODO for links to GIT repositories. Most of the code is +on github at the moment. The HTTP proxy is operational out of the +box, and the admin web interface can be used to add/remove plinth +users. I've not been able to do anything else with it so far, but +know there are several branches spread around github and other places +with lots of half baked features.
+ +Anyway, if you want to have a look at the current stat, the +following recipes should work to give you a test machine to poke +at.
+ +Debian Wheezy amd64
+ +-
+
+
- Fetch normal Debian Wheezy installation ISO. +
- Boot from it, either as CD or USB stick. +
Press [tab] on the boot prompt and add this as a boot argument +to the Debian installer:
+
url=http://www.reinholdtsen.name/freedombox/preseed-wheezy.dat
+
+- Answer the few language/region/password questions and pick disk to +install on. + +
- When the installation is finished and the machine have rebooted a +few times, your Freedombox is ready for testing. + +
Raspberry Pi Raspbian
+ +-
+
+
- Fetch a Raspbian SD card image, create SD card. +
- Boot from SD card, extend file system to fill the card completely. +
Log in and add this to /etc/sources.list:
++deb http://www.reinholdtsen.name/freedombox wheezy main +
+Run this as root:
++wget -O - http://www.reinholdtsen.name/freedombox/BE1A583D.asc | \ + apt-key add - +apt-get update +apt-get install freedombox-setup +/usr/lib/freedombox/setup +
+- Reboot into your freshly created Freedombox. + +
You can test it on other architectures too, but because the +freedombox-privoxy package is binary, it will only work as intended on +the architectures where I have had time to build the binary and put it +in my APT repository. But do not let this stop you. It is only a +short "apt-get source -b freedombox-privoxy" away. :)
+ +Note that by default Freedombox is a DHCP server on the +192.168.1.0/24 subnet, so if this is your subnet be careful and turn +off the DHCP server by running "update-rc.d isc-dhcp-server +disable" as root.
+ +Please let me know if this work for you, or if you have any +problems. We gather on the IRC channel +#freedombox on +irc.debian.org and the +project +mailing list.
+ +Once you get your freedombox operational, you can visit +http://your-host-name:8001/ to see the state of the plint +welcome screen (dead end - do not be surprised if you are unable to +get past it), and next visit http://your-host-name:8001/help/ +to look at the rest of plinth. The default user is 'admin' and the +default password is 'secret'.
+