Website hosting dilemma

"Tomas Sobek" <[email protected]> Thu, 12 Mar 2015 06:59:13 +0100 (CET)
Newsgroups gmane.org.user-groups.linux.dunedin.general
Message-ID <[email protected]>
Hi,
I will be soon moving into a new house with fibre-optic connection. I am rethinking my website hosting, playing with the idea of hosting it at home. Does anyone have any experience to share, useful resources to read, etc? 

Requirements:

* It's predominantly a photo gallery that includes high-resolution files for download. I have maybe couple thousands photos up there, currently taking about 9 GB of disk space. New jpeg files are up to 10 MB each (yeah 24 mega-pixels camera). 

* In 2014 I had following stats from Webalizer (total for 12 months):
- KBytes: 550,880,368 ~ i.e. about 50 GB per month of traffic
- Visits: 144,476
- Pages: 935,884
- Files: 1,524,967
- Hits: 1,822,670

* I am currently using Gallery3 but will be looking at other options before final deployment. For ideas, here is a list - http://www.design3edge.com/2010/08/26/best-free-and-open-source-php-image-galleries/

* Databases
- I will need a tiny PostgreSQL database (but I can rewrite my app to use a different database if needed).
- I will most likely need MySQL/MariaDB database for the photo gallery.

* Other requirements:
- PHP
- mail server

* Current website for reference: http://tomassobekphotography.co.nz/


Ideas and questions running through my mind are:

* Which provider to choose? My colleague at work is sorting some issues with his Vodafone connection and every time he calls them, he needs to wait for couple of hours before he gets to speak to someone - i.e. we have a lot of crappy music in our office lately. This isn't my idea of having fun and good support. Does anyone have a better experience with other providers? Recent price/speed/data caps comparison?

* What hardware to host the website on? 
- Would something like the new Raspberry Pi be adequate?
- Or ShivaPlug? https://en.wikipedia.org/wiki/SheevaPlug
- Or build a small server, for example something like this - http://linuxlookup.com/howto/build_linux_home_web_server_under_250
- I also liked the look of Linutop - http://www.linutop.com/linutop5.en.html
- Any other ideas or suggestions to look at?

* What operating system to run it with? It will be a learning curve anyway so why not pick the best option for the job? Currently I am running just desktops with Mint 17. Naturally I expect no GUI should be on the server.

* How to secure the box?
a) Should I try to create some form of a DMZ? What would the network diagram for this look like? Do I need anything special from the internet provider? I had an idea to plug this server directly into the modem/router and plug another router (with WiFi) into that first router. Then all my devices would connect via that second router, i.e. would be behind another firewall and separated from my server. At the same time, the server would be easily accessible from my devices. Does it sound sensible from security standpoint?
b) I assume I should use pre-shared keys for SSH. I would keep the SSH port closed from internet and open to my home devices only.
c) I thought I should probably use auto-update for security patches, if the operating system would support it. 
d) A while back I read about tripwire. Would it make sense to configure it in this case? Or would it be more painful than useful together with the auto-update?

* Is it worth hosting from home at all, or should I keep my external shared web-hosting? Or get some local one? My current one is in Australia. When I was setting it up I couldn't find anywhere here for reasonable price with PostgreSQL.

* If I go with home hosting, how does it work with transferring the domain name? And can I hook it into dynamic DNS? Or do I need static IP? So far this was done by the web-hosting company and I feel clueless.

* I would also need a primer on setting up a mail server for my domain.

To me it feels like a reasonably big project. Therefore your ideas and opinions on any of the above would be greatly appreciated.
Cheers, Tomas

_______________________________________________
DunLUG mailing list
[email protected]
http://lists.ethernal.org/listinfo/dunlug
DunLUG Wiki - http://dunlug.kallisti.net.nz/