rsync
com os parâmetros --dry-run
e -v
relatarão os arquivos e diretórios, estejam eles presentes no lado remoto e também detectarão diferenças nos arquivos (por soma de verificação). Há muita documentação na rede sobre como fazer com que ele seja executado em SSH .
Se você preferir uma abordagem diferente, pode montar um diretório remoto localmente usando o FUSE / SSHfs e usar qualquer conjunto de ferramentas que funcionariam localmente.