Se você tiver acesso ssh ao servidor, sugiro usar o rsync. Pode determinar quais arquivos precisam ser baixados, no todo ou em parte. Se a VPN falhar, você poderá reiniciá-la e, em seguida, executar novamente o comando rsync; ele vai pegar onde interrompido.
Se você precisar fazer o download sobre http, sugiro usar o wget. Ele pode continuar baixando arquivos baixados parcialmente com novas tentativas, mas não tenho certeza de como é bom determinar se um arquivo que ele já tem está atualizado.