Drush remote with switching shell users (sudo)
Set 'remote-user' => 'www-data' in your site alias, and Drush will exec the remote Drush as the www-data user.  ssh-copy-id www-data@server.example.com, and you'll be all ready to go.