So I think there is some confusion here, you mentioned DNS and http-01 at the same time. There are two ways to validate your domain with ACME (Let’s Encrypt etc):
- Http Validation (your server presents a challenge response via public http)
- DNS validation (you set a particular TXT record in your DNS as a challenge response)
If you are working locally you can’t use http challenges, unless your local machine is accessible via http on the internet (Let’s Encrypt need to query your server from where they are).
DNS validation will allow you to get a certificate as long as you either are using a supported DNS provider (for automated DNS updates) or you use Certify DNS (CNAME delegation to a challenge response service).