Discussion:
[mcollective-users] MCollective server cannot connect to ActiveMQ broker
Isabell Cowan
2017-01-31 01:35:23 UTC
Permalink
I've been trying all do to set up MCollective on my puppet cluster. No
matter what I do, I can't seem to get the MCollective server to connect.
The MCollective server(s) are running mostly on Ubnutu Xenial. The
ActiveMQ broker (5.14.3) is running on Debian Stretch. I'm running puppet
4.x on all nodes. I've used every transport connector I can thing if, and
they all fail to connect. Let me dump some log files at you.

In mcollective.log I'm getting `Connection reset by peer`:

I, [2017-01-27T15:43:59.869501 #18729] INFO -- : activemq.rb:139:in
`on_ssl_connecting' Establishing SSL session with
stomp+ssl://***@broker.example.com:61614
E, [2017-01-27T15:44:00.070995 #18729] ERROR -- : activemq.rb:149:in
`on_ssl_connectfail' SSL session creation with
stomp+ssl://***@broker.example.com:61614 failed: Connection reset
by peer - SSL_connect
I, [2017-01-27T15:44:00.071371 #18729] INFO -- : activemq.rb:129:in
`on_connectfail' TCP Connection to
stomp+ssl://***@broker.example.com:61614 failed on attempt 24


Oddly enough, in the ActiveMQ log, I also seem to be getting `Connection
reset by peer`:

ERROR | Could not accept connection from null : {}
java.io.IOException: java.io.IOException: Connection reset by peer
at org.apache.activemq.transport.nio.NIOSSLTransport.initializeStreams(
NIOSSLTransport.java:188)[activemq-client.jar:]
at org.apache.activemq.transport.stomp.StompNIOSSLTransport.
initializeStreams(StompNIOSSLTransport.java:57)[activemq-stomp.jar:]
at org.apache.activemq.transport.tcp.TcpTransport.connect(TcpTransport.java
:543)[activemq-client.jar:]
at org.apache.activemq.transport.nio.NIOTransport.doStart(NIOTransport.java
:174)[activemq-client.jar:]
at org.apache.activemq.transport.nio.NIOSSLTransport.doStart(
NIOSSLTransport.java:462)[activemq-client.jar:]
at org.apache.activemq.util.ServiceSupport.start(ServiceSupport.java:55)[
activemq-client.jar:]
at org.apache.activemq.transport.TransportFilter.start(TransportFilter.java
:64)[activemq-client.jar:]
at org.apache.activemq.transport.stomp.StompTransportFilter.start(
StompTransportFilter.java:65)[activemq-stomp.jar:]
at org.apache.activemq.transport.AbstractInactivityMonitor.start(
AbstractInactivityMonitor.java:169)[activemq-client.jar:]
at org.apache.activemq.transport.TransportFilter.start(TransportFilter.java
:64)[activemq-client.jar:]
at org.apache.activemq.broker.TransportConnection.start(TransportConnection
.java:1072)[activemq-broker.jar:]
at org.apache.activemq.broker.TransportConnector$1$1.run(TransportConnector
.java:218)[activemq-broker.jar:]
at java.lang.Thread.run(Thread.java:745)[:1.8.0_111]

So they're both resetting the connection. Huh. Before you ask, no: there
are no iptables rules, and yes: there is a route between the two nodes.
Let's take a peak at `lsof -i` just to be sure and then I'll throw some
config files at you.

java 20833 activemq 84u IPv6 53552 0t0 TCP *:61614 (LISTEN)

activemq.xml:

<!DOCTYPE activemq [
<!ENTITY keyStores SYSTEM "keyStores.xml">
]>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:amq="http://activemq.apache.org/schema/core"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://activemq.apache.org/schema/core
http://activemq.apache.org/schema/core/activemq-core.xsd">
<bean class=
"org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
<broker xmlns="http://activemq.apache.org/schema/core"
useJmx="false"
brokerName="broker"
dataDirectory="${activemq.base}/data">
<persistenceAdapter>
<kahaDB directory="${activemq.base}/data/kahadb"/>
</persistenceAdapter>
<sslContext>
&keyStores;
</sslContext>
<transportConnectors>
<transportConnector
name="stomp+nio"
uri=
"stomp+nio+ssl://0.0.0.0:61614?needClientAuth=true&amp;transport.enabledProtocols=TLSv1,TLSv1.1,TLSv1.2"
/>
</transportConnectors>
<plugins>
<simpleAuthenticationPlugin>
<users>
<authenticationUser username="mcollective" password="password"
groups="mcollective,everyone"/>
<authenticationUser username="admin" password="password" groups=
"mcollective,admins,everyone"/>
</users>
</simpleAuthenticationPlugin>
<authorizationPlugin>
<map>
<authorizationMap>
<authorizationEntries>
<authorizationEntry queue=">" write="admins" read="admins"
admin="admins" />
<authorizationEntry topic=">" write="admins" read="admins"
admin="admins" />
<authorizationEntry topic="mcollective.>"
write="mcollective" read="mcollective" admin="mcollective" />
<authorizationEntry queue="mcollective.>"
write="mcollective" read="mcollective" admin="mcollective" />
<authorizationEntry topic="ActiveMQ.Advisory.>"
read="everyone" write="everyone" admin="everyone"/>
</authorizationEntries>
</authorizationMap>
</map>
</authorizationPlugin>
</plugins>
</broker>
</beans>

keyStores.xml:

<sslContext
keyStore="/etc/activemq/keystore.jks"
keyStorePassword="password"
trustStore="/etc/activemq/truststore.jks"
trustStorePassword="password" />

mcollective/server.cfg:

connector = activemq
direct_addressing = 1
plugin.activemq.pool.size = 1
plugin.activemq.pool.1.host = broker.example.com
plugin.activemq.pool.1.port = 61614
plugin.activemq.pool.1.user = mcollective
plugin.activemq.pool.1.password = password
plugin.activemq.pool.1.ssl = 1
plugin.activemq.pool.1.ssl.ca = /etc/puppetlabs/puppet/ssl/certs/ca.pem
plugin.activemq.pool.1.ssl.cert = /etc/puppetlabs/puppet/ssl/certs/mail.
example.com.pem
plugin.activemq.pool.1.ssl.key = /etc/puppetlabs/puppet/ssl/private_keys/
mail.example.com.pem
plugin.activemq.pool.1.ssl.fallback = 0
securityprovider = ssl
plugin.ssl_client_cert_dir = /etc/puppetlabs/mcollective/clients
plugin.ssl_server_private = /etc/puppetlabs/mcollective/server_private.pem
plugin.ssl_server_public = /etc/puppetlabs/mcollective/server_public.pem
identity = mail.example.com
factsource = yaml
plugin.yaml = /etc/puppetlabs/mcollective/facts.yaml
classesfile = /var/lib/puppet/state/classes.txt
collectives = mcollective
main_collective = mcollective
registerinterval = 600
rpcaudit = 1
rpcauditprovider = logfile
plugin.rpcaudit.logfile = /var/log/mcollective-audit.log
logger_type = file
loglevel = debug
logfile = /var/log/mcollective.log
keeplogs = 5
max_log_size = 2097152
logfacility = user
libdir = /usr/share/mcollective/plugins
daemonize = 1

The keys/certs in keystore.jks and truststore.jks are correct and so is the
password. The shared keys and certs are also available. So lets try
connecting with `openssl`:

***@mail:/etc/puppetlabs/puppet/ssl# openssl s_client -connect
broker.example.com:61614 -CAfile certs/ca.pem -cert
certs/mail.example.com.pem -key private_keys/mail.example.com.pem
CONNECTED(00000003)
write:errno=104
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 0 bytes and written 305 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
Protocol : TLSv1.2
Cipher : 0000
Session-ID:
Session-ID-ctx:
Master-Key:
Key-Arg : None
PSK identity: None
PSK identity hint: None
SRP username: None
Start Time: 1485554633
Timeout : 300 (sec)
Verify return code: 0 (ok)
---

I'm not exactly sure how to interpret this openssl output, maybe someone
else knows.

Any new good guesses would be helpful, I'm stuck.
--
---
You received this message because you are subscribed to the Google Groups "mcollective-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mcollective-users+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
michael.smith
2017-01-31 01:41:55 UTC
Permalink
The errno=104 suggests you need to use the servername option, as in
`openssl s_client -servername mail.example.com ...`. The mcollective server
behavior does suggest there's something fishy about the SSL setup, but I
don't see it immediately.
--
---
You received this message because you are subscribed to the Google Groups "mcollective-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mcollective-users+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Isabell Cowan
2017-01-31 01:46:27 UTC
Permalink
I added -servername mail.example.com, still write:errno=104
Post by michael.smith
The errno=104 suggests you need to use the servername option, as in
`openssl s_client -servername mail.example.com ...`. The mcollective
server behavior does suggest there's something fishy about the SSL setup,
but I don't see it immediately.
--
---
You received this message because you are subscribed to the Google Groups "mcollective-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mcollective-users+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
R.I. Pienaar
2017-01-31 07:10:21 UTC
Permalink
Hmm I don't see the issue either. You mention Puppet 4 though. If you're using the AIO packages I suggest you try choria.io to install mcollective for you
Post by Isabell Cowan
I added -servername mail.example.com, still write:errno=104
The errno=104 suggests you need to use the servername option, as in `openssl s_client -servername mail.example.com ...`. The mcollective server behavior does suggest there's something fishy about the SSL setup, but I don't see it immediately.
--
---
You received this message because you are subscribed to the Google Groups "mcollective-users" group.
For more options, visit https://groups.google.com/d/optout.
--
---
You received this message because you are subscribed to the Google Groups "mcollective-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mcollective-users+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Christopher Wood
2017-01-31 14:48:06 UTC
Permalink
Certs are important, it's time to make sure that clocks are correct on all hosts and client/middleware/server all have certs that each other can validate.

If your certs are fine and you are still seeing "Connection reset by peer". It's time to crank up debug logs everywhere (mcollective server and activemq middleware and mcollective client) to see what's going on.

If you don't get a useful answer from the debug logs then it's time to capture packets (tcpdump) and look at the initial ssl handshake.

However, from somebody who has been there, save yourself a bunch of pain and use this thing for your initial setup:

http://choria.io/
I've been trying all do to set up MCollective on my puppet cluster.  No
matter what I do, I can't seem to get the MCollective server to connect.
 The MCollective server(s) are running mostly on Ubnutu Xenial.  The
ActiveMQ broker (5.14.3) is running on Debian Stretch.  I'm running puppet
4.x on all nodes. I've used every transport connector I can thing if, and
they all fail to connect.  Let me dump some log files at you.
I, [2017-01-27T15:43:59.869501 #18729]  INFO -- : activemq.rb:139:in
`on_ssl_connecting' Establishing SSL session with
E, [2017-01-27T15:44:00.070995 #18729] ERROR -- : activemq.rb:149:in
`on_ssl_connectfail' SSL session creation with
by peer - SSL_connect
I, [2017-01-27T15:44:00.071371 #18729]  INFO -- : activemq.rb:129:in
`on_connectfail' TCP Connection to
Oddly enough, in the ActiveMQ log, I also seem to be getting `Connection
ERROR | Could not accept connection from null : {}
java.io.IOException: java.io.IOException: Connection reset by peer
 at
org.apache.activemq.transport.nio.NIOSSLTransport.initializeStreams(NIOSSLTransport.java:188)[activemq-client.jar:]
 at
org.apache.activemq.transport.stomp.StompNIOSSLTransport.initializeStreams(StompNIOSSLTransport.java:57)[activemq-stomp.jar:]
 at
org.apache.activemq.transport.tcp.TcpTransport.connect(TcpTransport.java:543)[activemq-client.jar:]
 at
org.apache.activemq.transport.nio.NIOTransport.doStart(NIOTransport.java:174)[activemq-client.jar:]
 at
org.apache.activemq.transport.nio.NIOSSLTransport.doStart(NIOSSLTransport.java:462)[activemq-client.jar:]
 at
org.apache.activemq.util.ServiceSupport.start(ServiceSupport.java:55)[activemq-client.jar:]
 at
org.apache.activemq.transport.TransportFilter.start(TransportFilter.java:64)[activemq-client.jar:]
 at
org.apache.activemq.transport.stomp.StompTransportFilter.start(StompTransportFilter.java:65)[activemq-stomp.jar:]
 at
org.apache.activemq.transport.AbstractInactivityMonitor.start(AbstractInactivityMonitor.java:169)[activemq-client.jar:]
 at
org.apache.activemq.transport.TransportFilter.start(TransportFilter.java:64)[activemq-client.jar:]
 at
org.apache.activemq.broker.TransportConnection.start(TransportConnection.java:1072)[activemq-broker.jar:]
 at
org.apache.activemq.broker.TransportConnector$1$1.run(TransportConnector.java:218)[activemq-broker.jar:]
 at java.lang.Thread.run(Thread.java:745)[:1.8.0_111]
So they're both resetting the connection.  Huh.  Before you ask, no: there
are no iptables rules, and yes: there is a route between the two nodes.
 Let's take a peak at `lsof -i` just to be sure and then I'll throw some
config files at you.
java    20833 activemq   84u  IPv6  53552      0t0  TCP *:61614 (LISTEN)
<!DOCTYPE activemq [
  <!ENTITY keyStores SYSTEM "keyStores.xml">
]>
<beans
  xmlns="http://www.springframework.org/schema/beans"
  xmlns:amq="http://activemq.apache.org/schema/core"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
  http://activemq.apache.org/schema/core
http://activemq.apache.org/schema/core/activemq-core.xsd">
    <bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
    <broker xmlns="http://activemq.apache.org/schema/core"
            useJmx="false"
            brokerName="broker"
            dataDirectory="${activemq.base}/data">
      <persistenceAdapter>
        <kahaDB directory="${activemq.base}/data/kahadb"/>
      </persistenceAdapter>
      <sslContext>
        &keyStores;
      </sslContext>
      <transportConnectors>
        <transportConnector
          name="stomp+nio"
         
uri="stomp+nio+ssl://0.0.0.0:61614?needClientAuth=true&amp;transport.enabledProtocols=TLSv1,TLSv1.1,TLSv1.2"/>
      </transportConnectors>
      <plugins>
        <simpleAuthenticationPlugin>
          <users>
            <authenticationUser username="mcollective"
password="password" groups="mcollective,everyone"/>
            <authenticationUser username="admin" password="password"
groups="mcollective,admins,everyone"/>
          </users>
        </simpleAuthenticationPlugin>
        <authorizationPlugin>
          <map>
            <authorizationMap>
              <authorizationEntries>
                <authorizationEntry queue=">" write="admins"
read="admins" admin="admins" />
                <authorizationEntry topic=">" write="admins"
read="admins" admin="admins" />
                <authorizationEntry topic="mcollective.>"
write="mcollective" read="mcollective" admin="mcollective" />
                <authorizationEntry queue="mcollective.>"
write="mcollective" read="mcollective" admin="mcollective" />
                <authorizationEntry topic="ActiveMQ.Advisory.>"
read="everyone" write="everyone" admin="everyone"/>
              </authorizationEntries>
            </authorizationMap>
          </map>
        </authorizationPlugin>
      </plugins>
    </broker>
</beans>
<sslContext
    keyStore="/etc/activemq/keystore.jks"
    keyStorePassword="password"
    trustStore="/etc/activemq/truststore.jks"
    trustStorePassword="password" />
connector = activemq
direct_addressing = 1
plugin.activemq.pool.size = 1
plugin.activemq.pool.1.host = broker.example.com
plugin.activemq.pool.1.port = 61614
plugin.activemq.pool.1.user = mcollective
plugin.activemq.pool.1.password = password
plugin.activemq.pool.1.ssl = 1
plugin.activemq.pool.1.ssl.ca = /etc/puppetlabs/puppet/ssl/certs/ca.pem
plugin.activemq.pool.1.ssl.cert =
/etc/puppetlabs/puppet/ssl/certs/mail.example.com.pem
plugin.activemq.pool.1.ssl.key =
/etc/puppetlabs/puppet/ssl/private_keys/mail.example.com.pem
plugin.activemq.pool.1.ssl.fallback = 0
securityprovider = ssl
plugin.ssl_client_cert_dir = /etc/puppetlabs/mcollective/clients
plugin.ssl_server_private =
/etc/puppetlabs/mcollective/server_private.pem
plugin.ssl_server_public = /etc/puppetlabs/mcollective/server_public.pem
identity = mail.example.com
factsource = yaml
plugin.yaml = /etc/puppetlabs/mcollective/facts.yaml
classesfile = /var/lib/puppet/state/classes.txt
collectives = mcollective
main_collective = mcollective
registerinterval = 600
rpcaudit = 1
rpcauditprovider = logfile
plugin.rpcaudit.logfile = /var/log/mcollective-audit.log
logger_type = file
loglevel = debug
logfile = /var/log/mcollective.log
keeplogs = 5
max_log_size = 2097152
logfacility = user
libdir = /usr/share/mcollective/plugins
daemonize = 1
The keys/certs in keystore.jks and truststore.jks are correct and so is
the password.  The shared keys and certs are also available.  So lets try
broker.example.com:61614 -CAfile certs/ca.pem -cert
certs/mail.example.com.pem -key private_keys/mail.example.com.pem
CONNECTED(00000003)
write:errno=104
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 0 bytes and written 305 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
    Protocol  : TLSv1.2
    Cipher    : 0000
    Key-Arg   : None
    PSK identity: None
    PSK identity hint: None
    SRP username: None
    Start Time: 1485554633
    Timeout   : 300 (sec)
    Verify return code: 0 (ok)
---
I'm not exactly sure how to interpret this openssl output, maybe someone
else knows.
Any new good guesses would be helpful, I'm stuck.
--
---
You received this message because you are subscribed to the Google Groups
"mcollective-users" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit [2]https://groups.google.com/d/optout.
References
Visible links
2. https://groups.google.com/d/optout
--
---
You received this message because you are subscribed to the Google Groups "mcollective-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mcollective-users+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Isabell Cowan
2017-01-31 14:54:14 UTC
Permalink
I'll looking to choria.io, but I've got the NTP reference implementation
running on all my nodes.
Post by Christopher Wood
Certs are important, it's time to make sure that clocks are correct on all
hosts and client/middleware/server all have certs that each other can
validate.
If your certs are fine and you are still seeing "Connection reset by
peer". It's time to crank up debug logs everywhere (mcollective server and
activemq middleware and mcollective client) to see what's going on.
If you don't get a useful answer from the debug logs then it's time to
capture packets (tcpdump) and look at the initial ssl handshake.
However, from somebody who has been there, save yourself a bunch of pain
http://choria.io/
Post by Isabell Cowan
I've been trying all do to set up MCollective on my puppet cluster.
No
Post by Isabell Cowan
matter what I do, I can't seem to get the MCollective server to
connect.
Post by Isabell Cowan
The MCollective server(s) are running mostly on Ubnutu Xenial. The
ActiveMQ broker (5.14.3) is running on Debian Stretch. I'm running
puppet
Post by Isabell Cowan
4.x on all nodes. I've used every transport connector I can thing if,
and
Post by Isabell Cowan
they all fail to connect. Let me dump some log files at you.
activemq.rb:139:in
Post by Isabell Cowan
`on_ssl_connecting' Establishing SSL session with
activemq.rb:149:in
Post by Isabell Cowan
`on_ssl_connectfail' SSL session creation with
reset
Post by Isabell Cowan
by peer - SSL_connect
activemq.rb:129:in
Post by Isabell Cowan
`on_connectfail' TCP Connection to
24
Post by Isabell Cowan
Oddly enough, in the ActiveMQ log, I also seem to be getting
`Connection
Post by Isabell Cowan
ERROR | Could not accept connection from null : {}
java.io.IOException: java.io.IOException: Connection reset by peer
at
org.apache.activemq.transport.nio.NIOSSLTransport.initializeStreams(NIOSSLTransport.java:188)[activemq-client.jar:]
Post by Isabell Cowan
at
org.apache.activemq.transport.stomp.StompNIOSSLTransport.initializeStreams(StompNIOSSLTransport.java:57)[activemq-stomp.jar:]
Post by Isabell Cowan
at
org.apache.activemq.transport.tcp.TcpTransport.connect(TcpTransport.java:543)[activemq-client.jar:]
Post by Isabell Cowan
at
org.apache.activemq.transport.nio.NIOTransport.doStart(NIOTransport.java:174)[activemq-client.jar:]
Post by Isabell Cowan
at
org.apache.activemq.transport.nio.NIOSSLTransport.doStart(NIOSSLTransport.java:462)[activemq-client.jar:]
Post by Isabell Cowan
at
org.apache.activemq.util.ServiceSupport.start(ServiceSupport.java:55)[activemq-client.jar:]
Post by Isabell Cowan
at
org.apache.activemq.transport.TransportFilter.start(TransportFilter.java:64)[activemq-client.jar:]
Post by Isabell Cowan
at
org.apache.activemq.transport.stomp.StompTransportFilter.start(StompTransportFilter.java:65)[activemq-stomp.jar:]
Post by Isabell Cowan
at
org.apache.activemq.transport.AbstractInactivityMonitor.start(AbstractInactivityMonitor.java:169)[activemq-client.jar:]
Post by Isabell Cowan
at
org.apache.activemq.transport.TransportFilter.start(TransportFilter.java:64)[activemq-client.jar:]
Post by Isabell Cowan
at
org.apache.activemq.broker.TransportConnection.start(TransportConnection.java:1072)[activemq-broker.jar:]
Post by Isabell Cowan
at
org.apache.activemq.broker.TransportConnector$1$1.run(TransportConnector.java:218)[activemq-broker.jar:]
Post by Isabell Cowan
at java.lang.Thread.run(Thread.java:745)[:1.8.0_111]
there
Post by Isabell Cowan
are no iptables rules, and yes: there is a route between the two
nodes.
Post by Isabell Cowan
Let's take a peak at `lsof -i` just to be sure and then I'll throw
some
Post by Isabell Cowan
config files at you.
java 20833 activemq 84u IPv6 53552 0t0 TCP *:61614
(LISTEN)
Post by Isabell Cowan
<!DOCTYPE activemq [
<!ENTITY keyStores SYSTEM "keyStores.xml">
]>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:amq="http://activemq.apache.org/schema/core"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://activemq.apache.org/schema/core
http://activemq.apache.org/schema/core/activemq-core.xsd">
<bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
Post by Isabell Cowan
<broker xmlns="http://activemq.apache.org/schema/core"
useJmx="false"
brokerName="broker"
dataDirectory="${activemq.base}/data">
<persistenceAdapter>
<kahaDB directory="${activemq.base}/data/kahadb"/>
</persistenceAdapter>
<sslContext>
&keyStores;
</sslContext>
<transportConnectors>
<transportConnector
name="stomp+nio"
uri="stomp+nio+ssl://
0.0.0.0:61614?needClientAuth=true&amp;transport.enabledProtocols=TLSv1,TLSv1.1,TLSv1.2"/>
Post by Isabell Cowan
</transportConnectors>
<plugins>
<simpleAuthenticationPlugin>
<users>
<authenticationUser username="mcollective"
password="password" groups="mcollective,everyone"/>
<authenticationUser username="admin"
password="password"
Post by Isabell Cowan
groups="mcollective,admins,everyone"/>
</users>
</simpleAuthenticationPlugin>
<authorizationPlugin>
<map>
<authorizationMap>
<authorizationEntries>
<authorizationEntry queue=">" write="admins"
read="admins" admin="admins" />
<authorizationEntry topic=">" write="admins"
read="admins" admin="admins" />
<authorizationEntry topic="mcollective.>"
write="mcollective" read="mcollective" admin="mcollective" />
<authorizationEntry queue="mcollective.>"
write="mcollective" read="mcollective" admin="mcollective" />
<authorizationEntry topic="ActiveMQ.Advisory.>"
read="everyone" write="everyone" admin="everyone"/>
</authorizationEntries>
</authorizationMap>
</map>
</authorizationPlugin>
</plugins>
</broker>
</beans>
<sslContext
keyStore="/etc/activemq/keystore.jks"
keyStorePassword="password"
trustStore="/etc/activemq/truststore.jks"
trustStorePassword="password" />
connector = activemq
direct_addressing = 1
plugin.activemq.pool.size = 1
plugin.activemq.pool.1.host = broker.example.com
plugin.activemq.pool.1.port = 61614
plugin.activemq.pool.1.user = mcollective
plugin.activemq.pool.1.password = password
plugin.activemq.pool.1.ssl = 1
plugin.activemq.pool.1.ssl.ca =
/etc/puppetlabs/puppet/ssl/certs/ca.pem
Post by Isabell Cowan
plugin.activemq.pool.1.ssl.cert =
/etc/puppetlabs/puppet/ssl/certs/mail.example.com.pem
plugin.activemq.pool.1.ssl.key =
/etc/puppetlabs/puppet/ssl/private_keys/mail.example.com.pem
plugin.activemq.pool.1.ssl.fallback = 0
securityprovider = ssl
plugin.ssl_client_cert_dir = /etc/puppetlabs/mcollective/clients
plugin.ssl_server_private =
/etc/puppetlabs/mcollective/server_private.pem
plugin.ssl_server_public =
/etc/puppetlabs/mcollective/server_public.pem
Post by Isabell Cowan
identity = mail.example.com
factsource = yaml
plugin.yaml = /etc/puppetlabs/mcollective/facts.yaml
classesfile = /var/lib/puppet/state/classes.txt
collectives = mcollective
main_collective = mcollective
registerinterval = 600
rpcaudit = 1
rpcauditprovider = logfile
plugin.rpcaudit.logfile = /var/log/mcollective-audit.log
logger_type = file
loglevel = debug
logfile = /var/log/mcollective.log
keeplogs = 5
max_log_size = 2097152
logfacility = user
libdir = /usr/share/mcollective/plugins
daemonize = 1
The keys/certs in keystore.jks and truststore.jks are correct and so
is
Post by Isabell Cowan
the password. The shared keys and certs are also available. So lets
try
Post by Isabell Cowan
broker.example.com:61614 -CAfile certs/ca.pem -cert
certs/mail.example.com.pem -key private_keys/mail.example.com.pem
CONNECTED(00000003)
write:errno=104
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 0 bytes and written 305 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
Protocol : TLSv1.2
Cipher : 0000
Key-Arg : None
PSK identity: None
PSK identity hint: None
SRP username: None
Start Time: 1485554633
Timeout : 300 (sec)
Verify return code: 0 (ok)
---
I'm not exactly sure how to interpret this openssl output, maybe
someone
Post by Isabell Cowan
else knows.
Any new good guesses would be helpful, I'm stuck.
--
---
You received this message because you are subscribed to the Google
Groups
Post by Isabell Cowan
"mcollective-users" group.
To unsubscribe from this group and stop receiving emails from it,
send an
<javascript:>.
Post by Isabell Cowan
For more options, visit [2]https://groups.google.com/d/optout.
References
Visible links
<javascript:>
Post by Isabell Cowan
2. https://groups.google.com/d/optout
--
---
You received this message because you are subscribed to the Google Groups "mcollective-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mcollective-users+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Loading...