# Config Files

This section shows how to configure and manage broker.

## Configuration file

Broker can be configured using XML configuration files. By default, broker is looking for configuration file at ${QPID_HOME}/etc/config.xml. The default configuration location can be overridden by specifying command line option -c <path to configuration> on broker start up.

## Management Configuration

Management interfaces can be configured in management section of broker configuration file. The example of the management section is provided below.

Management configuration

        <broker>
        ...
            <management>
                <enabled>true</enabled>
                <jmxport>
                    <registryServer>8999</registryServer>
                </jmxport>
                <ssl>
                    <enabled>false</enabled>
                    <keyStorePath>${conf}/qpid.keystore</keyStorePath>
                    <keyStorePassword>password</keyStorePassword>
                </ssl>
                <http>
                    <enabled>true</enabled>
                </http>
                <https>
                    <enabled>false</enabled>
                </https>
            </management>
        ...
        </broker>

## JMX Management Configuration

JMX management can be configured in management section of broker configuration file.

An enabled element in the management section is used to enable or disable the JMX interfaces. Setting it to true causes the broker to start the management plugin if such is available on the broker classpath.

JMX management requires two ports which can be configured in jmxport sub-section of management:

- RMI port (8999 by default) can be configured in an element jmxport/registryServer

- Connector port can be configured in an element jmxport/connectorServer. If configuration element connectorServer is not provided than the connector port defaults to 100 + registryServer port.

Enabling JMX Management and configuring JMX ports

    <broker>
    ...
    <management>
        <enabled>true</enabled>
        <jmxport>
            <registryServer>7999</registryServer>
            <connectorServer>7998</connectorServer>
        </jmxport>
    </management>
    ...
    </broker>

In the snippet above the following is configured:

Enable JMX management

Set RMI port to 7999

Set connector port to 7998

SSL can be configured to use on the connector port in the sub-section ssl of the management section. See for details.

In order to use SSL with JMX management an element ssl/enabled needs to be set to true.

## Management SSL key store configuration

This section describes how to configure the key store to use in SSL connections in both JMX and Web management interfaces.

The following examples demonstrates how to configure keystore for management

Management key store configuration

    <broker>
    ...
    <management>
    ...
        <ssl>
            <enabled>true</enabled>
            <keyStorePath>${conf}/qpid.keystore</keyStorePath>
            <keyStorePassword>password</keyStorePassword>
        </ssl>
    ...
    </management>
    ...
    </broker>

Enable SSL on JMX connector port only. This setting does not effect the web management interfaces.

Set path to the key store file

Set keystore password

## Web Management Configuration

Web management can be configured in management section of broker configuration file.

Sub-section http is used to enable web management on http port.

Sub-section https is used to enable web management on https port.

The following example shows how to configure http and https ports

Enabling web management

    <broker>
    ...
    <management>
    ...
        <http>
            <enabled>true</enabled>
            <port>9090</port>
            <basic-auth>false</basic-auth>
            <sasl-auth>true</sasl-auth>
            <session-timeout>600</session-timeout>
        </http>

        <https>
            <enabled>true</enabled>
            <port>9443</port>
            <sasl-auth>true</sasl-auth>
            <basic-auth>true</basic-auth>
        </https>
    ...
    </management>
    ...
    </broker>

Enable web management on http port. Default is true.

Set web management http port to 9090. Default is 8080.

Disable basic authentication on http port for REST services only. Default is false.

Enable SASL authentication on http port for REST services and web console. Default is true.

Set session timeout in seconds. Default is 15 minutes.

Enable web management on https port. Default is false.

Set web management https port to 9443. Default is 8443.

Enable SASL authentication on https port for REST services and web console. Default is true.

Enable basic authentication on https port for REST services only. Default is true.

Please configure the keystore to use with the https web management port. See for details.