Let's Encrypt works just fine in a virtual hosting setup using the http-01 or dns-01 challenges. In fact, all (shared/virtual hosting) users in my company automatically get certificates this way.
Certbot can use different plugins for validating the name and for installing the certificate.
You can configure HTTP-01 to work and use "certbot -a webroot -i nginx -w /path/to/whatever -d example.com -d www.example.com".
https://community.letsencrypt.org/t/solution-client-with-the...