Well, the move to my new server is complete. I decided a few weeks ago to migrate my 5 domains, spread over 2 hosting platforms, to a single Virtual Dedicated/Private Server (VDS/VPS) hosted by TekTonic. I realized I had been paying a premium for host management services I could perfectly well do myself and was also getting very frustrated at my lack of control over my accounts. I opted for TekTonic's $15 (now $20 it seems) entry-level 'Fast Start' plan which gives me full root access to a Linux distribution of my choice with 3GB of space, 64MB of RAM and 50GB of transfer a month. A VDS gives all the benefits of a true dedicated server, but without the up-front costs. If I decide I need more memory, space, CPU or bandwidth, I just tack on a few extra dollars a month and I get it. I only pay for what I need. For instance, TekTonic offers an additional 3GB of storage for $5 extra a month. While signing up I didn't realize I could have chosen my OS distribution and so ended up with RedHat 9. The OS ate up almost 1GB right off the bat which didn't sit well with my plan to have lots of space for photos. I re-read mt sign-up emails and discovered that I could reset my OS anytime I wanted. I found the page that let me do this, selected Debian 'woody' from a pulldown menu, clicked OK, clicked OK to confirm that I knew this would wipe the previous distribution clean, and then 30 seconds later I had a fully functional Debian Linux server awaiting me with root access. Debian's small installation only took up around 200MB of space leaving me with over 2.5GB free to do with as I wished. I was very happy. Part of what makes going the VDS route so cheap is that you have to setup everything yourself. For me this was a positive and not a negative. The server came with Apache up and running, but as far as firewalls, SQL servers, pop servers, imap servers, webmail applications, email accounts, etc, I was on my own. I discovered all sorts of great tutorials describing how to setup and secure a Debian install and I diligently followed many of the steps to get where I am now. I learned about how
xinetdworks as a super-server and starts up the appropriate service (smtp, pop, imap) as it is needed, thereby freeing resources which would otherwise be tied up in idle daemons. I learned about Debian's kickass
apt-getutility to easily download, unpack and upgrade/install current and new software packages. And of course the
apt-cacheutility for keyword searching across all available packages and their descriptions. These both make installing new software very manageable and invaluable for keeping installed software up-to-date. I learned about Apache config, virtual servers, DNS propagation, webmail integration, SQL backups, cron config, ssh config, port scanning, security analysis, mail relay tests etc etc etc. I fully immersed myself and lived to write this weblog entry. I can now participate (if I at felt inclined) in the Slashdot Linux evangelism like a true veteran. Here is a shortlist of sites I found useful during this process:
- Web Host Guide - A high-level overview of terminology and available options to expect when you start shopping around for a hosting company. If you have little to no experience with having your website hosted somewhere, you should likely start here.
- WebHostingTalk - A large group of forums where you can find all sorts of discussions and critiques about all aspects of Web Hosting. An excellent place to search for any companies you are planning to give money to.
- debian.org - The main site itself and it's copius amount of documentation.
- HOWTO - Securing Debian - An excellent document describing all the fundamentals of making your Debian install secure. Gives pros and cons on different approaches and lots of suggestions on applications and config files to investigate further. This was my main starting point.
- Web Access Logs - Config, Rotation and Analysis - A detailed description of different approaches to logging along with sample scripts to help with rotation and analysis.
- Apache - Virtual Host Setup - If you'll have more than one domain pointing to your server, or you want to easily serve different content by sub-domain, this document provides examples of common Apache setups.
- Linux Services - A great tutorial to learn about what services are running on your server, what ports they are listening to and how to disable any you don't need.
- POP3 + stunnel = POP3s - How to setup SSH and stunnel with POP3 for a secure POP3 connection.
- Jay's Iptables Firewall - A handy wrapper to ease the configuration of a firewall.
- Sygate online port scan - A site offering to give your site a quick free port scan. See what it looks like from both sides of the scan.