Required: A small, low-current-draw server to act as file-storage, database, version control, asterisk controller, security-system ...
Hardware
For me, the hardware requirements are that the server be small enough to fit on my bookshelf, and low-powered so I can leave it on all the time. This points to: a mini-ITX motherboard and case, as the nano ones are still too expensive, and; an AMD Sempron CPU, as it has the lowest power requirements.
Add to this some RAM (1GB should be enough for now) and hard-drives such as the 500GB from Samsung - reputably quiet and cool, and often used in media centres. So something like the Biostar IDEQ AMD Sempron 3300+, with capacity for 2 SATA drives and up to 2GB PC3200 RAM, looks ideal!
Software
For the operating system, I've chosen Ubuntu 7.10 Server, a Linux distribution. You could just as easily use Debian or another Linux distro, or OS X Server. The good thing about Ubuntu and Debian is the APT installation system - installing many of the software packages listed below is as easy as typing "sudo apt-get install {package}" on the command line.
There's no point having an always-on server if it's not doing anything. Before anything else, install:- Webmin Administration - A nice web-based GUI for administration of the server.
- Amanda backup.
- Asterisk VOIP Server.
- Azureus Bittorrent Downloader - A Java app, but can be run "headless".
- BIND DNS server - resolve local names (because the ADSL router can't).
- Cfengine configuration engine.
- FreeSwan VPN.
- Icecast Streaming Server - MP3 streaming audio which can work with MPD.
- Mediatomb UPnP - With 1TB of file storage, this will be an ideal repository for video, and UPnP is a standard protocol for streaming video and audio content.
- MPD Music Player Daemon - remote control music playback.
- MySQL Database - many other services need or benefit from a "real" database (as opposed to the file-based SQLite), and it may be useful for making your own data-centric apps.
- Nagios system monitoring
- Samba Windows File Sharing - if you have Windows clients.
- Subversion Version Control - always handy for developers.
- Shorewall network firewall.
- Streamripper for recording Internet radio streams into individual MP3s
- TheLastRipper for recording Last.fm radio streams into individual MP3s.
- Zoneminder Security System.
