Timebank Hull and East Riding asked me to do some work recently, a service I was happy to provide at my special rates for non-profits. If you’ve not heard of them, they’re a fantastic project based on the idea of ‘give an hour, get an hour’ where people can share their skills and get other skills in return. A true ‘from each according to his means, to each according to his needs’ Social(ist) enterprise!
Anyway, one of the things they needed was a file server, as they were starting to find that sharing files and managing user access to them was becoming unwieldy. They also needed to be sure that their files were backed up.
Ordinarily, I would recommend any organisation with these needs go down the Windows server/client model. For this, they would need to invest in some costly hardware and software. First off, they would need a ‘proper’ server, and the absolute cheapest refurb unit I could find was pushing £160. Then they would have needed a Windows Server licence (another £120), plus Windows Client Access Licences (CALs) for each machine that accessed the server (another £45 per machine). Total cost over £500! Considering they had given me a budget of £1000, that was a big ask.
They had a Lenovo PC that was a few years old, so we decided to recommission it as a file server using free, open source software. There are a number of options for the intrepid user who wants to do this. I considered two of them:
Quoting from the FreeNAS website:
“FreeNAS is an operating system that can be installed on virtually any hardware platform to share data over a network.”
Basically, a NAS (Network Attached Storage) device is a storage device connected to a network that allows storage and retrieval of data from a central location. There are many companies that sell pre-built, off-the-shelf NAS devices (Synology, QNAP and Western Digital have some of the top rated devices), but with FreeNAS you can build your own with a piece of kit that would otherwise have reached the end of its useful life.
It is worth checking the hardware requirements first, though. It will only work on 64-bit systems, and 8GB RAM is the minimum. For Timebank, this would have meant further investment to bring the Lenovo machine up to spec as it only had 4GB RAM.
After a bit of research, I discovered Amahi, an open source NAS solution that had much lower requirements, and seemed ideal for our needs. It still requires a 64-bit system, but doesn’t specify a minimum amount of RAM. For a NAS, the more RAM the better, and also the faster CPU you have the better, but for a non-enterprise arrangement with just a few users, we decided to go with what we had – 4GB RAM and a mid range Core-i3 processor – and see how we got on.
There is comprehensive documentation on the Amahi wiki that takes you through the installation process, but in essence you download the Amahi 11 iso file, burn it to a disk, and boot your machine from the disk. You need to obtain an install code by setting up an account, and sharing some basic details, but from there you’re good to go.
I decided that I wanted a bit more flexibility, so chose the option of installing a base operating system first, which would then allow me to install other software alongside Amahi.
This quickly got very technical! I found instructions to install Amahi on Fedora 27 Server, but the command-line only interface would have made life more difficult when it came to installing other applications, and what I really wanted was an operating system that had a GUI (Graphical User Interface) as although I have a working knowledge of Linux, I’m no guru! With a lot of consulting forums and trial and error, I managed to get a working system with Fedora 27 Workstation, on top of which I installed Amahi and fwbackups to allow backing up the files to an external hard drive.
The next task was to add users and file shares to the NAS, and luckily this is really easy to do, and again there are comprehensive instructions on Amahi’s wiki.
The server is now running as a headless system providing shared folders that are mapped as drives in Windows, and seems to be working well. I can log into it using a web browser to do any admin tasks, and my next job will be to poke some holes in the network so I can access it directly from the comfort of my office. I will keep you posted!
UPDATE: For those of a more technical bent, Kali Linux is a Security Distribution of Linux specifically designed for digital forensics and penetration testing. It’s worth having a play with if you have an old machine lying around, and you can use it to test the security of your home or office network. Alex Nordeen over at Guru99 has drawn my attention to a useful beginner’s guide to Kali – thanks Alex!