No idea why this was downvoted. I don't have recent experience setting up something like this but 10 years ago BackupPC was the answer, and I guess it is still good.
I used backuppc at a place ohh, 8 or 9 years ago now and it was pretty rock solid then (90/10 mac/pc clients) to a linux server with some applescript to manage keys and such.
Does anyone have a different experience?