Apache ActiveMQ è un broker di messaggi open source scritto in Java sviluppato da Apache. È uno dei broker di messaggi più popolari. Offre potenza e flessibilità, supporta server di messaggistica multiprotocollo e basato su java. Connettività dai principali linguaggi di programmazione come C, C++, Python, .Net, ecc.
Apache ActiveMQ consente di integrare applicazioni multipiattaforma utilizzando l'onnipresente protocollo AMPQ. Uno scambio tra applicazioni Web tramite STOMP tramite websocket, gestione di dispositivi IoT tramite MQTT e supporto dell'infrastruttura JMS e oltre.
In questo tutorial, ti mostreremo come installare Apache ActiveMQ sull'ultimo Debian Buster 10. Installeremo ActiveMQ utilizzando il file binario ufficiale, configureremo ActiveMQ come servizio di sistema e abiliteremo l'autenticazione della password.
Prerequisiti
Per questa guida, utilizzeremo l'ultimo Debian Buster 10 con 2 GB di RAM, 50 GB di spazio libero su disco e 2 CPU.
Cosa faremo?
- Installa Java su Debian 10
- Scarica e installa Apache ActiveMQ
- Configura Apache ActiveMQ come servizio Systemd
- Imposta password crittografata per console Web
- Test
Fase 1 - Installa Java su Debian 10
Innanzitutto, installeremo Java OpenJDK e JRE su Debian Buster 10. Entrambi i pacchetti sono disponibili per impostazione predefinita nel repository Debian.
Aggiorna tutti i repository disponibili sul sistema Debian e installa Java OpenJDK e JRE usando il comando apt di seguito.
sudo apt update
sudo apt install default-jdk default-jre
Una volta completata l'installazione, controlla la versione Java utilizzando il comando seguente.
java -version
Di seguito è riportata la risposta che riceverai.
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)
Di conseguenza, Java OpenJDK e JRE '11' sono stati installati sul server Debian.
Passaggio 2:scarica e installa Apache ActiveMQ
In questo passaggio, scaricheremo e installeremo Apache ActiveMQ sul nostro sistema Debian.
Prima di andare oltre, creiamo un nuovo utente di sistema 'activemq' usando il comando seguente.
adduser --system --no-create-home --disabled-login --group activemq
Ora scarica il file binario di Apache ActiveMQ ed estrai il file usando il seguente comando.
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
Successivamente, sposta la directory di Apache ActiveMQ in '/opt/activemq' e cambia la proprietà della directory di ActiveMQ nell'utente 'activemq'.
mv apache-activemq-*/ /opt/activemq
sudo chown -R activemq:activemq /opt/activemq
Di conseguenza, Apache ActiveMQ è installato sul sistema Debian.
Passaggio 3:configurazione di Apache ActiveMQ come servizio Systemd
Dopo aver scaricato e installato Apache ActiveMQ, configureremo ActiveMQ come servizio di sistema.
Ora vai nella directory '/etc/systemd/system' e crea un nuovo file di servizio 'activemq.service' usando l'editor vim.
cd /etc/systemd/system/
vim activemq.service
Incolla la seguente configurazione al suo interno.
[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
Salva e chiudi.
Quindi, ricarica systemd manager per applicare la nuova configurazione del servizio systemd.
systemctl daemon-reload
Ora avvia il server ActiveMQ e aggiungilo all'avvio del sistema.
systemctl start activemq
systemctl enable activemq
Di conseguenza, Apache ActiveMQ è attivo e funzionante, verificalo utilizzando il comando seguente.
systemctl status activemq
Di seguito è riportato il risultato che otterrai.
Passaggio 4 - Impostazione della password crittografata per la console Web
Per impostazione predefinita, l'autenticazione di ActiveMQ Web Console è abilitata, tutti gli utenti e le password per ActiveMQ sono archiviati in 'jetty-realm.properties' come testo normale. Per questo passaggio, cambieremo la password predefinita in testo normale con una password crittografata.
Innanzitutto, scarica la distribuzione del molo ed estrai.
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
Ora vai alla directory 'jetty-distribution-*'.
cd jetty-distribution-*/
Esegui il comando seguente per generare la tua password e assicurati di cambiare "sale" e password con la tua.
java -cp lib/jetty-util-9*.jar org.eclipse.jetty.util.security.Password salt password
Ora riceverai la seguente risposta.
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
Copia la 'CRYPT:myy.. .' password crittografata alla tua nota, perché verrà utilizzata per ActiveMQ.
Ora vai nella directory di configurazione di ActiveMQ '/opt/activemq/conf' e modifica la configurazione 'jetty-realm.properties' usando l'editor vim.
cd /opt/activemq/conf/
vim jetty-realm.properties
Modifica la password amministratore predefinita con la password crittografata generata 'CRYPT:myy...' come di seguito.
admin: CRYPT:myylAylKPNtmw, admin
user: user, user
Salva e chiudi.
Quindi, riavvia il servizio Apache ActiveMQ per applicare la nuova configurazione.
systemctl restart activemq
Di conseguenza, la configurazione della Console Web ActiveMQ con la password crittografata è stata completata.
Fase 5 - Test
Ora apri il tuo browser web e digita l'indirizzo IP del server con la porta '8161'.
http://serverip:8161/
E otterrai la pagina index.html predefinita della console Web ActiveMQ.
Quindi, aggiungi il percorso '/admin' sull'URL come di seguito.
http://serverip:8161/admin
E ti verrà richiesta l'autenticazione ActiveMQ.
Digita l'utente predefinito "admin" con la tua password generata in alto, quindi fai clic su "OK" per accedere.
Una volta che la tua password è corretta, otterrai la dashboard ActiveMQ come di seguito.
Di conseguenza, l'installazione e la configurazione di Apache ActiveMQ su Debian Buster 10 sono state completate con successo.