Distributed Server Monitoring Solution [closed]
Solution 1:
Well, you don't mention what OS you hope to run the monitoring system(s) on, so I'll assume that you don't have a preference. My favorite monitoring app is Nagios. Nagios doens't have the same level of eye candy that some of its competitors do, but what it lacks in UI, it makes up for in rock-solid stability and performance.
To your point about receiving notifications from behind firewalls, that's exactly what Nagios's passive host and service checks are for. They allow you to send alerts to Nagios from another application. That other application could be a home-grown script running on your windows servers or it could be another Nagios instance.
As you're doing research on this, you should check out wikipedia's page comparing a bunch of different monitoring systems (both free and commercial). I found it to be very helpful.