Метод ListenAndServe из пакета net/http обслуживает только незашифрованный HTTP. Для HTTPS нужно использовать ListenAndServeTLS.
http.ListenAndServeTLS(":443", "cert.pem", "key.pem", mux)Для тонкой настройки (версии TLS, шифры) создают tls.Config и передают его в http.Server в поле TLSConfig, затем вызывают server.ListenAndServeTLS.