рд▓реЙрдХ рдЖрдгрд┐ рдХреА рдЕрдВрддрд░реНрдЧрдд рд▓рд╡рдЪрд┐рдХ: рдЖрдд рдЖрдгрд┐ рдмрд╛рд╣реЗрд░реВрди рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрд╕рд░реНрдЪ рдХреНрд▓рд╕реНрдЯрд░ рд╕реБрд░рдХреНрд╖рд╛ рдкрд░реНрдпрд╛рдп рд╕рдХреНрд╖рдо рдХрд░рдгреЗ

рд▓реЙрдХ рдЖрдгрд┐ рдХреА рдЕрдВрддрд░реНрдЧрдд рд▓рд╡рдЪрд┐рдХ: рдЖрдд рдЖрдгрд┐ рдмрд╛рд╣реЗрд░реВрди рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрд╕рд░реНрдЪ рдХреНрд▓рд╕реНрдЯрд░ рд╕реБрд░рдХреНрд╖рд╛ рдкрд░реНрдпрд╛рдп рд╕рдХреНрд╖рдо рдХрд░рдгреЗ

рд▓рд╡рдЪрд┐рдХ рд╕реНрдЯреЕрдХ рд╣реЗ SIEM рд╕рд┐рд╕реНрдЯреАрдо рдорд╛рд░реНрдХреЗрдЯрдордзреАрд▓ рдПрдХ рд╕реБрдкреНрд░рд╕рд┐рджреНрдз рд╕рд╛рдзрди рдЖрд╣реЗ (рд╡рд╛рд╕реНрддрд╡рд┐рдХ, рдХреЗрд╡рд│ рддреЗрдЪ рдирд╛рд╣реА). рд╣реЗ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдЖрдгрд┐ рдЕрддрд┐рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдирд╕реВрдирд╣реА рд╡рд┐рд╡рд┐рдз рдЖрдХрд╛рд░рд╛рдЪрд╛ рдбреЗрдЯрд╛ рдЧреЛрд│рд╛ рдХрд░реВ рд╢рдХрддреЗ. рд▓рд╡рдЪрд┐рдХ рд╕реНрдЯреЕрдХ рдШрдЯрдХрд╛рдВрдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рд╕реНрд╡рддрдГ рд╕рдВрд░рдХреНрд╖рд┐рдд рдирд╕рд▓реНрдпрд╛рд╕ рддреЗ рдкреВрд░реНрдгрдкрдгреЗ рдпреЛрдЧреНрдп рдирд╛рд╣реА. рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░, рд╕рд░реНрд╡ рд▓рд╡рдЪрд┐рдХ рдЖрдЙрдЯ-рдСрдл-рдж-рдмреЙрдХреНрд╕ рдШрдЯрдХ (рдЗрд▓реЕрд╕реНрдЯрд┐рдХрд╕рд░реНрдЪ, рд▓реЙрдЧрд╕реНрдЯреЕрд╢, рдХрд┐рдмрд╛рдирд╛ рдЖрдгрд┐ рдмреАрдЯреНрд╕ рдХрд▓реЗрдХреНрдЯрд░реНрд╕) рдЦреБрд▓реНрдпрд╛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓рд╡рд░ рдЪрд╛рд▓рддрд╛рдд. рдЖрдгрд┐ рдХрд┐рдмрд╛рдирд╛рдордзреНрдпреЗрдЪ, рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдЕрдХреНрд╖рдо рдХреЗрд▓реЗ рдЖрд╣реЗ. рд╣реЗ рд╕рд░реНрд╡ рдкрд░рд╕реНрдкрд░рд╕рдВрд╡рд╛рдж рд╕реБрд░рдХреНрд╖рд┐рдд рдХреЗрд▓реЗ рдЬрд╛рдК рд╢рдХрддрд╛рдд рдЖрдгрд┐ рдпрд╛ рд▓реЗрдЦрд╛рдд рдЖрдореНрд╣реА рд╣реЗ рдХрд╕реЗ рдХрд░рд╛рдпрдЪреЗ рддреЗ рд╕рд╛рдВрдЧреВ. рд╕реЛрдпреАрд╕рд╛рдареА, рдЖрдореНрд╣реА рдХрдерди 3 рд╕рд┐рдореЗрдВрдЯрд┐рдХ рдмреНрд▓реЙрдХреНрд╕рдордзреНрдпреЗ рд╡рд┐рднрд╛рдЧрд▓реЗ:

  • рднреВрдорд┐рдХрд╛-рдЖрдзрд╛рд░рд┐рдд рдбреЗрдЯрд╛ рдНрдХреНрд╕реЗрд╕ рдореЙрдбреЗрд▓
  • Elasticsearch рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд╛
  • Elasticsearch рдХреНрд▓рд╕реНрдЯрд░рдЪреНрдпрд╛ рдмрд╛рд╣реЗрд░ рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рдХрд░рдгреЗ

рдХрдЯ рдЕрдВрддрд░реНрдЧрдд рддрдкрд╢реАрд▓.

рднреВрдорд┐рдХрд╛-рдЖрдзрд╛рд░рд┐рдд рдбреЗрдЯрд╛ рдНрдХреНрд╕реЗрд╕ рдореЙрдбреЗрд▓

рдЬрд░ рддреБрдореНрд╣реА Elasticsearch рдЗрдиреНрд╕реНрдЯреЙрд▓ рдХреЗрд▓реЗ рдЖрдгрд┐ рддреЗ рдХреЛрдгрддреНрдпрд╛рд╣реА рдкреНрд░рдХрд╛рд░реЗ рдЯреНрдпреВрди рдХреЗрд▓реЗ рдирд╛рд╣реА рддрд░, рд╕рд░реНрд╡ рдЕрдиреБрдХреНрд░рдордгрд┐рдХреЗрдЪрд╛ рдкреНрд░рд╡реЗрд╢ рдкреНрд░рддреНрдпреЗрдХрд╛рд╕рд╛рдареА рдЦреБрд▓рд╛ рдЕрд╕реЗрд▓. рд╡рд┐рд╣реАрд░, рдХрд┐рдВрд╡рд╛ рдЬреЗ рдХрд░реНрд▓ рд╡рд╛рдкрд░реВ рд╢рдХрддрд╛рдд. рд╣реЗ рдЯрд╛рд│рдгреНрдпрд╛рд╕рд╛рдареА, Elasticsearch рдЪреЗ рдПрдХ рд░реЛрд▓ рдореЙрдбреЗрд▓ рдЖрд╣реЗ рдЬреЗ рдмреЗрд╕рд┐рдХ рд╕рдмрд╕реНрдХреНрд░рд┐рдкреНрд╢рдирдкрд╛рд╕реВрди (рдЬреЗ рдореЛрдлрдд рдЖрд╣реЗ) рдЙрдкрд▓рдмреНрдз рдЖрд╣реЗ. рдпреЛрдЬрдирд╛рдмрджреНрдзрд░рд┐рддреНрдпрд╛ рд╣реЗ рдЕрд╕реЗ рдХрд╛рд╣реАрддрд░реА рджрд┐рд╕рддреЗ:

рд▓реЙрдХ рдЖрдгрд┐ рдХреА рдЕрдВрддрд░реНрдЧрдд рд▓рд╡рдЪрд┐рдХ: рдЖрдд рдЖрдгрд┐ рдмрд╛рд╣реЗрд░реВрди рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрд╕рд░реНрдЪ рдХреНрд▓рд╕реНрдЯрд░ рд╕реБрд░рдХреНрд╖рд╛ рдкрд░реНрдпрд╛рдп рд╕рдХреНрд╖рдо рдХрд░рдгреЗ

рдЪрд┐рддреНрд░рд╛рдд рдХрд╛рдп рдЖрд╣реЗ

  • рд╡рд╛рдкрд░рдХрд░реНрддреЗ рд╣реЗ рдкреНрд░рддреНрдпреЗрдХрдЬрдг рдЖрд╣реЗрдд рдЬреЗ рддреНрдпрд╛рдВрдЪреЗ рдХреНрд░реЗрдбреЗрдиреНрд╢рд┐рдпрд▓реНрд╕ рд╡рд╛рдкрд░реВрди рд▓реЙрдЧ рдЗрди рдХрд░реВ рд╢рдХрддрд╛рдд.
  • рднреВрдорд┐рдХрд╛ рдореНрд╣рдгрдЬреЗ рд╣рдХреНрдХрд╛рдВрдЪрд╛ рд╕рдВрдЪ.
  • рдЕрдзрд┐рдХрд╛рд░ рд╣рд╛ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░рд╛рдВрдЪрд╛ рд╕рдВрдЪ рдЖрд╣реЗ.
  • рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдореНрд╣рдгрдЬреЗ рд▓рд┐рд╣рд┐рдгреЗ, рд╡рд╛рдЪрдгреЗ, рд╣рдЯрд╡рдгреЗ рдЗ. (рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░рд╛рдВрдЪреА рд╕рдВрдкреВрд░реНрдг рдпрд╛рджреА)
  • рд╕рдВрд╕рд╛рдзрдиреЗ рд╣реА рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛, рджрд╕реНрддрдРрд╡рдЬ, рдлреАрд▓реНрдб, рд╡рд╛рдкрд░рдХрд░реНрддреЗ рдЖрдгрд┐ рдЗрддрд░ рд╕реНрдЯреЛрд░реЗрдЬ рдШрдЯрдХ рдЖрд╣реЗрдд (рдХрд╛рд╣реА рд╕реНрддреНрд░реЛрддрд╛рдВрд╕рд╛рдареА рд░реЛрд▓ рдореЙрдбреЗрд▓ рдХреЗрд╡рд│ рд╕рд╢реБрд▓реНрдХ рд╕рджрд╕реНрдпрддреЗрд╕рд╣ рдЙрдкрд▓рдмреНрдз рдЖрд╣реЗ).

рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ Elasticsearch рдЖрд╣реЗ рдмреЙрдХреНрд╕ рд╡рд╛рдкрд░рдХрд░реНрддреЗ, рдЬреНрдпрд╛рдд рддреЗ рд╕рдВрд▓рдЧреНрди рдЖрд╣реЗрдд рдмреЙрдХреНрд╕ рднреВрдорд┐рдХрд╛. рдПрдХрджрд╛ рддреБрдореНрд╣реА рд╕реБрд░рдХреНрд╖рд╛ рд╕реЗрдЯрд┐рдВрдЧреНрдЬ рд╕рдХреНрд╖рдо рдХреЗрд▓реНрдпрд╛рд╡рд░, рддреБрдореНрд╣реА рддреНрдпрд╛рдВрдЪрд╛ рд╡рд╛рдкрд░ рддрд╛рдмрдбрддреЛрдм рд╕реБрд░реВ рдХрд░реВ рд╢рдХрддрд╛.

Elasticsearch рд╕реЗрдЯрд┐рдВрдЧреНрдЬрдордзреНрдпреЗ рд╕реБрд░рдХреНрд╖рд╛ рд╕рдХреНрд╖рдо рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рддреБрдореНрд╣рд╛рд▓рд╛ рддреЗ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдлрд╛рдЗрд▓рдордзреНрдпреЗ рдЬреЛрдбрдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ (рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рд╣реЗ рдЖрд╣реЗ elasticsearch/config/elasticsearch.yml) рдирд╡реАрди рдУрд│:

xpack.security.enabled: true

рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдлрд╛рдЗрд▓ рдмрджрд▓рд▓реНрдпрд╛рдирдВрддрд░, рдмрджрд▓ рдкреНрд░рднрд╛рд╡реА рд╣реЛрдгреНрдпрд╛рд╕рд╛рдареА Elasticsearch рд▓рд╛рдБрдЪ рдХрд░рд╛ рдХрд┐рдВрд╡рд╛ рд░реАрд╕реНрдЯрд╛рд░реНрдЯ рдХрд░рд╛. рдкреБрдвреАрд▓ рдкрд╛рдпрд░реА рдореНрд╣рдгрдЬреЗ рдмреЙрдХреНрд╕ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдирд╛ рдкрд╛рд╕рд╡рд░реНрдб рдирд┐рдпреБрдХреНрдд рдХрд░рдгреЗ. рдЦрд╛рд▓реАрд▓ рдХрдорд╛рдВрдб рд╡рд╛рдкрд░реВрди рд╣реЗ рдкрд░рд╕реНрдкрд░рд╕рдВрд╡рд╛рджреАрдкрдгреЗ рдХрд░реВрдпрд╛:

[elastic@node1 ~]$ ./elasticsearch/bin/elasticsearch-setup-passwords interactive
Initiating the setup of passwords for reserved users elastic,apm_system,kibana,logstash_system,beats_system,remote_monitoring_user.
You will be prompted to enter passwords as the process progresses.
Please confirm that you would like to continue [y/N]y


Enter password for [elastic]:
Reenter password for [elastic]:
Enter password for [apm_system]:
Reenter password for [apm_system]:
Enter password for [kibana]:
Reenter password for [kibana]:
Enter password for [logstash_system]:
Reenter password for [logstash_system]:
Enter password for [beats_system]:
Reenter password for [beats_system]:
Enter password for [remote_monitoring_user]:
Reenter password for [remote_monitoring_user]:
Changed password for user [apm_system]
Changed password for user [kibana]
Changed password for user [logstash_system]
Changed password for user [beats_system]
Changed password for user [remote_monitoring_user]
Changed password for user [elastic]

рдЖрдореНрд╣реА рддрдкрд╛рд╕рддреЛ:

[elastic@node1 ~]$ curl -u elastic 'node1:9200/_cat/nodes?pretty'
Enter host password for user 'elastic':
192.168.0.2 23 46 14 0.28 0.32 0.18 dim * node1

рдЖрдкрдг рд╕реНрд╡рдд: рд▓рд╛ рдкрд╛рдареАрд╡рд░ рдерд╛рдк рджреЗрдК рд╢рдХрддрд╛ - Elasticsearch рдмрд╛рдЬреВрд▓рд╛ рд╕реЗрдЯрд┐рдВрдЧреНрдЬ рдкреВрд░реНрдг рдЭрд╛рд▓реНрдпрд╛ рдЖрд╣реЗрдд. рдЖрддрд╛ рдХрд┐рдмрд╛рдирд╛ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рдгреНрдпрд╛рдЪреА рд╡реЗрд│ рдЖрд▓реА рдЖрд╣реЗ. рдЖрдкрдг рддреЗ рдЖрддрд╛ рдЪрд╛рд▓рд╡рд┐рд▓реНрдпрд╛рд╕, рддреНрд░реБрдЯреА рджрд┐рд╕реВрди рдпреЗрддреАрд▓, рдореНрд╣рдгреВрди рдХреА рд╕реНрдЯреЛрдЕрд░ рддрдпрд╛рд░ рдХрд░рдгреЗ рдорд╣рддреНрд╡рд╛рдЪреЗ рдЖрд╣реЗ. рд╣реЗ рджреЛрди рдХрдорд╛рдВрдбреНрд╕рдордзреНрдпреЗ рдХреЗрд▓реЗ рдЬрд╛рддреЗ (рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдХрд┐рдмрд╛рдирд╛ рдЖрдгрд┐ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрд╕рд░реНрдЪ рдордзреАрд▓ рдкрд╛рд╕рд╡рд░реНрдб рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдЪрд░рдгрд╛рд╡рд░ рдкреНрд░рд╡рд┐рд╖реНрдЯ рдХреЗрд▓реЗрд▓рд╛ рдкрд╛рд╕рд╡рд░реНрдб):

[elastic@node1 ~]$ ./kibana/bin/kibana-keystore add elasticsearch.username
[elastic@node1 ~]$ ./kibana/bin/kibana-keystore add elasticsearch.password

рд╕рд░реНрд╡рдХрд╛рд╣реА рдмрд░реЛрдмрд░ рдЕрд╕рд▓реНрдпрд╛рд╕, рдХрд┐рдмрд╛рдирд╛ рд▓реЙрдЧрд┐рди рдЖрдгрд┐ рдкрд╛рд╕рд╡рд░реНрдб рд╡рд┐рдЪрд╛рд░рдгреНрдпрд╛рд╕ рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрд▓. рдореВрд│ рд╕рджрд╕реНрдпрддреНрд╡рд╛рдордзреНрдпреЗ рдЕрдВрддрд░реНрдЧрдд рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрд╡рд░ рдЖрдзрд╛рд░рд┐рдд рд░реЛрд▓ рдореЙрдбреЗрд▓ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗ. рдЧреЛрд▓реНрдбрдкрд╛рд╕реВрди рд╕реБрд░реБрд╡рд╛рдд рдХрд░реВрди, рддреБрдореНрд╣реА рдмрд╛рд╣реНрдп рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдкреНрд░рдгрд╛рд▓реА - LDAP, PKI, рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдЖрдгрд┐ рд╕рд┐рдВрдЧрд▓ рд╕рд╛рдЗрди-рдСрди рд╕рд┐рд╕реНрдЯрдо рдХрдиреЗрдХреНрдЯ рдХрд░реВ рд╢рдХрддрд╛.

рд▓реЙрдХ рдЖрдгрд┐ рдХреА рдЕрдВрддрд░реНрдЧрдд рд▓рд╡рдЪрд┐рдХ: рдЖрдд рдЖрдгрд┐ рдмрд╛рд╣реЗрд░реВрди рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрд╕рд░реНрдЪ рдХреНрд▓рд╕реНрдЯрд░ рд╕реБрд░рдХреНрд╖рд╛ рдкрд░реНрдпрд╛рдп рд╕рдХреНрд╖рдо рдХрд░рдгреЗ

Elasticsearch рдордзреАрд▓ рд╡рд╕реНрддреВрдВрд╡рд░реАрд▓ рдкреНрд░рд╡реЗрд╢ рдЕрдзрд┐рдХрд╛рд░ рджреЗрдЦреАрд▓ рдорд░реНрдпрд╛рджрд┐рдд рдЕрд╕реВ рд╢рдХрддрд╛рдд. рддрдерд╛рдкрд┐, рджрд╕реНрддрдРрд╡рдЬ рдХрд┐рдВрд╡рд╛ рдлреАрд▓реНрдбрд╕рд╛рдареА рдЕрд╕реЗрдЪ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рддреБрдореНрд╣рд╛рд▓рд╛ рд╕рд╢реБрд▓реНрдХ рд╕рджрд╕реНрдпрддрд╛ рдЖрд╡рд╢реНрдпрдХ рдЕрд╕реЗрд▓ (рд╣реА рд▓рдХреНрдЭрд░реА рдкреНрд▓реЕрдЯрд┐рдирдо рдкрд╛рддрд│реАрдкрд╛рд╕реВрди рд╕реБрд░реВ рд╣реЛрддреЗ). рдпрд╛ рд╕реЗрдЯрд┐рдВрдЧреНрдЬ рдХрд┐рдмрд╛рдирд╛ рдЗрдВрдЯрд░рдлреЗрд╕рдордзреНрдпреЗ рдХрд┐рдВрд╡рд╛ рджреНрд╡рд╛рд░реЗ рдЙрдкрд▓рдмреНрдз рдЖрд╣реЗрдд рд╕реБрд░рдХреНрд╖рд╛ API. рддреБрдореНрд╣реА рдЖрдзреАрдЪ рдкрд░рд┐рдЪрд┐рдд рджреЗрд╡ рдЯреВрд▓реНрд╕ рдореЗрдиреВрджреНрд╡рд╛рд░реЗ рддрдкрд╛рд╕реВ рд╢рдХрддрд╛:

рднреВрдорд┐рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдгреЗ

PUT /_security/role/ruslan_i_ludmila_role
{
  "cluster": [],
  "indices": [
    {
      "names": [ "ruslan_i_ludmila" ],
      "privileges": ["read", "view_index_metadata"]
    }
  ]
}

рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рддрдпрд╛рд░ рдХрд░рдгреЗ

POST /_security/user/pushkin
{
  "password" : "nataliaonelove",
  "roles" : [ "ruslan_i_ludmila_role", "kibana_user" ],
  "full_name" : "Alexander Pushkin",
  "email" : "[email protected]",
  "metadata" : {
    "hometown" : "Saint-Petersburg"
  }
}

Elasticsearch рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд╛

рдЬреЗрд╡реНрд╣рд╛ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрд╕рд░реНрдЪ рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ рдЪрд╛рд▓рддреЗ (рдЬреЗ рд╕рд╛рдорд╛рдиреНрдп рдЖрд╣реЗ), рддреЗрд╡реНрд╣рд╛ рдХреНрд▓рд╕реНрдЯрд░рдордзреАрд▓ рд╕реБрд░рдХреНрд╖рд╛ рд╕реЗрдЯрд┐рдВрдЧреНрдЬ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рд╣реЛрддрд╛рдд. рдиреЛрдбреНрд╕рдордзреАрд▓ рд╕реБрд░рдХреНрд╖рд┐рдд рд╕рдВрд╡рд╛рджрд╛рд╕рд╛рдареА, Elasticsearch TLS рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╡рд╛рдкрд░рддреЗ. рддреНрдпрд╛рдВрдЪреНрдпрд╛рдордзреНрдпреЗ рд╕реБрд░рдХреНрд╖рд┐рдд рд╕рдВрд╡рд╛рдж рд╕реЗрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рддреБрдореНрд╣рд╛рд▓рд╛ рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ. рдЖрдореНрд╣реА PEM рд╕реНрд╡рд░реВрдкрд╛рдд рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЖрдгрд┐ рдЦрд╛рдЬрдЧреА рдХреА рд╡реНрдпреБрддреНрдкрдиреНрди рдХрд░рддреЛ:

[elastic@node1 ~]$ ./elasticsearch/bin/elasticsearch-certutil ca --pem

рд╡рд░реАрд▓ рдЖрджреЗрд╢ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХреЗрд▓реНрдпрд╛рдирдВрддрд░, рдирд┐рд░реНрджреЗрд╢рд┐рдХреЗрдд /../elasticsearch рд╕рдВрдЧреНрд░рд╣рдг рджрд┐рд╕реЗрд▓ elastic-stack-ca.zip. рддреНрдпрд╛рдЪреНрдпрд╛ рдЖрдд рддреБрдореНрд╣рд╛рд▓рд╛ рдПрдХ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЖрдгрд┐ рд╡рд┐рд╕реНрддрд╛рд░рд╛рдВрд╕рд╣ рдЦрд╛рдЬрдЧреА рдХреА рдорд┐рд│реЗрд▓ crt ╨╕ рдХреА рдЕрдиреБрдХреНрд░рдореЗ рддреНрдпрд╛рдВрдирд╛ рд╕рд╛рдорд╛рдпрд┐рдХ рд╕рдВрд╕рд╛рдзрдирд╛рд╡рд░ рдареЗрд╡рдгреНрдпрд╛рдЪрд╛ рд╕рд▓реНрд▓рд╛ рджрд┐рд▓рд╛ рдЬрд╛рддреЛ, рдЬреЛ рдХреНрд▓рд╕реНрдЯрд░рдордзреАрд▓ рд╕рд░реНрд╡ рдиреЛрдбреНрд╕рдордзреВрди рдкреНрд░рд╡реЗрд╢рдпреЛрдЧреНрдп рдЕрд╕рд╛рд╡рд╛.

рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдбрд▓рд╛ рдЖрддрд╛ рд╕реНрд╡рддрдГрдЪреА рдкреНрд░рдорд╛рдгрдкрддреНрд░реЗ рдЖрдгрд┐ рд╕рд╛рдорд╛рдпрд┐рдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХреЗрддреАрд▓ рдЦрд╛рдЬрдЧреА рдХреА рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗрдд. рдХрдорд╛рдВрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рддрд╛рдирд╛, рддреБрдореНрд╣рд╛рд▓рд╛ рдкрд╛рд╕рд╡рд░реНрдб рд╕реЗрдЯ рдХрд░рдгреНрдпрд╛рд╕ рд╕рд╛рдВрдЧрд┐рддрд▓реЗ рдЬрд╛рдИрд▓. рдкрд░рд╕реНрдкрд░рд╕рдВрд╡рд╛рджреА рдиреЛрдбреНрд╕рдЪреНрдпрд╛ рдкреВрд░реНрдг рдкрдбрддрд╛рд│рдгреАрд╕рд╛рдареА рддреБрдореНрд╣реА рдЕрддрд┐рд░рд┐рдХреНрдд рдкрд░реНрдпрд╛рдп -ip рдЖрдгрд┐ -dns рдЬреЛрдбреВ рд╢рдХрддрд╛.

[elastic@node1 ~]$ ./elasticsearch/bin/elasticsearch-certutil cert --ca-cert /shared_folder/ca/ca.crt --ca-key /shared_folder/ca/ca.key

рдХрдорд╛рдВрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХреЗрд▓реНрдпрд╛рдореБрд│реЗ, рдЖрдореНрд╣рд╛рд▓рд╛ рдкрд╛рд╕рд╡рд░реНрдбрджреНрд╡рд╛рд░реЗ рд╕рдВрд░рдХреНрд╖рд┐рдд PKCS#12 рдлреЙрд░рдореЕрдЯрдордзреНрдпреЗ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЖрдгрд┐ рдЦрд╛рдЬрдЧреА рдХреА рдкреНрд░рд╛рдкреНрдд рд╣реЛрдИрд▓. рдлрдХреНрдд рд╡реНрдпреБрддреНрдкрдиреНрди рдХреЗрд▓реЗрд▓реА рдлрд╛рдИрд▓ рд╣рд▓рд╡рдгреЗ рдмрд╛рдХреА рдЖрд╣реЗ p12 рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдирд┐рд░реНрджреЗрд╢рд┐рдХреЗрдд:

[elastic@node1 ~]$ mv elasticsearch/elastic-certificates.p12 elasticsearch/config

рдлреЙрд░реНрдореЗрдЯрдордзреНрдпреЗ рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╛рдордзреНрдпреЗ рдкрд╛рд╕рд╡рд░реНрдб рдЬреЛрдбрд╛ p12 рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдбрд╡рд░ рдХреАрд╕реНрдЯреЛрдЕрд░ рдЖрдгрд┐ рдЯреНрд░рд╕реНрдЯрд╕реНрдЯреЛрдЕрд░рдордзреНрдпреЗ:

[elastic@node1 ~]$ ./elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password
[elastic@node1 ~]$ ./elasticsearch/bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password

рдЖрдзреАрдЪ рдорд╛рд╣реАрдд рдЖрд╣реЗ elasticsearch.yml рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдбреЗрдЯрд╛рд╕рд╣ рдУрд│реА рдЬреЛрдбрдгреЗ рдмрд╛рдХреА рдЖрд╣реЗ:

xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: elastic-certificates.p12

рдЖрдореНрд╣реА рд╕рд░реНрд╡ Elasticsearch рдиреЛрдбреНрд╕ рд▓рд╛рдБрдЪ рдХрд░рддреЛ рдЖрдгрд┐ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рддреЛ рдХреЗрд╕ рдХреБрд░рд│реЗ рдХрд░рдгреЗ. рд╕рд░реНрд╡рдХрд╛рд╣реА рдпреЛрдЧреНрдпрд░рд┐рддреНрдпрд╛ рдХреЗрд▓реЗ рдЕрд╕рд▓реНрдпрд╛рд╕, рдЕрдиреЗрдХ рдиреЛрдбреНрд╕рд╕рд╣ рдкреНрд░рддрд┐рд╕рд╛рдж рдкрд░рдд рдХреЗрд▓рд╛ рдЬрд╛рдИрд▓:

[elastic@node1 ~]$ curl node1:9200/_cat/nodes -u elastic:password                                                                                    
172.18.0.3 43 75 4 0.00 0.05 0.05 dim * node2                                                                                                                     
172.18.0.4 21 75 3 0.00 0.05 0.05 dim - node3                                                                                                                     
172.18.0.2 39 75 4 0.00 0.05 0.05 dim - node1

рдЖрдгрдЦреА рдПрдХ рд╕реБрд░рдХреНрд╖рд╛ рдкрд░реНрдпрд╛рдп рдЖрд╣реЗ - IP рдкрддреНрддрд╛ рдлрд┐рд▓реНрдЯрд░рд┐рдВрдЧ (рдЧреЛрд▓реНрдб рд▓реЗрд╡реНрд╣рд▓рд╡рд░реАрд▓ рд╕рджрд╕реНрдпрддрд╛рдВрдордзреНрдпреЗ рдЙрдкрд▓рдмреНрдз). рддреБрдореНрд╣рд╛рд▓рд╛ IP рдкрддреНрддреНрдпрд╛рдВрдЪреА рдкрд╛рдВрдврд░реА рд╕реВрдЪреА рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреА рдЕрдиреБрдорддреА рджреЗрддреЗ рдЬреНрдпрд╛рд╡рд░реВрди рддреБрдореНрд╣рд╛рд▓рд╛ рдиреЛрдбреНрд╕рдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рдЖрд╣реЗ.

Elasticsearch рдХреНрд▓рд╕реНрдЯрд░рдЪреНрдпрд╛ рдмрд╛рд╣реЗрд░ рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рдХрд░рдгреЗ

рдХреНрд▓рд╕реНрдЯрд░рдЪреНрдпрд╛ рдмрд╛рд╣реЗрд░ рдореНрд╣рдгрдЬреЗ рдмрд╛рд╣реНрдп рд╕рд╛рдзрдиреЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдгреЗ: рдХрд┐рдмрд╛рдирд╛, рд▓реЙрдЧрд╕реНрдЯреЕрд╢, рдмреАрдЯреНрд╕ рдХрд┐рдВрд╡рд╛ рдЗрддрд░ рдмрд╛рд╣реНрдп рдХреНрд▓рд╛рдпрдВрдЯ.

рд▓реЙрдХ рдЖрдгрд┐ рдХреА рдЕрдВрддрд░реНрдЧрдд рд▓рд╡рдЪрд┐рдХ: рдЖрдд рдЖрдгрд┐ рдмрд╛рд╣реЗрд░реВрди рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрд╕рд░реНрдЪ рдХреНрд▓рд╕реНрдЯрд░ рд╕реБрд░рдХреНрд╖рд╛ рдкрд░реНрдпрд╛рдп рд╕рдХреНрд╖рдо рдХрд░рдгреЗ

https рд╕рд╛рдареА рд╕рдорд░реНрдерди рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА (http рдРрд╡рдЬреА), elasticsearch.yml рд╡рд░ рдирд╡реАрди рдУрд│реА рдЬреЛрдбрд╛:

xpack.security.http.ssl.enabled: true
xpack.security.http.ssl.keystore.path: elastic-certificates.p12
xpack.security.http.ssl.truststore.path: elastic-certificates.p12

рдХрд╛рд░рдг рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдкрд╛рд╕рд╡рд░реНрдб рд╕рдВрд░рдХреНрд╖рд┐рдд рдЖрд╣реЗ, рддреЗ рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдбрд╡рд░реАрд▓ рдХреАрд╕реНрдЯреЛрдЕрд░ рдЖрдгрд┐ рдЯреНрд░рд╕реНрдЯрд╕реНрдЯреЛрдЕрд░рдордзреНрдпреЗ рдЬреЛрдбрд╛:

[elastic@node1 ~]$ ./elasticsearch/bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password
[elastic@node1 ~]$ ./elasticsearch/bin/elasticsearch-keystore add xpack.security.http.ssl.truststore.secure_password

рдХреА рдЬреЛрдбрд▓реНрдпрд╛рдирдВрддрд░, Elasticsearch рдиреЛрдбреНрд╕ https рджреНрд╡рд╛рд░реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рддрдпрд╛рд░ рдЖрд╣реЗрдд. рдЖрддрд╛ рддреЗ рд▓реЙрдиреНрдЪ рдХреЗрд▓реЗ рдЬрд╛рдК рд╢рдХрддрд╛рдд.

рдкреБрдвреАрд▓ рдкрд╛рдпрд░реА рдореНрд╣рдгрдЬреЗ рдХрд┐рдмрд╛рдирд╛ рдХрдиреЗрдХреНрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдПрдХ рдХреА рддрдпрд╛рд░ рдХрд░рдгреЗ рдЖрдгрд┐ рддреА рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирдордзреНрдпреЗ рдЬреЛрдбрдгреЗ. рд╕рд╛рдорд╛рдпрд┐рдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХреЗрдд рдЖрдзреАрдкрд╛рд╕реВрди рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╛рд╡рд░ рдЖрдзрд╛рд░рд┐рдд, рдЖрдореНрд╣реА PEM рд╕реНрд╡рд░реВрдкрд╛рдд рдкреНрд░рдорд╛рдгрдкрддреНрд░ рддрдпрд╛рд░ рдХрд░реВ (PKCS#12 Kibana, Logstash рдЖрдгрд┐ Beats рдЕрджреНрдпрд╛рдк рд╕рдорд░реНрдерди рджреЗрдд рдирд╛рд╣реАрдд):

[elastic@node1 ~]$ ./elasticsearch/bin/elasticsearch-certutil cert --ca-cert /shared_folder/ca/ca.crt --ca-key /shared_folder/ca/ca.key --pem

рдХрд┐рдмрд╛рдирд╛ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирд╕рд╣ рдлреЛрд▓реНрдбрд░рдордзреНрдпреЗ рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдХреА рдЕрдирдкреЕрдХ рдХрд░рдгреЗ рдмрд╛рдХреА рдЖрд╣реЗ:

[elastic@node1 ~]$ unzip elasticsearch/certificate-bundle.zip -d kibana/config

рдХреА рддреЗрдереЗ рдЖрд╣реЗрдд, рддреНрдпрд╛рдореБрд│реЗ рдлрдХреНрдд рдХрд┐рдмрд╛рдирд╛ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдмрджрд▓рдгреЗ рдмрд╛рдХреА рдЖрд╣реЗ рдЬреЗрдгреЗрдХрд░реВрди рддреЗ рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕ рд╕реБрд░реБрд╡рд╛рдд рдХрд░реЗрд▓. kibana.yml рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдлрд╛рдЗрд▓рдордзреНрдпреЗ, HTTP рд▓рд╛ https рдордзреНрдпреЗ рдмрджрд▓рд╛ рдЖрдгрд┐ SSL рдХрдиреЗрдХреНрд╢рди рд╕реЗрдЯрд┐рдВрдЧреНрдЬрд╕рд╣ рдУрд│реА рдЬреЛрдбрд╛. рд╢реЗрд╡рдЯрдЪреНрдпрд╛ рддреАрди рдУрд│реА рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдЪреНрдпрд╛ рдмреНрд░рд╛рдЙрдЭрд░ рдЖрдгрд┐ рдХрд┐рдмрд╛рдирд╛ рджрд░рдореНрдпрд╛рди рд╕реБрд░рдХреНрд╖рд┐рдд рд╕рдВрдкреНрд░реЗрд╖рдг рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рддрд╛рдд.

elasticsearch.hosts: ["https://${HOSTNAME}:9200"]
elasticsearch.ssl.certificateAuthorities: /shared_folder/ca/ca.crt
elasticsearch.ssl.verificationMode: certificate
server.ssl.enabled: true
server.ssl.key: /../kibana/config/instance/instance.key
server.ssl.certificate: /../kibana/config/instance/instance.crt

рдЕрд╢рд╛ рдкреНрд░рдХрд╛рд░реЗ, рд╕реЗрдЯрд┐рдВрдЧреНрдЬ рдкреВрд░реНрдг рдЭрд╛рд▓реНрдпрд╛ рдЖрд╣реЗрдд рдЖрдгрд┐ Elasticsearch рдХреНрд▓рд╕реНрдЯрд░рдордзреАрд▓ рдбреЗрдЯрд╛рдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХреЗрд▓рд╛ рдЖрд╣реЗ.

рдЬрд░ рддреБрдореНрд╣рд╛рд▓рд╛ рд╡рд┐рдирд╛рдореВрд▓реНрдп рдХрд┐рдВрд╡рд╛ рд╕рд╢реБрд▓реНрдХ рд╕рджрд╕реНрдпрддрд╛рдВрд╡рд░реАрд▓ рд▓рд╡рдЪрд┐рдХ рд╕реНрдЯреЕрдХрдЪреНрдпрд╛ рдХреНрд╖рдорддрд╛рдВрдмрджреНрджрд▓ рдкреНрд░рд╢реНрди рдЕрд╕рд▓реНрдпрд╛рд╕, рдХрд╛рд░реНрдпрд╛рдВрдЪреЗ рдирд┐рд░реАрдХреНрд╖рдг рдХрд░рд╛ рдХрд┐рдВрд╡рд╛ SIEM рд╕рд┐рд╕реНрдЯрдо рддрдпрд╛рд░ рдХрд░рд╛, рддреНрдпрд╛рдВрдирд╛ рд╡рд┐рдирдВрддреА рдХрд░рд╛ рдЕрднрд┐рдкреНрд░рд╛рдп рдлреЙрд░реНрдо рдЖрдордЪреНрдпрд╛ рд╡реЗрдмрд╕рд╛рдЗрдЯрд╡рд░.

рд╣реЕрдмреНрд░реЗрд╡рд░реАрд▓ рд▓рд╡рдЪрд┐рдХ рд╕реНрдЯреЕрдХрдмрджреНрджрд▓ рдЖрдордЪреЗ рдЕрдзрд┐рдХ рд▓реЗрдЦ:

рд▓рд╡рдЪрд┐рдХ рд╕реНрдЯреЕрдХрдордзреНрдпреЗ рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рд╕рдордЬреВрди рдШреЗрдгреЗ (рдЙрд░реНрдл рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрд╕рд░реНрдЪ, рдЙрд░реНрдл тАЛтАЛрдИрдПрд▓рдХреЗ)

рд▓рд╡рдЪрд┐рдХ рд╢реЛрдз рдЖрдХрд╛рд░

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛