O que é o X-Pack

X-Pack é uma extensão da Elastic Stack que agrupa recursos de segurança, alertas, monitoramento, relatórios e gráficos em um pacote fácil de instalar. Enquanto os componentes do X-Pack são projetados para funcionarem em conjunto, você pode facilmente ativar ou desativar os recursos que deseja usar.

Antes do Elasticsearch 5.0.0, você precisava instalar plugins separados Shield, Watcher e Marvel para obter os recursos que estão agrupados no X-Pack. Com o X-Pack, você não precisa mais se preocupar sobre se você tem ou não a versão correta de cada plugin, basta instalar o X-Pack para a versão Elasticsearch que você está executando.

Segue uma ilustração:

xpack-integration

Instalação do X-pack e plugins no elascticsearch

OBS.: deve ser feito em todos os nós

$ sudo su – elasticsearch
$ cd /usr/share/elasticsearch/bin
$ sudo ./elasticsearch-plugin install x-pack

Verifica os plugins instalados no elascticsearch

$ sudo su – elasticsearch
$ cd /usr/share/elasticsearch/bin
$ sudo ./elasticsearch-plugin list

Alteração do arquivo elasticsearch.yml

OBS: precisa ser feito em todos os nós do cluster para permitir a configuração de sincronização com o AD

Alteração do arquivo elasticsearch.yml:

$ sudo vi /etc/elasticsearch/elasticsearch.yml

Adicionar as seguintes linhas no arquivo elasticsearch.yml (deve ser mantida esta indentação para que o sistema reconheça):

xpack:
  security:
    authc:
      realms:
        active_directory:
          type: active_directory
          domain_name: [domínio] 
          order: 0
          url: ldap://[IP do servidor de AD]:389
          unmapped_groups_as_roles: true
        files:
          role_mapping: “/etc/elasticsearch/x-pack/role_mapping.yml”

Alteração do arquivo role_mapping.yml:

$ sudo vi /etc/elasticsearch/x-pack/role_mapping.yml

Adicionar as seguintes linhas:

kibana_user:
 – “CN=kibana_user,DC=com,DC=br”

monitoring_user:
 – “CN=monitoring_user,DC=com,DC=br”

logstash_admin:
 – “CN=logstash_admin,DC=com,DC=br”

logstash_system:
 – “CN=logstash_system,DC=com,DC=br”

ingest_admin:
 – “CN=ingest_admin,DC=com,DC=br"

reporting_user:
 – “CN=reporting_user,DC=com,DC=br”

superuser:
 – “CN=superuser,DC=com,DC=br”

OBS.: 

  • os grupos já precisam existir no AD
  • é apenas um exemplo

Instalação do X-pack no Kibana

OBS.: demora um pouco, pois este processo cria uma série de métricas e marcadores que serão visualizadas no Kibana

$ sudo su – elasticsearch
$ cd /usr/share/kibana/bin
$ sudo ./kibana-plugin install x-pack

Verifica os plugins instalados no Kibana:

$ sudo su – elasticsearch
$ cd /usr/share/kibana/bin
$ sudo ./kibana-plugin list

Alterar no arquivo kibana.yml

$ sudo vi /etc/kibana/kibana.yml

Descomentar e alterar os seguintes parâmetros:

elasticsearch.username: “kibana”
elasticsearch.password: “changeme”

 

Instalação do X-pack e plugins no Logstash

$ sudo su – elasticsearch
$ cd /usr/share/logstash/bin
$ sudo ./logstash-plugin install x-pack

Verifica os plugins instalados no Logstash:

$ sudo su – elasticsearch
$ cd /usr/share/logstash/bin
$ sudo ./logstash-plugin list

Alterar o arquivo logstash.yml

$ sudo vi /etc/logstash/logstash.yml

Adicionar os parâmetros:

xpack.monitoring.elasticsearch.username: “logstash_system”
xpack.monitoring.elasticsearch.password: “changeme”
xpack.monitoring.elasticsearch.url: [“http://10.161.1.1:9200”, “http://10.161.1.2:9200”, “http://10.161.1.3:9200”, “http://10.161.1.4:9200″,”http://10.161.1.5:9200”]

O parâmetro “xpack.monitoring.elasticsearch.url” deve conter as URLs de todos os nós que compõem o cluster.