Pushing non-MQTT sensor data to AWS IoT from Home Assistant

I’m using the MQTT broker on AWS IoT and Node-RED (in the cloud) for dashboards and logic. Where ever possible I run Tasmota on my ESP8266 devices configured to directly communicate with Node-RED via AWS IoT. All that works fine.

Where Home Assistant comes in is for non-MQTT devices. I might have a ZigBee switch integrated with Home Assistant. I also have an integration on Home Assistant to pull solar panel data from my energy provider.

What I’d like to do is to 2 things:
a. Have an MQTT client running on Home Assistant and this MQTT client communicates securely with the AWS IoT MQTT broker; understand Mosquitto is an MQTT broker rather than a client. What would I have to install? How to configure?
b. Have the ability to talk to this MQTT client on Home Assistant from local sensors; e.g. push the solar energy data to the MQTT broker via the MQTT client on Home Assistant. Can this be done? Any sample code?