рддрд╛рд▓рд╛ рдФрд░ рдЪрд╛рдмреА рдХреЗ рдиреАрдЪреЗ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХ: рдЕрдВрджрд░ рдФрд░ рдмрд╛рд╣рд░ рд╕реЗ рдкрд╣реБрдВрдЪ рдХреЗ рд▓рд┐рдП рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рдХреНрд▓рд╕реНрдЯрд░ рд╕реБрд░рдХреНрд╖рд╛ рд╡рд┐рдХрд▓реНрдк рд╕рдХреНрд╖рдо рдХрд░рдирд╛

рддрд╛рд▓рд╛ рдФрд░ рдЪрд╛рдмреА рдХреЗ рдиреАрдЪреЗ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХ: рдЕрдВрджрд░ рдФрд░ рдмрд╛рд╣рд░ рд╕реЗ рдкрд╣реБрдВрдЪ рдХреЗ рд▓рд┐рдП рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рдХреНрд▓рд╕реНрдЯрд░ рд╕реБрд░рдХреНрд╖рд╛ рд╡рд┐рдХрд▓реНрдк рд╕рдХреНрд╖рдо рдХрд░рдирд╛

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

  • рднреВрдорд┐рдХрд╛-рдЖрдзрд╛рд░рд┐рдд рдбреЗрдЯрд╛ рдПрдХреНрд╕реЗрд╕ рдореЙрдбрд▓
  • рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рднреАрддрд░ рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд╛
  • рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рдмрд╛рд╣рд░ рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рдХрд░рдирд╛

рдХрдЯ рдХреЗ рдЕрдВрддрд░реНрдЧрдд рд╡рд┐рд╡рд░рдг.

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

рдпрджрд┐ рдЖрдк 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

рдЖрдк рдЕрдкрдиреА рдкреАрда рдердкрдердкрд╛ рд╕рдХрддреЗ рд╣реИрдВ - рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рдкрдХреНрд╖ рдкрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдкреВрд░реА рд╣реЛ рдЧрдИ рд╣реИрдВред рдЕрдм рдХрд┐рдмрд╛рдирд╛ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рдЖ рдЧрдпрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдЕрднреА рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рддреНрд░реБрдЯрд┐рдпрд╛рдБ рджрд┐рдЦрд╛рдИ рджреЗрдВрдЧреА, рдЗрд╕рд▓рд┐рдП рдПрдХ рдХреБрдВрдЬреА рднрдВрдбрд╛рд░ рдмрдирд╛рдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдпрд╣ рджреЛ рдХрдорд╛рдВрдб рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (user Kibana рдФрд░ Elasticsearch рдореЗрдВ рдкрд╛рд╕рд╡рд░реНрдб рдирд┐рд░реНрдорд╛рдг рдЪрд░рдг рдореЗрдВ рджрд░реНрдЬ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдкрд╛рд╕рд╡рд░реНрдб):

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

рдпрджрд┐ рд╕рдм рдХреБрдЫ рд╕рд╣реА рд╣реИ, рддреЛ рдХрд┐рдмрд╛рдирд╛ рд▓реЙрдЧрд┐рди рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдорд╛рдВрдЧрдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрдЧрд╛ред рдмреЗрд╕рд┐рдХ рд╕рджрд╕реНрдпрддрд╛ рдореЗрдВ рдЖрдВрддрд░рд┐рдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдПрдХ рд░реЛрд▓ рдореЙрдбрд▓ рд╢рд╛рдорд┐рд▓ рд╣реИред рдЧреЛрд▓реНрдб рд╕реЗ рд╢реБрд░реВ рдХрд░рдХреЗ, рдЖрдк рдмрд╛рд╣рд░реА рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕рд┐рд╕реНрдЯрдо - рдПрд▓рдбреАрдПрдкреА, рдкреАрдХреЗрдЖрдИ, рдПрдХреНрдЯрд┐рд╡ рдбрд╛рдпрд░реЗрдХреНрдЯреНрд░реА рдФрд░ рд╕рд┐рдВрдЧрд▓ рд╕рд╛рдЗрди-рдСрди рд╕рд┐рд╕реНрдЯрдо рдХрдиреЗрдХреНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рддрд╛рд▓рд╛ рдФрд░ рдЪрд╛рдмреА рдХреЗ рдиреАрдЪреЗ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХ: рдЕрдВрджрд░ рдФрд░ рдмрд╛рд╣рд░ рд╕реЗ рдкрд╣реБрдВрдЪ рдХреЗ рд▓рд┐рдП рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рдХреНрд▓рд╕реНрдЯрд░ рд╕реБрд░рдХреНрд╖рд╛ рд╡рд┐рдХрд▓реНрдк рд╕рдХреНрд╖рдо рдХрд░рдирд╛

рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рдХреЗ рдЕрдВрджрд░ рд╡рд╕реНрддреБрдУрдВ рддрдХ рдкрд╣реБрдВрдЪ рдХреЗ рдЕрдзрд┐рдХрд╛рд░ рднреА рд╕реАрдорд┐рдд рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдпрд╛ рдлрд╝реАрд▓реНрдб рдХреЗ рд▓рд┐рдП рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдПрдХ рд╕рд╢реБрд▓реНрдХ рд╕рджрд╕реНрдпрддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА (рдпрд╣ рд╡рд┐рд▓рд╛рд╕рд┐рддрд╛ рдкреНрд▓реИрдЯрд┐рдирдо рд╕реНрддрд░ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИ)ред рдпреЗ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХрд┐рдмрд╛рдирд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ рдпрд╛ рдЗрд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ рд╕реБрд░рдХреНрд╖рд╛ рдПрдкреАрдЖрдИ. рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрд░рд┐рдЪрд┐рдд рджреЗрд╡ рдЯреВрд▓реНрд╕ рдореЗрдиреВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

рдПрдХ рднреВрдорд┐рдХрд╛ рдмрдирд╛рдирд╛

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 рдПрдХ рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рдЪрд▓рддрд╛ рд╣реИ (рдЬреЛ рд╕рд╛рдорд╛рдиреНрдп рд╣реИ), рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рднреАрддрд░ рд╕реБрд░рдХреНрд╖рд╛ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реЛ рдЬрд╛рддреА рд╣реИрдВред рдиреЛрдбреНрд╕ рдХреЗ рдмреАрдЪ рд╕реБрд░рдХреНрд╖рд┐рдд рд╕рдВрдЪрд╛рд░ рдХреЗ рд▓рд┐рдП, рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рдЯреАрдПрд▓рдПрд╕ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЙрдирдХреЗ рдмреАрдЪ рд╕реБрд░рдХреНрд╖рд┐рдд рд╕рдВрдкрд░реНрдХ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдПрдХ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рдо PEM рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдПрдХ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдФрд░ рдирд┐рдЬреА рдХреБрдВрдЬреА рдмрдирд╛рддреЗ рд╣реИрдВ:

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

рдЙрдкрд░реЛрдХреНрдд рдЖрджреЗрд╢ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ /../рд▓реЛрдЪрджрд╛рд░ рдЦреЛрдЬ рдкреБрд░рд╛рд▓реЗрдЦ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХ-рд╕реНрдЯреИрдХ-рд╕реАрдП.рдЬрд╝рд┐рдк. рдЗрд╕рдХреЗ рдЕрдВрджрд░ рдЖрдкрдХреЛ рдПрдХ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдФрд░ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде рдПрдХ рдирд┐рдЬреА рдХреБрдВрдЬреА рдорд┐рд▓реЗрдЧреА CRT ╨╕ рдХреБрдВрдЬреА рдХреНрд░рдорд╢ред рдЙрдиреНрд╣реЗрдВ рдПрдХ рд╕рд╛рдЭрд╛ рд╕рдВрд╕рд╛рдзрди рдкрд░ рд░рдЦрдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреА рдЬрд╛рддреА рд╣реИ, рдЬрд┐рд╕реЗ рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рд╕рднреА рдиреЛрдбреНрд╕ рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдХреЛ рдЕрдм рд╕рд╛рдЭрд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдФрд░ рдирд┐рдЬреА рдХреБрдВрдЬреА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╕рдордп, рдЖрдкрд╕реЗ рдкрд╛рд╕рд╡рд░реНрдб рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рдВрдЧ рдиреЛрдбреНрд╕ рдХреЗ рдкреВрд░реНрдг рд╕рддреНрдпрд╛рдкрди рдХреЗ рд▓рд┐рдП рдЖрдк рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рдХрд▓реНрдк -рдЖрдИрдкреА рдФрд░ -рдбреАрдПрдирдПрд╕ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред

[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

рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬреНрдЮрд╛рдд рдерд╛ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕рд░реНрдЪ.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

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

рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рдмрд╛рд╣рд░ рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рдХрд░рдирд╛

рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рдмрд╛рд╣рд░ рдХрд╛ рдЕрд░реНрде рд╣реИ рдмрд╛рд╣рд░реА рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛: рдХрд┐рдмрд╛рдирд╛, рд▓реЙрдЧрд╕реНрдЯреИрд╢, рдмреАрдЯреНрд╕ рдпрд╛ рдЕрдиреНрдп рдмрд╛рд╣рд░реА рдХреНрд▓рд╛рдЗрдВрдЯред

рддрд╛рд▓рд╛ рдФрд░ рдЪрд╛рдмреА рдХреЗ рдиреАрдЪреЗ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХ: рдЕрдВрджрд░ рдФрд░ рдмрд╛рд╣рд░ рд╕реЗ рдкрд╣реБрдВрдЪ рдХреЗ рд▓рд┐рдП рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рдХреНрд▓рд╕реНрдЯрд░ рд╕реБрд░рдХреНрд╖рд╛ рд╡рд┐рдХрд▓реНрдк рд╕рдХреНрд╖рдо рдХрд░рдирд╛

https (http рдХреЗ рдмрдЬрд╛рдп) рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП,asticsearch.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 рдХрд┐рдмрд╛рдирд╛, рд▓реЙрдЧрд╕реНрдЯреИрд╢ рдФрд░ рдмреАрдЯреНрд╕ рдЕрднреА рддрдХ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ):

[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

рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдкреВрд░реА рд╣реЛ рдЬрд╛рддреА рд╣реИрдВ рдФрд░ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рдбреЗрдЯрд╛ рддрдХ рдкрд╣реБрдВрдЪ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рд╣реЛ рдЬрд╛рддреА рд╣реИред

рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдореБрдлрд╝реНрдд рдпрд╛ рд╕рд╢реБрд▓реНрдХ рд╕рдмреНрд╕рдХреНрд░рд┐рдкреНрд╢рди, рдХрд╛рд░реНрдпреЛрдВ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдпрд╛ рдПрд╕рдЖрдИрдИрдПрдо рд╕рд┐рд╕реНрдЯрдо рдмрдирд╛рдиреЗ рдкрд░ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХ рд╕реНрдЯреИрдХ рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреНрд░рд╢реНрди рд╣реИрдВ, рддреЛ рдПрдХ рдЕрдиреБрд░реЛрдз рдЫреЛрдбрд╝реЗрдВ рдкреНрд░рддрд┐рдкреБрд╖реНрдЯреА рдлрд╝рд╛рд░реНрдо рд╣рдорд╛рд░реА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░

рд╣реИрдмреНрд░реЗ рдкрд░ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХ рд╕реНрдЯреИрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣рдорд╛рд░реЗ рдФрд░ рд▓реЗрдЦ:

рдЗрд▓рд╛рд╕реНрдЯрд┐рдХ рд╕реНрдЯреИрдХ рдореЗрдВ рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдХреЛ рд╕рдордЭрдирд╛ (рдЙрд░реНрдл рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ, рдЙрд░реНрдл тАЛтАЛрдИрдПрд▓рдХреЗ)

рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рдЖрдХрд╛рд░

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

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ