Seleccionar página

Securizando la consola de administración en Apache ActiveMQ Artemis

por | Mar 17, 2022 | Apache ActiveMQ Artemis, Aprendizaje, AWS, Soluciones

A la hora de crear una máquina en CentOS 9 Stream con la última versión de Apache ActiveMQ / Artemis (en el momento de redactar este artículo, la versión 2.20.0), creamos el broker permitiendo el acceso anónimo :

[root@ip-172-31-3-105 ]# /usr/java/apache-artemis/bin/artemis create --user admin --password admin --allow-anonymous --force test-broker

Posteriormente, queríamos deshabilitar el acceso anónimo ya que la consola de administración queda abierto a cualquier invitado. Para ello, tuvimos que ir al directorio del broker creado que en nuestro caso es test-broker (/var/lib/artemis/test-broker), subir un nivel al directorio conf y modificar el fichero login.config comentado el módulo GuestLoginModule:

 /*
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
  * this work for additional information regarding copyright ownership.
  * The ASF licenses this file to You under the Apache License, Version 2.0
  * (the "License"); you may not use this file except in compliance with
  * the License.  You may obtain a copy of the License at
  *
  * http://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */

activemq {
   org.apache.activemq.artemis.spi.core.security.jaas.PropertiesLoginModule sufficient
       debug=true
       reload=true
       org.apache.activemq.jaas.properties.user="artemis-users.properties"
       org.apache.activemq.jaas.properties.role="artemis-roles.properties";
   
   /*
   org.apache.activemq.artemis.spi.core.security.jaas.GuestLoginModule sufficient
       debug=true
       org.apache.activemq.jaas.guest.user="admin"
       org.apache.activemq.jaas.guest.role="amq";
   */

};

Si además quieres cambiar la contraseña, deberás insertar en el fichero artemis-user.properties la contraseña hasheada y tienes esta directiva para obtenerla:

$ARTEMIS_HOME/bin/artemis mask --hash new_password

Si en vez de haber creado el broker permitiendo el acceso anónimo hubieramos restringido el acceso, teníamos que haber ejecutado el siguiente comando:

[root@ip-172-31-3-105 per-instance]# /usr/java/apache-artemis/bin/artemis create --user admin --password admin --require-login --force test-broker

De esta forma, vemos que en el fichero login.config ya no aparece el módulo GuestLoginModule.

¡ Hecho ! A reiniciar y fiesta.

0 comentarios

Enviar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Blog de Neodoo Microsystems
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles. Puedes encontrar más información en nuestra Política de privacidad y Política de cookies.