Apache ActiveMQ ist ein Open-Source-Message-Broker, der in Java geschrieben und von Apache entwickelt wurde. Es ist einer der beliebtesten Nachrichtenbroker. Es bietet Leistung und Flexibilität, unterstützt Multiprotokoll- und Java-basierte Messaging-Server. Konnektivität von gängigen Programmiersprachen wie C, C++, Python, .Net usw.
Apache ActiveMQ ermöglicht Ihnen die Integration von Multi-Plattform-Anwendungen mithilfe des allgegenwärtigen AMPQ-Protokolls. Ein Austausch zwischen Webanwendungen mit STOMP über Websocket, Verwaltung von IoT-Geräten mit MQTT und Unterstützung der JMS-Infrastruktur und darüber hinaus.
In diesem Tutorial zeigen wir Ihnen, wie Sie den Apache ActiveMQ auf dem neuesten Debian Buster 10 installieren. Wir werden den ActiveMQ mit der offiziellen Binärdatei installieren, den ActiveMQ als Systemdienst einrichten und die Passwortauthentifizierung aktivieren.
Voraussetzungen
Für diese Anleitung verwenden wir das neueste Debian Buster 10 mit 2 GB RAM, 50 GB freiem Festplattenspeicher und 2 CPUs.
Was werden wir tun?
- Installieren Sie Java unter Debian 10
- Apache ActiveMQ herunterladen und installieren
- Apache ActiveMQ als Systemdienst einrichten
- Verschlüsseltes Passwort für die Webkonsole einrichten
- Testen
Schritt 1 – Installieren Sie Java unter Debian 10
Zuerst werden wir Java OpenJDK und JRE auf Debian Buster 10 installieren. Beide Pakete sind standardmäßig im Debian-Repository verfügbar.
Aktualisieren Sie alle verfügbaren Repositories auf dem Debian-System und installieren Sie Java OpenJDK und JRE mit dem folgenden apt-Befehl.
sudo apt update
sudo apt install default-jdk default-jre
Sobald die gesamte Installation abgeschlossen ist, überprüfen Sie die Java-Version mit dem folgenden Befehl.
java -version
Nachfolgend finden Sie die Antwort, die Sie erhalten.
openjdk version "11.0.7" 2020-04-14
OpenJDK Runtime Environment (build 11.0.7+10-post-Debian-3deb10u1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Debian-3deb10u1, mixed mode, sharing)
Als Ergebnis wurde das Java OpenJDK und JRE '11' auf dem Debian-Server installiert.
Schritt 2 – Apache ActiveMQ herunterladen und installieren
In diesem Schritt werden wir Apache ActiveMQ herunterladen und auf unserem Debian-System installieren.
Bevor wir fortfahren, erstellen wir mit dem folgenden Befehl einen neuen Systembenutzer „activemq“.
adduser --system --no-create-home --disabled-login --group activemq
Laden Sie nun die Apache ActiveMQ-Binärdatei herunter und extrahieren Sie die Datei mit dem folgenden Befehl.
wget --quiet http://www-us.apache.org/dist/activemq/5.15.12/apache-activemq-5.15.12-bin.tar.gz
tar -xf apache-activemq-5.15.12-bin.tar.gz
Verschieben Sie danach das Apache ActiveMQ-Verzeichnis nach „/opt/activemq“ und ändern Sie den Besitz des ActiveMQ-Verzeichnisses auf den Benutzer „activemq“.
mv apache-activemq-*/ /opt/activemq
sudo chown -R activemq:activemq /opt/activemq
Als Ergebnis wird Apache ActiveMQ auf dem Debian-System installiert.
Schritt 3 – Apache ActiveMQ als Systemd-Dienst einrichten
Nach dem Herunterladen und Installieren von Apache ActiveMQ richten wir ActiveMQ als Systemdienst ein.
Gehen Sie nun in das Verzeichnis ‚/etc/systemd/system‘ und erstellen Sie eine neue Servicedatei ‚activemq.service‘ mit dem vim-Editor.
cd /etc/systemd/system/
vim activemq.service
Fügen Sie die folgende Konfiguration ein.
[Unit]
Description=Apache ActiveMQ
After=network.target
[Service]
Type=forking
WorkingDirectory=/opt/activemq/bin
ExecStart=/opt/activemq/bin/activemq start
ExecStop=/opt/activemq/bin/activemq stop
Restart=on-abort
User=activemq
Group=activemq
[Install]
WantedBy=multi-user.target
Speichern und schließen.
Laden Sie als Nächstes den systemd-Manager neu, um die neue systemd-Dienstkonfiguration anzuwenden.
systemctl daemon-reload
Starten Sie nun den ActiveMQ-Server und fügen Sie ihn dem Systemstart hinzu.
systemctl start activemq
systemctl enable activemq
Als Ergebnis ist Apache ActiveMQ betriebsbereit, überprüfen Sie es mit dem folgenden Befehl.
systemctl status activemq
Unten sehen Sie das Ergebnis, das Sie erhalten.
Schritt 4 – Richten Sie ein verschlüsseltes Passwort für die Webkonsole ein
Standardmäßig ist die Authentifizierung der ActiveMQ-Webkonsole aktiviert, alle Benutzer und Passwörter für ActiveMQ werden in der 'jetty-realm.properties' als Klartext gespeichert. Für diesen Schritt ändern wir das Standardpasswort im Klartext durch ein verschlüsseltes Passwort.
Laden Sie zuerst die Jetty-Distribution herunter und extrahieren Sie sie.
wget --quiet https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-distribution/9.4.28.v20200408/jetty-distribution-9.4.28.v20200408.tar.gz
tar -xf jetty-distribution-*.tar.gz
Wechseln Sie nun in das Verzeichnis „jetty-distribution-*“.
cd jetty-distribution-*/
Führen Sie den folgenden Befehl aus, um Ihr Passwort zu generieren, und stellen Sie sicher, dass Sie das „Salz“ und das Passwort mit Ihrem eigenen ändern.
java -cp lib/jetty-util-9*.jar org.eclipse.jetty.util.security.Password salt password
Jetzt erhalten Sie die folgende Antwort.
2020-04-29 07:15:22.367:INFO::main: Logging initialized @194ms to org.eclipse.jetty.util.log.StdErrLog
mypassword
OBF:1uh41zly1x8g1vu11ym71ym71vv91x8e1zlk1ugm
MD5:34819d7beeabb9260a5c854bc85b3e44
CRYPT:myylAylKPNtmw
Kopieren Sie die Datei „CRYPT:myy.. .' verschlüsseltes Passwort zu notieren, da es für die ActiveMQ verwendet wird.
Gehen Sie nun in das ActiveMQ-Konfigurationsverzeichnis ‚/opt/activemq/conf‘ und bearbeiten Sie die Konfiguration ‚jetty-realm.properties‘ mit dem vim-Editor.
cd /opt/activemq/conf/
vim jetty-realm.properties
Ändern Sie das Standard-Admin-Passwort mit dem generierten verschlüsselten Passwort „CRYPT:myy...“ wie unten beschrieben.
admin: CRYPT:myylAylKPNtmw, admin
user: user, user
Speichern und schließen.
Starten Sie als Nächstes den Apache ActiveMQ-Dienst neu, um die neue Konfiguration zu übernehmen.
systemctl restart activemq
Damit ist die Konfiguration der ActiveMQ-Webkonsole mit dem verschlüsselten Passwort abgeschlossen.
Schritt 5 – Testen
Öffnen Sie nun Ihren Webbrowser und geben Sie die Server-IP-Adresse mit Port „8161“ ein.
http://serverip:8161/
Und Sie erhalten die Standardseite index.html der ActiveMQ-Webkonsole.
Fügen Sie als Nächstes den Pfad „/admin“ wie unten beschrieben zur URL hinzu.
http://serverip:8161/admin
Und Sie werden zur ActiveMQ-Authentifizierung aufgefordert.
Geben Sie den Standardbenutzer „admin“ mit Ihrem generierten Passwort oben ein und klicken Sie dann auf „OK“, um sich anzumelden.
Sobald Ihr Passwort korrekt ist, erhalten Sie das ActiveMQ-Dashboard wie unten gezeigt.
Als Ergebnis wurde die Installation und Konfiguration von Apache ActiveMQ auf Debian Buster 10 erfolgreich abgeschlossen.