Refactoring: Changed remaining check parameters starting with an 's' to the new rules...
[check_mk.git] / .werks / 7017
blob346b2db0508e3f110538721f43d6a4cfa5831b86
1 Title: Livestatus via TCP can now be encrypted
2 Level: 2
3 Component: livestatus
4 Compatible: compat
5 Edition: cre
6 Version: 1.6.0i1
7 Date: 1546074825
8 Class: feature
10 Livestatus has been a plain text protocol since it's invention. This is
11 normally OK for system local connections via unix socket or TCP connections
12 in secure networks.
14 Users always had the choice to secure the communication using TLS (e.g.
15 via stunnel), SSH, VPN or some other solution that encrypts the
16 communication in their local setup.
18 To improve the security for all users of Check_MK, we have now changed
19 the Livestatus TCP communication to be encrypted by default using TLS.
20 This is realized using an internal CA and internally generated
21 certificates by default.
23 Existing sites that already have Livestatus via TCP enabled before
24 updating to 1.6 still use the unencrypted communication for
25 compatibility. An analyze configuration" test will create a CRITICAL
26 message about the unencrypted Livestatus TCP configuration in this
27 situation.
29 If you want to encrypt the Livestatus communication between two sites,
30 you first have to update both sites to use Check_MK 1.6. Then you will
31 have to enable the 'omd config' option LIVESTATUS_TCP_TLS. After that
32 go to the 'Distributed Monitoring' configuration page on the central
33 site and enable "Encryption" for the remote site connection. If you use
34 the internal site certificate, you will now have open the
35 "Livestatus encryption" detail page of the site which should show you
36 that the certificate of the remote site is not trusted by the central
37 site. Klick on the "Add to trusted CAs" icon button in the certificate
38 chain list to establish the tust with the remote site. Once this is
39 done your livestatus connection should be encrypted and working fine.
41 Technical details:
43 <ul>
44 <li>For new sites Livestatus via TCP is encrypted by default. Existing sites
45   which already have Livestatus via TCP enabled during the update keep the
46   communication unencrypted for compatibility reasons. This is managed using
47   the new 'omd config' option LIVESTATUS_TCP_TLS. This setting can also
48   be managed through the "Global Settings > Site Management".</li>
49 <li>During update or site creation a site local CA certificate is created
50   to manage the sites local certificates.</li>
51 <li>The site local certificate is created automatically during update or
52   site creation.</li>
53 <li>The CA certificate is always located at 'etc/ssl/ca.pem'.</li>
54 <li>The site certificate is located at 'etc/ssl/sites/[site].pem'</li>
55 <li>Both files are in PEM format and need to have the private key and
56   certificate stored in a single file.</li>
57 <li>The keys are 2048 bit RSA keys and the certificates are signed using
58   SHA512.</li>
59 <li>These certificates are valid for 999 years.</li>
60 <li>The site PEM file should contain the certificates of the whole
61   certificate chain.</li>
62 <li>In case you want to use other site certificates, you are free to
63   replace the site PEM file with your own. Please note that you will
64   have to restart the stunnel process of the site to apply the change.</li>
65 <li>stunnel is introduced as site internal daemon that serves the TLS
66   wrapped socket once it has been enabled through 'omd config'.</li>
67 <li>The livestatus_status check is now checking for the livestatus
68   certificate expiration time.</li>
69 </ul>