O Bacula tem um cliente Windows (que pode ser um cliente desktop ou servidor) que manipula backups muito bem. Ele utiliza o VSS para criar imagens quentes de tudo o que você deseja fazer backup (funciona bem com o Outlook AFAIK). Você pode definir os clientes da área de trabalho para usar portas diferentes do padrão (9101, eu acho?) E encaminhamento de porta solicitações de seu roteador WAN para cada computador individual. Algo com uma VPN seria preferível, mas nem sempre é possível.
Amanda e BackupPC usam compartilhamentos de samba para backup - não exatamente ideais, especialmente na WAN.
Além disso, Bacula tem um plugin bartpe para fazer recuperações bare-metal, algo que eu não encontrei para Amanda ou BackupPC. O problema é que as recuperações bare-metal serão difíceis (leia-se: não impossível) de fazer remotamente. Eu estou pensando que sua melhor aposta com isso é fazer com que os clientes inicializem no PXE onde você recupera os arquivos para o PC cliente, ou algo similar. De qualquer maneira, será difícil de configurar.
Atualmente eu uso o Bacula para fazer backup de 2 servidores, 8 clientes Windows e 3 clientes Linux, e funciona muito bem. Ele possui vários front-ends, com uma ferramenta gráfica baseada em python em breve.
As recuperações são feitas no diretório local de um servidor, então você pode copiar / enviar arquivos para os clientes que precisam deles.
Para o que você está procurando, acho que isso se encaixa no projeto.