Env:
graylog 2.0.2 / elasticsearch 2.3.2
RHEL 6.8
So I have followed the graylog https setup here
http://docs.graylog.org/en/latest/pages/configuration/https.html and
followed along to create a keystore, creating a self-signed cert and
converting it to PKCS5 and exporting it out to a cert and key in use for
graylog-server.
However, the issue faced is that the final key step is generating a file
which looks invalid, presumably because the interim pkcs5 key step is not
working. Can someone point me to what mistake I'm making and how to fix it?
On side topic, I'm using haproxy load balancer with ssl pass through.
((using it with ssl termination on load balancer failed as Firefox, Chrome
etc. all complain about mixed content and I get the "
Server currently unavailable
We are experiencing problems connecting to the Graylog server running on...
"
error
So I think I can only get proper ssl working if I do ssl end to end via ssl
passthrough on load balancer.
))
Here's the log of steps followed -
create keystore for graylog - gen key and import into a new keystore
01. keytool -genkey -alias graylog-web01 -keyalg RSA -keysize 2048
-validity 1000 -dname "CN=graylog-web01" -keystore
graylog-web01KeyStore.p12 -storepass XXXX -storetype pkcs12
02. keytool -importkeystore -deststorepass "XXXX" -destkeypass "XXXX"
-destkeystore graylog.keystore -srckeystore graylog-web01KeyStore.p12
-srcstoretype PKCS12 -srcstorepass "XXXX" -alias graylog-web01
create a self signed cert
03. openssl req -x509 -days 365 -nodes -newkey rsa:2048 -keyout
pkcs5-plain.pem -out cert.pem
convert key to pkcs8 format
04. openssl pkcs8 -in pkcs5-plain.pem -topk8 -nocrypt -out pkcs8-plain.pem
convert keystore above to PKCS12 format so openssl can work with it
05. keytool -importkeystore -srckeystore graylog-web01.keystore
-destkeystore keystore.p12 -deststoretype PKCS12
get the cert to use
06. openssl pkcs12 -in keystore.p12 -nokeys -out graylog-certificate.pem
cat graylog-certificate.pem
Bag Attributes
friendlyName: CN=graylog-web01
localKeyID: 54 69 6E 66 20 31 34 36 39 34 36 37 35 37 39 33 32 30
subject=/CN=graylog-web01
issuer=/CN=graylog-web01
-----BEGIN CERTIFICATE-----
get the key to use
07. openssl pkcs12 -in keystore.p12 -nocerts -out graylog-pkcs5.pem
This is where the issue is - the pkcs5 key file doesn't seem to contain
the actual key. I was expecting to see "----BEGIN PRIVATE KEY----" line in
the file below
cat graylog-pkcs5.pem
Bag Attributes
friendlyName: graylog2
localKeyID: 54 69 6E 66 20 31 34 36 39 34 36 38 35 35 32 30 33 36
Key Attributes: <No Attributes>
but the file ends right there above at "Key Attributes" line.
08. Consequently, this fails -
openssl pkcs8 -in graylog-pkcs5.pem -topk8 -out graylog-key.pem
unable to load key
140626096863048:error:0906D06C:PEM routines:PEM_read_bio:no start
line:pem_lib.c:703:Expecting: ANY PRIVATE KEY
09. I understand that after this step 08 works above I still need to
cp -a "${JAVA_HOME}/jre/lib/security/cacerts" /path/to/cacerts.jks
keytool -importcert -keystore /path/to/cacerts.jks -storepass changeit -alias
graylog-self-signed -file cert.pem
to import this into the local JVM Trust store and point to it by adding these
to the graylog-server GRAYLOG_SERVER_ARGS in /etc/sysconfig/graylog-server
(or JAVA_OPTS in /etc/init.d/graylog-server)
GRAYLOG_SERVER_ARGS="-Djavax.net.ssl.trustStore=/path/to/cacerts.jks
-Djavax.net.ssl.trustStorePassword=secret"
and then restart graylog-server and it will be SSL ready.
Where is the error happening? Does anyone have a straightforward list of
steps to follow to get this working?
I have 2 graylog-web front ends in a cluster so I'm assuming in step 09
above I need to add the cert from both graylog-web servers.
Thanks,
--
You received this message because you are subscribed to the Google Groups
"Graylog Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/graylog2/b206e420-7c6b-4d1f-bd1d-df6f091e279e%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.