Amazon Glacier: Great for Data Archiving or Last Resort Backups…But Nothing Else

As most people know, I’m a digital hoarder. I never delete anything. I have around 4.6 terabytes of data stored in my Google Drive alone. That’s cool and all but it becomes interesting when I start looking at backup solutions for my data.
One of the best solutions out there (in my opinion) for data archiving and data backup is yet another product from Amazon Web Services called Amazon Glacier.

Glacier let’s you store your data securely for a whopping $0.004/gb/month, however there are drawbacks. Since this service is meant for data archiving, it is stored in what’s known as “cold storage” meaning your data is not accessible on-demand. Instead, you (or more likely, your application) will tell Glacier that you would like to download a certain file from your “vault” (your archive) and then 3-5 hours later (unless you pay for expedited), your application will receive a notification that your file is ready for it to download and it has 24 hours to do so.

Another catch is that even though it will let you download the entirety of your vault as fast as you can download it, it will cost you. To get your data back out of Glacier, it costs an additional $0.0025-$0.03/gb. That may not sound like a lot but when we get to talking about terabytes or petabytes of data, it adds up quick.

To sum up, I still think that Amazon Glacier is a great product if used correctly. For instance, if by law your organization is mandated to keep archives for x number of years and you know the chances of actually having to dig them up one day is slim? Glacier is perfect. Or as a last resort backup, meaning you have two or three other backups you can try to extract your data from before you have to dig into Glacier, then yeah.

Freshbooks: Stop Creating Invoices in Microsoft Word

I’ve always been surprised of how many people have a business on the side either consulting or graphic design and the like and still use Microsoft Word to create and send their invoices. Stop it! There’s a better way! It’s called Freshbooks. I’ve used it for most of my business career and it’s quite honestly the best tool for the job.
With FreshBooks you can:

  • Create and send professional looking invoices
  • Have Freshbooks automatically generate and send recurring invoices
  • Track expenses and upload receipts
  • See when a client has or has not opened your invoice
  • Allow your clients to pay their invoices by credit card
  • Generate reports for profit and loss statements, expense reports, revenue by client, etc

I can’t say enough good things about Freshbooks, it is one of the best business tools that I’ve ever used! It starts at $15/month and you can try it free for 30 days. If you have to send out invoices every month, I highly recommend you check it out!

Desktops-as-a-Service: Amazon Workspaces

One of the technologies that I’ve been fascinated with for the last few years is Desktop-as-a-Service or DaaS. This is where like most servers are moving to the cloud, individual workstations are also moving to the cloud slowly but surely.
One of my favorite services for this comes from infrastructure giant, Amazon Web Services with their Amazon Workspaces product. From $25/desktop/month (I’ll be the first to admit that it’s a bit pricey) you can have Amazon host your Windows 7 desktops.

There’s several reasons why I’m excited about this:

  • Zero reliance on individual hardware. Instead of buying each employee a new computer every few years to refresh their hardware or dealing with hardware breakdowns, all your desktops are safe in the cloud. For local clients you can either A. Recycle old computers and configure them as thin clients or B. Buy new thin clients for a couple hundred dollars for each workstation.
  • Minimal usage on your local internet connection. I can’t believe that I’m saying this in 2017 but there are still some businesses that can only get low bandwidth internet connections because of their location such as a single T1 line. But if your desktops are in the cloud, the only thing that your local connection will be used for is viewing the remote session. This means activities such as web browsing, downloading files, backing up to a remote service, etc. are all performed using the DaaS provider’s internet connection, not your local connection.
  • Mobile ready. It is incredibly simple for your users to access their desktops on their personal devices. Whether it’s an iPad or their home computer, they just download the client app, login and they’re at their workstation from wherever they are.

Those are just some of the few reasons that I’m completely intrigued about this new trend. My hope is when services like Amazon Workspaces get more and more popular, the price per desktop will fall. Again, $25/desktop/month adds up pretty quickly if you have more than a handful of users but I can see it becoming more of a no-brainer solution if the cost were to drop down to $5-$10/desktop/month.

Invoice Plane: Open Source Accounting System

When I first started my business ten years ago, a lot of the tools that I used, I developed myself and that included my invoicing and billing system.
However, about five years in, it was getting to the point where I’d go to invoice a client, I’d have to fix or patch something first. So I eventually bit the bullet and signed up and paid for Freshbooks, which really is a great product but for one, it’s just another monthly bill you have to worry about paying and for two, if you’re just getting started in your business or just have a side business where you don’t need to send invoices or track expenses all that frequently, you may not want to pay that monthly fee.

In comes Invoice Plane. Think of it like the WordPress of accounting software. Invoice Plane is completely self-hosted so you can host it on your existing LAMP server or you can just do what I did and dedicate an old Raspberry Pi to hosting it (or an old computer you have laying around).

With Invoice Plane, you can:

  • Invoice and track clients (totals, outstanding balances, paid balances)
  • Track expenses, including receipts
  • Generate profit and loss statements
  • Accept credit card payments with third party merchants such as my favorite, Stripe (although you’ll need your host on the public internet for that one)

I’ll be the first one to admit that there are a ton of more elegant and more functional accounting systems out there, however, there are some systems that I still like to have in my complete control versus putting in the cloud and business financial data is one.

Check it out at: http://invoiceplane.com

3CX Phone System

Back in the day, when I first started with VOIP, I really wanted to go with some form of asterisk like Trixbox or Elastix but after months and months of trying, I just couldn’t get it stable enough for companies to be able to rely on.
Then a buddy of mine suggested that I look at a system called 3CX. At that time they were just on version 10 and it only ran on Windows but I tried it out anyway and it seemed pretty stable so we went ahead and bought a license for it (I believe it was $1,200 at that time).

Fast forward to today, about a month ago I had to rebuild a phone server for a non-profit in Bakersfield. Beforehand, I did a bit of research and found that 3CX was not only now on version 15, but they now supported Linux as a platform! Moreover, since this non-profit only had a handful of employees, I could get them on the free tier! Some of the more advanced features aren’t included in the free tier such as the fax server and it limits the number of simultaneous calls to eight but for this particular project, it was perfect!

Within an afternoon, I had wiped one of their old servers, installed Debian 9.0 on it, installed 3cx on it and was provisioning phones. I built it on a Friday but waited until the weekend to change over their SIP trunk provider (Nexvortex) just in case something went wrong.

That following Monday morning, I made sure to wake up extra early and clung to my phone all day knowing that there had to be something that was overlooked or left un-configured. 8:00? Nothing. 12:00? Nothing. 3:00? Nothing. I finally sent the director a text and asked how the phones were today? She just said, “Good, no problems.” Trust me, that’s a miracle!

It’s been up and running solid for a good month and a half except for one issue: if you’re running 3CX on a server with two NICs, be sure to only have one interface hooked to the network.

For the past few years, I had been using RingCentral for most of clients just because it was pretty much friction free but I’m thinking that for now on, I’ll use 3CX on top of Debian.

PFSense: My Go To Firewall for SMB

Given that I’m an open source junky, it should be no surprise that PFSense is without a doubt, my favorite firewall for both home and small business use.
During the last three years of my business, instead of buying a Cisco SMB or a Sonicwall firewall, what I’ve done is buy a refurbished Dell Poweredge server with typically around 16 gb of memory and usually a RAID array that has the usable capacity of 500 gb for around $200-$300 and popping PFSense on it.

Aside from it being completely open source, some of the things that I love about it are:

  • It being rock solid given its FreeBSD foundation
  • It’s bandwidth monitoring and rule-based policies
  • VPN built in with both OpenVPN and IPSec
  • Web caching built in with Squid
  • Web content filtering to block people from visiting unwanted or inappropriate websites
  • It’s on-demand virus scanning, blocking viruses and malware before it reaches the client’s computer
  • Limit traffic by country
  • A programmable intrusion detection system
  • VLANs completely built in

I could go on and on and on. There are literally hundreds of available plugins that extend the core of PFSense’s functionality. Knock on wood but I’ve had some PFSense servers running for years without issue. I know that a Poweredge server is a bit overkill for a firewall for a small business, but at that price, why the hell not?

Disk Imaging

I’m beginning to feel old here but I remember my first IT job at my high school. At that time, Windows XP had just came out and all the computers on campus were running Windows ME. My first year working there, we spent the whole winter break manually formatting the existing computer lab computers, installing Windows XP, installing all of the Windows Updates, installing Microsoft Office, Adobe Reader, Flash, installing all of the network printers, etc. Over and over and over, again all by hand (I still have that damned Windows XP product key memorized).
This was before I discovered imaging. Fast forward 15 years, I very rarely ever rebuild a system from scratch because I developed a new habit. Whether it be for my personal computers or computers for clients, I get the system setup perfectly the first time, create an image for that system and store it. This way, if that computer ever crashes or it becomes time for a client to buy new systems, I just pop start the image restore, come back half an hour to an hour later and vola! A perfect, clean system already configured.

When I started working at California State University, Bakersfield I started in the “installs” department. Our job was whenever departments would order new computers, we were tasked with getting them configured with the necessary software both for the departments standards as well as the campus standards. At that time, we used Symantec’s Ghost to create an image for each particular model of a system that the campus would buy so when we would get that model again, we would already have an image for it. However, by the time my tenure of working there completed, we had signed a contract with Dell where every six months or so, we would send a master image off to them and Dell would do the imaging for us prior to shipping. Because the campus was constantly buying new computers, we could do that.

For small businesses, however, they only upgrade their hardware once every few years, if that. So I highly recommend that when you do purchase new computers for your small business, create an image and try your best to have everybody on the same model and vendor of computer (even though there are utilities to create universal images to be able to create and restore images to and from different hardware).

My go to imaging software for both personal practice and for my IT clients has always been Acronis True Image because of its simplicity and price, it starts at just $50.

So, start using imaging! Your future self will thank you!