you need a route53 DNS record that points to that public IP. Wazuh or the dashboard doesn't care what it's pointed at b/c it's going to make all calls to localhost:9200 for data from the indexer. You can use a built in/home rolled certificate, I use Lets Encrypt, mainly b/c of my other applications, and everything is on private subnets. But ACM will create a cert for you, and actually create the DNS text records for validation.
Don't consider wazuh as part of this issue, this is the same thing you would do to serve and lockdown any application.