I actually do this kind of work on a freelance basis, using Linux and Zoneminder...
Assuming you're using these and getting cameras with a decent RTSP stream capability, say 720p@30fps, you don't need a HUGE amount of power but it's good to have lots of threading capability for many cameras at once as you describe. Plenty of RAM doesn't hurt either.
I built a client a very small machine (think "Slim Mini-ITX board in 2.5"-tall aluminum case with the footprint of a mousepad") with a Core i3-4130T, which is plenty enough power (2c/4t@2.9 GHz) in a 35W TDP. Storage of a lot of data is a problem if you're doing it all locally, as that case can't really handle full-sized HDDs, but less so if you only retain a few weeks' worth of footage and/or forward it to a NAS or something.