# Encrypting traffic between browser and kibana

**URL:** https://discuss.elastic.co/t/encrypting-traffic-between-browser-and-kibana/250569
**Category:** Kibana
**Created:** [September 30, 2020, 9:48pm UTC](https://discuss.elastic.co/t/encrypting-traffic-between-browser-and-kibana/250569 "2020-09-30T21:48:57Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![Joe\_Monaco](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/joe_monaco/32/45922_2.png) [@Joe\_Monaco](https://discuss.elastic.co/u/Joe_Monaco)
#### Post date: [September 30, 2020, 9:48pm UTC](https://discuss.elastic.co/t/encrypting-traffic-between-browser-and-kibana/250569/1 "2020-09-30T21:48:57Z")

</div>

[https://www.elastic.co/guide/en/kibana/current/configuring-tls.html](https://www.elastic.co/guide/en/kibana/current/configuring-tls.html) provides steps to enable encryption between browser and kibana. Following these instructions on a 7.9.2 instance and using a server certificate/private key in PEM format with no password I get the error below. I can't find a step I'm missing or instructions for how to set the required information. Any pointers on what I should be configuring to make this work?

`{"type":"log","@timestamp":"2020-09-30T21:14:31Z","tags":["fatal","root"],"pid":514,"message":"{ Error: [config validation of [server].ssl.cert]: definition for this key is missing\n at ObjectType.validate (/opt/kibana/node_modules/@kbn/config-schema/target/out/types/type.js:62:19)\n at ConfigService.validateAtPath (/opt/kibana/src/core/server/config/config_service.js:188:19)\n at MapSubscriber.getDistinctConfig.pipe.config [as project] (/opt/kibana/src/core/server/config/config_service.js:196:81)\n at MapSubscriber._next (/opt/kibana/node_modules/rxjs/internal/operators/map.js:49:35)\n at MapSubscriber.Subscriber.next (/opt/kibana/node_modules/rxjs/internal/Subscriber.js:66:18)\n at DistinctUntilChangedSubscriber._next (/opt/kibana/node_modules/rxjs/internal/operators/distinctUntilChanged.js:69:30)\n at DistinctUntilChangedSubscriber.Subscriber.next (/opt/kibana/node_modules/rxjs/internal/Subscriber.js:66:18)\n at MapSubscriber._next (/opt/kibana/node_modules/rxjs/internal/operators/map.js:55:26)\n at MapSubscriber.Subscriber.next (/opt/kibana/node_modules/rxjs/internal/Subscriber.js:66:18)\n at ReplaySubject._subscribe (/opt/kibana/node_modules/rxjs/internal/ReplaySubject.js:76:28)\n at ReplaySubject.Observable._trySubscribe (/opt/kibana/node_modules/rxjs/internal/Observable.js:44:25)\n at ReplaySubject.Subject._trySubscribe (/opt/kibana/node_modules/rxjs/internal/Subject.js:102:51)\n at ReplaySubject.Observable.subscribe (/opt/kibana/node_modules/rxjs/internal/Observable.js:30:22)\n at MapSubscriber.shareReplayOperation (/opt/kibana/node_modules/rxjs/internal/operators/shareReplay.js:45:32)\n at Observable.subscribe (/opt/kibana/node_modules/rxjs/internal/Observable.js:25:31)\n at MapOperator.call (/opt/kibana/node_modules/rxjs/internal/operators/map.js:32:23)\n cause:\n { Error: definition for this key is missing\n at ObjectType.onError (/opt/kibana/node_modules/@kbn/config-schema/target/out/types/type.js:87:20)\n at type.Type.schema.error (/opt/kibana/node_modules/@kbn/config-schema/target/out/types/type.js:52:53)\n at finish (/opt/kibana/node_modules/joi/lib/types/any/index.js:529:50)\n at type._validate (/opt/kibana/node_modules/joi/lib/types/any/index.js:618:24)\n at type._base (/opt/kibana/node_modules/joi/lib/types/object/index.js:212:45)\n at type._validate (/opt/kibana/node_modules/joi/lib/types/any/index.js:614:37)\n at type._validateWithOptions (/opt/kibana/node_modules/joi/lib/types/any/index.js:674:29)\n at module.exports.internals.Any.root.validate (/opt/kibana/node_modules/joi/lib/index.js:146:23)\n at ObjectType.validate (/opt/kibana/node_modules/@kbn/config-schema/target/out/types/type.js:57:72)\n at ConfigService.validateAtPath (/opt/kibana/src/core/server/config/config_service.js:188:19)\n at MapSubscriber.getDistinctConfig.pipe.config [as project] (/opt/kibana/src/core/server/config/config_service.js:196:81)\n at MapSubscriber._next (/opt/kibana/node_modules/rxjs/internal/operators/map.js:49:35)\n at MapSubscriber.Subscriber.next (/opt/kibana/node_modules/rxjs/internal/Subscriber.js:66:18)\n at DistinctUntilChangedSubscriber._next (/opt/kibana/node_modules/rxjs/internal/operators/distinctUntilChanged.js:69:30)\n at DistinctUntilChangedSubscriber.Subscriber.next (/opt/kibana/node_modules/rxjs/internal/Subscriber.js:66:18)\n at MapSubscriber._next (/opt/kibana/node_modules/rxjs/internal/operators/map.js:55:26) cause: undefined, path: ['ssl', 'cert'] } }"}`

---

<div class="post-metadata">

### Author: ![bhavyarm](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/bhavyarm/32/22392_2.png) [@bhavyarm](https://discuss.elastic.co/u/bhavyarm)
#### Post date: [October 1, 2020, 12:30am UTC](https://discuss.elastic.co/t/encrypting-traffic-between-browser-and-kibana/250569/2 "2020-10-01T00:30:38Z")

</div>

@azasypkin / @jportner can I please get some help on this? Thanks!

---

<div class="post-metadata">

### Author: ![kavierkoo](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/kavierkoo/32/86555_2.png) [@kavierkoo](https://discuss.elastic.co/u/kavierkoo)
#### Post date: [October 1, 2020, 4:19am UTC](https://discuss.elastic.co/t/encrypting-traffic-between-browser-and-kibana/250569/3 "2020-10-01T04:19:33Z")

</div>

> Error: [config validation of [server].ssl.cert]: definition for this key is missing

Please share your kibana.yml to have a better picture.

---

<div class="post-metadata">

### Author: ![azasypkin](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/azasypkin/32/42216_2.png) [@azasypkin](https://discuss.elastic.co/u/azasypkin)
#### Post date: [October 1, 2020, 11:18am UTC](https://discuss.elastic.co/t/encrypting-traffic-between-browser-and-kibana/250569/4 "2020-10-01T11:18:25Z")

</div>

> [@Joe\_Monaco](#):
>
> [config validation of [server].ssl.cert]: definition for this key is missing

Hmm, I believe the correct setting is `server.ssl.certificate`, not `server.ssl.cert`. @Joe_Monaco can you double check your config?

---

<div class="post-metadata">

### Author: ![Joe\_Monaco](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/joe_monaco/32/45922_2.png) [@Joe\_Monaco](https://discuss.elastic.co/u/Joe_Monaco)
#### Post date: [October 1, 2020, 11:34am UTC](https://discuss.elastic.co/t/encrypting-traffic-between-browser-and-kibana/250569/5 "2020-10-01T11:34:19Z")

</div>

Yes, the spelling was the problem. The instructions clearly say server.ssl.certificate, but the comment in the file had server.ssl.cert and I just edited the comment. D'oh. A little unclear in any case.

Thanks!

---

<div class="post-metadata">

### Author: ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)
#### Post date: [October 29, 2020, 11:34am UTC](https://discuss.elastic.co/t/encrypting-traffic-between-browser-and-kibana/250569/6 "2020-10-29T11:34:20Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
