Skip to content Skip to sidebar Skip to footer

RabbitMQ Service auf SSL umstellen

Wer die Nachrichten-orientierte Middleware RabbitMQ im Einsatz hat, kommt vielleicht in den gleichen Genuss wie ich. Die Datenkommunikation muss verschlüsselt werden, sprich auf SSL-Ebene gehoben werden.
Bei mir kommt das Thema durch die Installation einer OpenStack-Instanz.

Vorbereitung

Sofern die Kommunikation über das öffentlich verfügbare Netz läuft, kann ein Zertifikat von letsencrypt verwendet werden. Ich verwende hierfür die Python-App certbot.

certbot -d xxx.yyy.zzz

Sonst kannst du auch ein eigenes Zertifikat erstellen oder ein gekauftes verwenden.

RabbitMQ Konfiguration

Jetzt muss die RabbitMQ-Konfiguration noch erweitert werden. Dazu musst du (sofern nicht vorhanden die Datei: rabbitmq.config erstellen. Im Falle eines letsencrypt-Zertifikates sieht der Inhalt für die SSL-Konfiguration so aus:

[
  {ssl, [{versions, ['tlsv1.2', 'tlsv1.1']}]},
  {rabbit, [
   {tcp_listeners, [] },
   {ssl_listeners, [{"xxx.yyy.zzz", 5671}] },
   {ssl_options, [
    {cacertfile,"/etc/letsencrypt/live/xxx.yyy.zzz/fullchain.pem"},
    {certfile,"/etc/letsencrypt/live/xxx.yyy.zzz/cert.pem"},
    {keyfile,"/etc/letsencrypt/live/xxx.yyy.zzz/privkey.pem"},
    {verify,verify_peer},
    {fail_if_no_peer_cert,true}
   ]}
  ]}
].

Nach dem Neustart läuft RabbitMQ auf dem Port 5671 im SSL-Modus.

Kommentare anzeigenKommentare schließen

Hinterlasse ein Kommentar