The Server should be kept in a secure room, probably along with the core of the Network.
It should house as much local content as possible in order to reduce the load on the fragile Internet connection.
This should include the camp Wiki (disable the public one for the duration of the camp), a camp Blog (a separate Public one should also be available, but participants should focus on the local one) & a system for sharing Photos.
Software to be installed (check with facilitators what they need for their sessions):
- Blog: Drupal & Wordpress (easier/more well-known than Gadgets?)
- Wiki: MediaWiki (easier/more well-known than Gadgets?)
- CMS: Plone
The Ubuntu packages for these applications may or may not be recent enough to be usable (e.g. MediaWiki package is very out of date!). Facilitators are also likely to want to add modules/plugins.
In order to be able to allow applications to be maintained separately from the core system, groups are created which have permissions to the applications:
Core Network services:
- iptables providing NAT, QoS & filtering out icmp to prevent users wastefully testing performance (Smokeping provided instead)
- Squid for caching + advert filtering
- Caching & also having simple aliases for internal services ('blog', 'wiki', 'photos', etc)
- SMTP Server
- Ubuntu package repository
- 15Gb so download beforehand on a fast connection!
A key requirement is to allow for priority Internet access for key tasks (such as downloading a missing application or updating the external Blog). This is achieved by having 3 NICs on the Gateway: WAN, LAN1 (Labs) & LAN2 (Priority). Wondershaper can be used to reduce the priority of LAN1.
Potential Hardware for the Server:
- This was used at AfricaSource II
- Disadvantage: USB 1.1 ports (slow for external USB HDDs)
- This is used for Inveneo's HubStation
Another alternative approach is to split the Gateway from the Server. The Gateway could then be a Linksys WRT54g running OpenWRT or a m0n0wall box. A Linksys can be known to drop connections &/or reduce throughput when scaling to more than 30-40 users.
A server may also be required to support LTSP for some Lab configurations.
Detailed Step-by-Step Installation Guide