# curl 52 empty response - elasticsearch and kibana not working after trying to set up Search Guard

**URL:** <https://forum.search-guard.com/t/curl-52-empty-response-elasticsearch-and-kibana-not-working-after-trying-to-set-up-search-guard/837>\
**Category:** Search Guard\
**Created:** [March 15, 2018, 10:54pm UTC](https://forum.search-guard.com/t/curl-52-empty-response-elasticsearch-and-kibana-not-working-after-trying-to-set-up-search-guard/837 "2018-03-15T22:54:37Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Angelika\_Stachura](https://avatars.discourse-cdn.com/v4/letter/a/898d66/32.png) [@Angelika\_Stachura](https://forum.search-guard.com/u/Angelika_Stachura)\
**Post date:** [March 15, 2018, 10:54pm UTC](https://forum.search-guard.com/t/curl-52-empty-response-elasticsearch-and-kibana-not-working-after-trying-to-set-up-search-guard/837/1 "2018-03-15T22:54:37Z")

</div>

I tried to follow instructions on how to install the Search Guard, however, failed somewhere along the way… I am new to this and really have no clue how to fix it. when i try to do :  
curl -XGET ‘[http://localhost:9200](http://localhost:9200)’  
curl: (52) Empty reply from server

curl -k -X GET ‘[https://localhost:9200](https://localhost:9200)’

Search Guard not initialized (SG11).

How do I fix it?? I tried to research the problem but I dont know enough to understand how to fix this.

Thanks in advance.

- Search Guard - 6.2.2 -21.0 and Elasticsearch version - 6.2.2

- System version - Ubuntu server

- Search Guard configuration files

elasticsearch.yml:

# ======================== Elasticsearch Configuration =========================

> **···**
>
> # 
> 
> # NOTE: Elasticsearch comes with reasonable defaults for most settings.
> 
> # Before you set out to tweak and tune the configuration, make sure you
> 
> # understand what are you trying to accomplish and the consequences.
> 
> # 
> 
> # The primary way of configuring a node is via this file. This template lists
> 
> # the most important settings you may want to configure for a production cluster.
> 
> # 
> 
> # Please consult the documentation for further information on configuration options:
> 
> # [Elasticsearch Guide | Elastic](https://www.elastic.co/guide/en/elasticsearch/reference/index.html)
> 
> # 
> 
> # ---------------------------------- Cluster -----------------------------------
> 
> # 
> 
> # Use a descriptive name for your cluster:
> 
> # 
> 
> #cluster.name: my-application
> 
> # 
> 
> # ------------------------------------ Node ------------------------------------
> 
> # 
> 
> # Use a descriptive name for the node:
> 
> # 
> 
> #node.name: node-1
> 
> # 
> 
> # Add custom attributes to the node:
> 
> # 
> 
> #node.attr.rack: r1
> 
> # 
> 
> # ----------------------------------- Paths ------------------------------------
> 
> # 
> 
> # Path to directory where to store the data (separate multiple locations by comma):
> 
> # 
> 
> path.data: /var/lib/elasticsearch
> 
> # 
> 
> # Path to log files:
> 
> # 
> 
> path.logs: /var/log/elasticsearch
> 
> # 
> 
> # ----------------------------------- Memory -----------------------------------
> 
> # 
> 
> # Lock the memory on startup:
> 
> # 
> 
> #bootstrap.memory\_lock: true
> 
> # Make sure that the heap size is set to about half the memory available
> 
> # on the system and that the owner of the process is allowed to use this
> 
> # limit.
> 
> # 
> 
> # Elasticsearch performs poorly when the system is swapping the memory.
> 
> # 
> 
> # ---------------------------------- Network -----------------------------------
> 
> # 
> 
> # Set the bind address to a specific IP (IPv4 or IPv6):
> 
> # 
> 
> #network.host: 192.168.0.1
> 
> # 
> 
> # Set a custom port for HTTP:
> 
> # 
> 
> #http.port: 9200
> 
> # 
> 
> # For more information, consult the network module documentation.
> 
> # 
> 
> # --------------------------------- Discovery ----------------------------------
> 
> # 
> 
> # Pass an initial list of hosts to perform discovery when new node is started:
> 
> # The default list of hosts is [“127.0.0.1”, “[::1]”]
> 
> # 
> 
> #discovery.zen.ping.unicast.hosts: [“host1”, “host2”]
> 
> # 
> 
> # Prevent the “split brain” by configuring the majority of nodes (total number of master-eligible nodes / 2 + 1):
> 
> # 
> 
> #discovery.zen.minimum\_master\_nodes:
> 
> # 
> 
> # For more information, consult the zen discovery module documentation.
> 
> # 
> 
> # ---------------------------------- Gateway -----------------------------------
> 
> # 
> 
> # Block initial recovery after a full cluster restart until N nodes are started:
> 
> # 
> 
> #gateway.recover\_after\_nodes: 3
> 
> # 
> 
> # For more information, consult the gateway module documentation.
> 
> # 
> 
> # ---------------------------------- Various -----------------------------------
> 
> # 
> 
> # Require explicit names when deleting indices:
> 
> # 
> 
> #action.destructive\_requires\_name: true
> 
> ######## Start Search Guard Demo Configuration ########
> 
> # WARNING: revise all the lines below before you go into production
> 
> searchguard.ssl.transport.pemcert\_filepath: esnode.pem
> 
> searchguard.ssl.transport.pemkey\_filepath: esnode-key.pem
> 
> searchguard.ssl.transport.pemtrustedcas\_filepath: root-ca.pem
> 
> searchguard.ssl.transport.enforce\_hostname\_verification: false
> 
> searchguard.ssl.http.enabled: true
> 
> searchguard.ssl.http.keystore\_password: changeit
> 
> searchguard.ssl.http.pemcert\_filepath: esnode.pem
> 
> searchguard.ssl.http.pemkey\_filepath: esnode-key.pem
> 
> searchguard.ssl.http.pemtrustedcas\_filepath: root-ca.pem
> 
> searchguard.allow\_unsafe\_democertificates: true
> 
> searchguard.allow\_default\_init\_sgindex: true
> 
> searchguard.authcz.admin\_dn:
> 
> - CN=kirk,OU=client,O=client,L=test, C=de
> 
> searchguard.audit.type: internal\_elasticsearch
> 
> searchguard.enable\_snapshot\_restore\_privilege: true
> 
> searchguard.check\_snapshot\_restore\_write\_privileges: true
> 
> searchguard.restapi.roles\_enabled: [“sg\_all\_access”]
> 
> cluster.name: searchguard\_demo
> 
> discovery.zen.minimum\_master\_nodes: 1
> 
> node.max\_local\_storage\_nodes: 3
> 
> ``

---

<div class="post-metadata">

**Author:** ![Angelika\_Stachura](https://avatars.discourse-cdn.com/v4/letter/a/898d66/32.png) [@Angelika\_Stachura](https://forum.search-guard.com/u/Angelika_Stachura)\
**Post date:** [March 16, 2018, 12:07am UTC](https://forum.search-guard.com/t/curl-52-empty-response-elasticsearch-and-kibana-not-working-after-trying-to-set-up-search-guard/837/2 "2018-03-16T00:07:18Z")

</div>

Also, now im getting this response:

curl --insecure -u admin:admin ‘[https://localhost:9200/\_searchguard/authinfo?pretty](https://localhost:9200/_searchguard/authinfo?pretty)’

curl: (35) gnutls\_handshake() failed: An unexpected TLS packet was received.

> **···**
>
> On Thursday, March 15, 2018 at 10:54:37 PM UTC, Angelika Stachura wrote:
> 
> > I tried to follow instructions on how to install the Search Guard, however, failed somewhere along the way… I am new to this and really have no clue how to fix it. when i try to do :  
> > curl -XGET ‘[http://localhost:9200](http://localhost:9200)’  
> > curl: (52) Empty reply from server
> 
> > 
> 
> > curl -k -X GET ‘[https://localhost:9200](https://localhost:9200)’
> 
> > Search Guard not initialized (SG11).
> 
> > 
> 
> > How do I fix it?? I tried to research the problem but I dont know enough to understand how to fix this.
> 
> > 
> 
> > Thanks in advance.
> 
> > 
> 
> > - Search Guard - 6.2.2 -21.0 and Elasticsearch version - 6.2.2
> 
> > - System version - Ubuntu server
> 
> > - Search Guard configuration files
> 
> > elasticsearch.yml:
> 
> > 
> 
> > # ======================== Elasticsearch Configuration =========================
> 
> > #
> 
> > # NOTE: Elasticsearch comes with reasonable defaults for most settings.
> 
> > # Before you set out to tweak and tune the configuration, make sure you
> 
> > # understand what are you trying to accomplish and the consequences.
> 
> > #
> 
> > # The primary way of configuring a node is via this file. This template lists
> 
> > # the most important settings you may want to configure for a production cluster.
> 
> > #
> 
> > # Please consult the documentation for further information on configuration options:
> 
> > # [https://www.elastic.co/guide/en/elasticsearch/reference/index.html](https://www.elastic.co/guide/en/elasticsearch/reference/index.html)
> 
> > #
> 
> > # ---------------------------------- Cluster -----------------------------------
> 
> > #
> 
> > # Use a descriptive name for your cluster:
> 
> > #
> 
> > #[cluster.name](http://cluster.name): my-application
> 
> > #
> 
> > # ------------------------------------ Node ------------------------------------
> 
> > #
> 
> > # Use a descriptive name for the node:
> 
> > #
> 
> > #[node.name](http://node.name): node-1
> 
> > #
> 
> > # Add custom attributes to the node:
> 
> > #
> 
> > #node.attr.rack: r1
> 
> > #
> 
> > # ----------------------------------- Paths ------------------------------------
> 
> > #
> 
> > # Path to directory where to store the data (separate multiple locations by comma):
> 
> > #
> 
> > path.data: /var/lib/elasticsearch
> 
> > #
> 
> > # Path to log files:
> 
> > #
> 
> > path.logs: /var/log/elasticsearch
> 
> > #
> 
> > # ----------------------------------- Memory -----------------------------------
> 
> > #
> 
> > # Lock the memory on startup:
> 
> > #
> 
> > #bootstrap.memory\_lock: true
> 
> > # Make sure that the heap size is set to about half the memory available
> 
> > # on the system and that the owner of the process is allowed to use this
> 
> > # limit.
> 
> > #
> 
> > # Elasticsearch performs poorly when the system is swapping the memory.
> 
> > #
> 
> > # ---------------------------------- Network -----------------------------------
> 
> > #
> 
> > # Set the bind address to a specific IP (IPv4 or IPv6):
> 
> > #
> 
> > #network.host: 192.168.0.1
> 
> > #
> 
> > # Set a custom port for HTTP:
> 
> > #
> 
> > #http.port: 9200
> 
> > #
> 
> > # For more information, consult the network module documentation.
> 
> > #
> 
> > # --------------------------------- Discovery ----------------------------------
> 
> > #
> 
> > # Pass an initial list of hosts to perform discovery when new node is started:
> 
> > # The default list of hosts is [“127.0.0.1”, “[::1]”]
> 
> > #
> 
> > #discovery.zen.ping.unicast.hosts: [“host1”, “host2”]
> 
> > #
> 
> > # Prevent the “split brain” by configuring the majority of nodes (total number of master-eligible nodes / 2 + 1):
> 
> > #
> 
> > #discovery.zen.minimum\_master\_nodes:
> 
> > #
> 
> > # For more information, consult the zen discovery module documentation.
> 
> > #
> 
> > # ---------------------------------- Gateway -----------------------------------
> 
> > #
> 
> > # Block initial recovery after a full cluster restart until N nodes are started:
> 
> > #
> 
> > #gateway.recover\_after\_nodes: 3
> 
> > #
> 
> > # For more information, consult the gateway module documentation.
> 
> > #
> 
> > # ---------------------------------- Various -----------------------------------
> 
> > #
> 
> > # Require explicit names when deleting indices:
> 
> > #
> 
> > #action.destructive\_requires\_name: true
> 
> > 
> 
> > ######## Start Search Guard Demo Configuration ########
> 
> > # WARNING: revise all the lines below before you go into production
> 
> > searchguard.ssl.transport.pemcert\_filepath: esnode.pem
> 
> > searchguard.ssl.transport.pemkey\_filepath: esnode-key.pem
> 
> > searchguard.ssl.transport.pemtrustedcas\_filepath: root-ca.pem
> 
> > searchguard.ssl.transport.enforce\_hostname\_verification: false
> 
> > searchguard.ssl.http.enabled: true
> 
> > searchguard.ssl.http.keystore\_password: changeit
> 
> > searchguard.ssl.http.pemcert\_filepath: esnode.pem
> 
> > searchguard.ssl.http.pemkey\_filepath: esnode-key.pem
> 
> > searchguard.ssl.http.pemtrustedcas\_filepath: root-ca.pem
> 
> > searchguard.allow\_unsafe\_democertificates: true
> 
> > searchguard.allow\_default\_init\_sgindex: true
> 
> > searchguard.authcz.admin\_dn:
> 
> > - CN=kirk,OU=client,O=client,L=test, C=de
> 
> > 
> 
> > searchguard.audit.type: internal\_elasticsearch
> 
> > searchguard.enable\_snapshot\_restore\_privilege: true
> 
> > searchguard.check\_snapshot\_restore\_write\_privileges: true
> 
> > searchguard.restapi.roles\_enabled: [“sg\_all\_access”]
> 
> > [cluster.name](http://cluster.name): searchguard\_demo
> 
> > discovery.zen.minimum\_master\_nodes: 1
> 
> > node.max\_local\_storage\_nodes: 3
> 
> > 
> 
> > ``
> 
> > 
> 
> >

---

<div class="post-metadata">

**Author:** ![Anthony\_Cleaves](https://avatars.discourse-cdn.com/v4/letter/a/87869e/32.png) [@Anthony\_Cleaves](https://forum.search-guard.com/u/Anthony_Cleaves)\
**Post date:** [March 16, 2018, 10:36am UTC](https://forum.search-guard.com/t/curl-52-empty-response-elasticsearch-and-kibana-not-working-after-trying-to-set-up-search-guard/837/3 "2018-03-16T10:36:17Z")

</div>

Did you run the sgadmin tool in /usr/share/elasticsearch/kibana/tools?

> **···**
>
> On Friday, 16 March 2018 00:07:18 UTC, Angelika Stachura wrote:
> 
> > Also, now im getting this response:
> 
> > curl --insecure -u admin:admin ‘[https://localhost:9200/\_searchguard/authinfo?pretty](https://localhost:9200/_searchguard/authinfo?pretty)’
> 
> > curl: (35) gnutls\_handshake() failed: An unexpected TLS packet was received.
> 
> > 
> 
> > On Thursday, March 15, 2018 at 10:54:37 PM UTC, Angelika Stachura wrote:
> > 
> > > I tried to follow instructions on how to install the Search Guard, however, failed somewhere along the way… I am new to this and really have no clue how to fix it. when i try to do :  
> > > curl -XGET ‘[http://localhost:9200](http://localhost:9200)’  
> > > curl: (52) Empty reply from server
> 
> > >
> 
> > > curl -k -X GET ‘[https://localhost:9200](https://localhost:9200)’
> 
> > > Search Guard not initialized (SG11).
> 
> > >
> 
> > > How do I fix it?? I tried to research the problem but I dont know enough to understand how to fix this.
> 
> > >
> 
> > > Thanks in advance.
> 
> > >
> 
> > > - Search Guard - 6.2.2 -21.0 and Elasticsearch version - 6.2.2
> 
> > > - System version - Ubuntu server
> 
> > > - Search Guard configuration files
> 
> > > elasticsearch.yml:
> 
> > >
> 
> > > # ======================== Elasticsearch Configuration =========================
> 
> > > #
> 
> > > # NOTE: Elasticsearch comes with reasonable defaults for most settings.
> 
> > > # Before you set out to tweak and tune the configuration, make sure you
> 
> > > # understand what are you trying to accomplish and the consequences.
> 
> > > #
> 
> > > # The primary way of configuring a node is via this file. This template lists
> 
> > > # the most important settings you may want to configure for a production cluster.
> 
> > > #
> 
> > > # Please consult the documentation for further information on configuration options:
> 
> > > # [https://www.elastic.co/guide/en/elasticsearch/reference/index.html](https://www.elastic.co/guide/en/elasticsearch/reference/index.html)
> 
> > > #
> 
> > > # ---------------------------------- Cluster -----------------------------------
> 
> > > #
> 
> > > # Use a descriptive name for your cluster:
> 
> > > #
> 
> > > #[cluster.name](http://cluster.name): my-application
> 
> > > #
> 
> > > # ------------------------------------ Node ------------------------------------
> 
> > > #
> 
> > > # Use a descriptive name for the node:
> 
> > > #
> 
> > > #[node.name](http://node.name): node-1
> 
> > > #
> 
> > > # Add custom attributes to the node:
> 
> > > #
> 
> > > #node.attr.rack: r1
> 
> > > #
> 
> > > # ----------------------------------- Paths ------------------------------------
> 
> > > #
> 
> > > # Path to directory where to store the data (separate multiple locations by comma):
> 
> > > #
> 
> > > path.data: /var/lib/elasticsearch
> 
> > > #
> 
> > > # Path to log files:
> 
> > > #
> 
> > > path.logs: /var/log/elasticsearch
> 
> > > #
> 
> > > # ----------------------------------- Memory -----------------------------------
> 
> > > #
> 
> > > # Lock the memory on startup:
> 
> > > #
> 
> > > #bootstrap.memory\_lock: true
> 
> > > # Make sure that the heap size is set to about half the memory available
> 
> > > # on the system and that the owner of the process is allowed to use this
> 
> > > # limit.
> 
> > > #
> 
> > > # Elasticsearch performs poorly when the system is swapping the memory.
> 
> > > #
> 
> > > # ---------------------------------- Network -----------------------------------
> 
> > > #
> 
> > > # Set the bind address to a specific IP (IPv4 or IPv6):
> 
> > > #
> 
> > > #network.host: 192.168.0.1
> 
> > > #
> 
> > > # Set a custom port for HTTP:
> 
> > > #
> 
> > > #http.port: 9200
> 
> > > #
> 
> > > # For more information, consult the network module documentation.
> 
> > > #
> 
> > > # --------------------------------- Discovery ----------------------------------
> 
> > > #
> 
> > > # Pass an initial list of hosts to perform discovery when new node is started:
> 
> > > # The default list of hosts is [“127.0.0.1”, “[::1]”]
> 
> > > #
> 
> > > #discovery.zen.ping.unicast.hosts: [“host1”, “host2”]
> 
> > > #
> 
> > > # Prevent the “split brain” by configuring the majority of nodes (total number of master-eligible nodes / 2 + 1):
> 
> > > #
> 
> > > #discovery.zen.minimum\_master\_nodes:
> 
> > > #
> 
> > > # For more information, consult the zen discovery module documentation.
> 
> > > #
> 
> > > # ---------------------------------- Gateway -----------------------------------
> 
> > > #
> 
> > > # Block initial recovery after a full cluster restart until N nodes are started:
> 
> > > #
> 
> > > #gateway.recover\_after\_nodes: 3
> 
> > > #
> 
> > > # For more information, consult the gateway module documentation.
> 
> > > #
> 
> > > # ---------------------------------- Various -----------------------------------
> 
> > > #
> 
> > > # Require explicit names when deleting indices:
> 
> > > #
> 
> > > #action.destructive\_requires\_name: true
> 
> > >
> 
> > > ######## Start Search Guard Demo Configuration ########
> 
> > > # WARNING: revise all the lines below before you go into production
> 
> > > searchguard.ssl.transport.pemcert\_filepath: esnode.pem
> 
> > > searchguard.ssl.transport.pemkey\_filepath: esnode-key.pem
> 
> > > searchguard.ssl.transport.pemtrustedcas\_filepath: root-ca.pem
> 
> > > searchguard.ssl.transport.enforce\_hostname\_verification: false
> 
> > > searchguard.ssl.http.enabled: true
> 
> > > searchguard.ssl.http.keystore\_password: changeit
> 
> > > searchguard.ssl.http.pemcert\_filepath: esnode.pem
> 
> > > searchguard.ssl.http.pemkey\_filepath: esnode-key.pem
> 
> > > searchguard.ssl.http.pemtrustedcas\_filepath: root-ca.pem
> 
> > > searchguard.allow\_unsafe\_democertificates: true
> 
> > > searchguard.allow\_default\_init\_sgindex: true
> 
> > > searchguard.authcz.admin\_dn:
> 
> > > - CN=kirk,OU=client,O=client,L=test, C=de
> 
> > >
> 
> > > searchguard.audit.type: internal\_elasticsearch
> 
> > > searchguard.enable\_snapshot\_restore\_privilege: true
> 
> > > searchguard.check\_snapshot\_restore\_write\_privileges: true
> 
> > > searchguard.restapi.roles\_enabled: [“sg\_all\_access”]
> 
> > > [cluster.name](http://cluster.name): searchguard\_demo
> 
> > > discovery.zen.minimum\_master\_nodes: 1
> 
> > > node.max\_local\_storage\_nodes: 3
> 
> > >
> 
> > > ``
> 
> > >
> 
> > >

---

<div class="post-metadata">

**Author:** ![benjamin\_fino](https://avatars.discourse-cdn.com/v4/letter/b/54ee81/32.png) [@benjamin\_fino](https://forum.search-guard.com/u/benjamin_fino)\
**Post date:** [March 23, 2018, 2:18pm UTC](https://forum.search-guard.com/t/curl-52-empty-response-elasticsearch-and-kibana-not-working-after-trying-to-set-up-search-guard/837/4 "2018-03-23T14:18:51Z")

</div>

Try with -1 :

curl -v -k  
‘[https://localhost:9200/\_searchguard/api/internalusers](https://localhost:9200/_searchguard/api/internalusers)’ -u admin:admin -1
