Soluzione 1:
Nessuno ha menzionato sshfs ancora. Se sei su una moderna distribuzione Linux e hai accesso ssh all'host remoto, è semplice come:
sshfs [email protected]:/remote/directory /local/directory
Le prestazioni sono abbastanza accettabili (ma non così veloci come una sincronizzazione in streaming come rsync se hai bisogno dell'intera directory).
Soluzione 2:
NFS è intrinsecamente insicuro. Sarebbe una pessima scelta per la connessione a Internet.
Mi piace il post che menziona rsync. Invece di usare cron per avviare il trasferimento, spero che tu possa semplicemente eseguire il lavoro rsync dal tuo codice che gestisce il caricamento del file.
Al termine del caricamento, rsync il file sul loro server, fatto.
Dovresti impostare una connessione sicura al loro server per il trasferimento, presumo.
Se lo desideri, puoi inserire i file in arrivo in un elenco per il trasferimento, rimuovendo i nomi dopo che la copia è andata a buon fine e concederti una funzionalità di failover, nel caso succeda qualcosa alla connessione.
Come qualcun altro ha già sottolineato, rsync è progettato per gestire gruppi di file o una gerarchia (grazie, controllo ortografico), quindi non sarebbe così difficile da realizzare.