theckman wrote:
If you standardize your configuration methods and be sure to triple check, you should avoid having a SQL server listening on the wrong port. Even so, it's trivial to write a small script to make sure you only have important services listening on the public network.
Sure, but what about keeping it blocked from the public? Sure, there's good chance the SQL server will allow this, but no garuntee...
theckman wrote:
DDoS mitigation? If someone is attacking your system and causing congestion upstream, your software firewall isn't going to do anything.
Depends on where the congestion occurs. On the routers at Linode's datacenters? Nothing I can do about that. At my specific Linode? Firewall can help (though I realize it's not a sure thing).
theckman wrote:
And yes, firewalls can be used to limit access to trusted IP address. But simply blocking all ports (except the ones you have services on) isn't really beneficial to security. Those services that are listening are still listening...
It's more an issue of blocking ports for service daemons that don't let you listen only on localhost. Sure, it's better to not run any such service daemons, however in the (extremely) unlikely case I'd require such a service, I'd rather just be prepared.
There may also be instances where people want to allow stuff only on their internal network (e.g. to utilize XMPP internally for a business), however it's unlikely a Linode will be used for that.
Also, IIRC from my networking class, servers will respond to open ports with no services to say "no service here". While sending such a response would se a miniscule amount of bandwidth, it could add up quickly on a busy site.