
рдкрд┐рдЫрд▓реЗ
рд▓реЗрдЦ рдореЗрдВ, рд╣рдордиреЗ
ELK рд╕реНрдЯреИрдХ рдХреЗ рд╕рд╛рде рдореБрд▓рд╛рдХрд╛рдд рдХреА рдХрд┐ рдЗрд╕рдореЗрдВ рдХреМрди рд╕реЗ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдЙрддреНрдкрд╛рдж рд╣реИрдВред рдФрд░ рдЬрдм ELK рд╕реНрдЯреИрдХ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдкрд╣рд▓реЗ рдХрд╛рд░реНрдп рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ рддрд╛рдХрд┐ рдЖрдЧреЗ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдореЗрдВ рднрдВрдбрд╛рд░рдг рдХреЗ рд▓рд┐рдП рд▓реЙрдЧ рднреЗрдЬрд╛ рдЬрд╛ рд╕рдХреЗред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рд╕рд┐рд░реНрдл рд╢рдмреНрджреЛрдВ рдореЗрдВ рд╣реИ, рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рдХреБрдЫ рдХреНрд╖реЗрддреНрд░реЛрдВ рдФрд░ рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЙрдЧ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдЗрдВрдЬреАрдирд┐рдпрд░ рдХреЛ рдЕрдВрддрд┐рдо рд╕рд┐рд╕реНрдЯрдо рд╕реЗ рднреЗрдЬреЗ рдЧрдП рд╕рдВрджреЗрд╢ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдпрд╣ рдХрдИ рддрд░реАрдХреЛрдВ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ - рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рд╕реНрд╡рдпрдВ рд▓рд┐рдЦрдХрд░, рдЬреЛ рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдЬреЛрдбрд╝ рджреЗрдЧрд╛ рдпрд╛ рддреИрдпрд╛рд░-рдХрд┐рдП рдЧрдП рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ред рдЗрд╕ рдкрд╛рдареНрдпрдХреНрд░рдо рдореЗрдВ, рд╣рдо
рд▓реЙрдЧрд╕реНрдЯреИрд╢ рд╕рдорд╛рдзрд╛рди рдХреЛ
рджреЗрдЦреЗрдВрдЧреЗ , рдЬреЛ рдХрд┐
рдИрдПрд▓рдХреЗ рд╕реНрдЯреИрдХ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред рд╣рдо рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рдЖрдк рд▓реЙрдЧ рд╕рд┐рд╕реНрдЯрдо рд╕реЗ рд▓реЙрдЧ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рд▓реЙрдЧ рдХреИрд╕реЗ рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рд╣рдо рдПрд▓рд┐рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдФрд░ рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВрдЧреЗред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЪреЗрдХ рдкреНрд╡рд╛рдЗрдВрдЯ рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рд╕реЗ рд▓реЙрдЧ рдХреЛ рдЖрдиреЗ рд╡рд╛рд▓реА рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрдВред
рдкрд╛рдареНрдпрдХреНрд░рдо рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ, рдИрдПрд▓рдХреЗ рд╕реНрдЯреИрдХ рдХреА рд╕реНрдерд╛рдкрдирд╛ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд▓реЗрдЦ рд╣реИрдВ, рд╣рдо рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдШрдЯрдХ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗред
рд▓реЙрдЧрд╕реНрдЯреИрд╢ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрд╛рд░реНрдп рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ:
- рд╕рддреНрдпрд╛рдкрди рдХрд┐ elasticsearch рд▓реЙрдЧ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВрдЧреЗ (рдкреЛрд░реНрдЯ рд╕реНрд╡рд╛рд╕реНрдереНрдп рдФрд░ рдЦреБрд▓реЗрдкрди рдХреА рдкреБрд╖реНрдЯрд┐)ред
- рд╣рдо рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╣рдо рд▓реЙрдЧрд╕реНрдЯреИрд╢ рдореЗрдВ рдШрдЯрдирд╛рдУрдВ рдХреЛ рдХреИрд╕реЗ рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВ, рдПрдХ рд╡рд┐рдзрд┐ рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
- рд▓реЙрдЧрд╕реНрдЯреИрд╢ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЗрдирдкреБрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВред
- рд▓реЙрдЧ рдЗрди рд╕рдВрджреЗрд╢ рдХреНрдпрд╛ рджрд┐рдЦрддрд╛ рд╣реИ, рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдо рдбрд┐рдмрдЧ рдореЛрдб рдореЗрдВ рд▓реЙрдЧрд╕реНрдЯреИрд╢ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВред
- рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВред
- ElasticSearch рдореЗрдВ рд╕рд╣реА рдЖрдЙрдЯрдкреБрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВред
- рд▓реЙрдЧрд╕реНрдЯреИрд╢ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ред
- Kibana рдореЗрдВ рд▓реЙрдЧ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВред
рдЖрдЗрдП рдкреНрд░рддреНрдпреЗрдХ рдЖрдЗрдЯрдо рдкрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:
рдЬрд╛рдБрдЪ рдХрд░рдирд╛ рдХрд┐ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рд▓реЙрдЧреНрд╕ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдЧрд╛
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдХрд░реНрд▓ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрд╕ рд╕рд┐рд╕реНрдЯрдо рд╕реЗ рдПрд▓рд┐рд╕реНрдЯрд┐рдХреНрд╕ рдХреА рдкрд╣реБрдВрдЪ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕ рдкрд░ рд▓реЙрдЧрд╕реНрдЯреИрд╢ рддреИрдирд╛рдд рд╣реИред рдпрджрд┐ рдЖрдкрдиреЗ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдХрд░реНрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ / рдкрд╛рд╕рд╡рд░реНрдб рднреА рдкрд╛рд╕ рдХрд░реЗрдВ, рдкреЛрд░реНрдЯ 9200 рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдпрджрд┐ рдЖрдкрдиреЗ рдЗрд╕реЗ рдирд╣реАрдВ рдмрджрд▓рд╛ рд╣реИред рдпрджрд┐ рдиреАрдЪреЗ рджрд┐рдпрд╛ рдЧрдпрд╛ рдЙрддреНрддрд░ рдЬреИрд╕рд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ, рддреЛ рд╕рдм рдХреБрдЫ рдХреНрд░рдо рдореЗрдВ рд╣реИред
[elastic@elasticsearch ~]$ curl -u <<user_name>> : <<password>> -sS -XGET "<<ip_address_elasticsearch>>:9200" { "name" : "elastic-1", "cluster_name" : "project", "cluster_uuid" : "sQzjTTuCR8q4ZO6DrEis0A", "version" : { "number" : "7.4.1", "build_flavor" : "default", "build_type" : "rpm", "build_hash" : "fc0eeb6e2c25915d63d871d344e3d0b45ea0ea1e", "build_date" : "2019-10-22T17:16:35.176724Z", "build_snapshot" : false, "lucene_version" : "8.2.0", "minimum_wire_compatibility_version" : "6.8.0", "minimum_index_compatibility_version" : "6.0.0-beta1" }, "tagline" : "You Know, for Search" } [elastic@elasticsearch ~]$
рдпрджрд┐ рдЙрддреНрддрд░ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИ, рддреЛ рдХрдИ рдкреНрд░рдХрд╛рд░ рдХреА рддреНрд░реБрдЯрд┐рдпрд╛рдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ: рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕ рдЦреЛрдЬ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреА рд╣реИ, рдЧрд▓рдд рдкреЛрд░реНрдЯ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╛ рдкреЛрд░реНрдЯ рдХреЛ рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рджреНрд╡рд╛рд░рд╛ рдЙрд╕ рд╕рд░реНрд╡рд░ рдкрд░ рдЕрд╡рд░реБрджреНрдз рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рдЗрд▓рд╛рд╕реНрдЯрд┐рд╕рд░реНрдЪ рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрддрд╛ рд╣реИред
рдПрдХ рдмрд┐рдВрджреБ рдмрд┐рдВрджреБ рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рд╕реЗ рд▓реЙрдЧрд╕реНрдЯреИрд╢ рдореЗрдВ рд▓реЙрдЧ рдХреИрд╕реЗ рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ
рдЪреЗрдХ рдкреНрд╡рд╛рдЗрдВрдЯ рдкреНрд░рдмрдВрдзрди рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде, рдЖрдк log_exporter рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓реЙрдЧрд╕реНрдЯреИрд╢ рдХреЛ рд▓реЙрдЧрд╕реНрдЯреИрд╢ рдореЗрдВ рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВ, рдЖрдк рдЗрд╕
рд▓реЗрдЦ рдореЗрдВ рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣рд╛рдВ рд╣рдо рдХреЗрд╡рд▓ рдЙрд╕ рдХрдорд╛рдВрдб рдХреЛ рдЫреЛрдбрд╝ рджреЗрдВрдЧреЗ рдЬреЛ рд╕реНрдЯреНрд░реАрдо рдмрдирд╛рддрд╛ рд╣реИ:
cp_log_export рдирд╛рдо рдЬреЛрдбрд╝реЗрдВ check_point_syslog рд▓рдХреНрд╖реНрдп-рд╕рд░реНрд╡рд░ << ip_address_logstash >> рд▓рдХреНрд╖реНрдп-рдкреЛрд░реНрдЯ 5555 рдкреНрд░реЛрдЯреЛрдХреЙрд▓ tcp рдкреНрд░рд╛рд░реВрдк рдЬреЗрдиреЗрд░рд┐рдХ рд░реАрдб-рдореЛрдб рдЕрд░реНрдз-рдПрдХреАрдХреГрдд
<< ip_address_logstash >> - рдЬрд╣рд╛рдВ рд▓реЙрдЧрд╕реНрдЯреИрд╢ рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рдЙрд╕ рд╕рд░реНрд╡рд░ рдХрд╛ рдкрддрд╛, рд▓рдХреНрд╖реНрдп-рдкреЛрд░реНрдЯ 5555 - рдЬрд┐рд╕ рдкреЛрд░реНрдЯ рдкрд░ рд╣рдо рд▓реЙрдЧ рднреЗрдЬреЗрдВрдЧреЗ, рдЯреАрд╕реАрдкреА рдХреЗ рдЬрд░рд┐рдП рд▓реЙрдЧ рднреЗрдЬрдирд╛ рд╕рд░реНрд╡рд░ рдХреЛ рд▓реЛрдб рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ udp рдХреЛ рд╕реЗрдЯ рдХрд░рдирд╛ рдЕрдзрд┐рдХ рд╕рд╣реА рд╣реИред
рд▓реЙрдЧрд╕реНрдЯреИрд╢ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ INPUT рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ

рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ /etc/logstash/conf.d/ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИред рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ 3 рд╕рд╛рд░реНрдердХ рднрд╛рдЧ рд╣реЛрддреЗ рд╣реИрдВ: INPUT, рдлрд┐рд▓реНрдЯрд░, OUTPUTред
INPUT рдореЗрдВ рд╣рдо рд╕рдВрдХреЗрдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╕рд┐рд╕реНрдЯрдо рд▓реЙрдЧ рдХреЛ рдХрд╣рд╛рдВ рд╕реЗ рд▓реЗ рдЬрд╛рдПрдЧрд╛,
FILTER рдореЗрдВ рд╣рдо рд▓реЙрдЧ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рддреЗ рд╣реИрдВ - рдореИрд╕реЗрдЬ рдХреЛ рдлреАрд▓реНрдб рдФрд░ рд╡реИрд▓реНрдпреВ рдореЗрдВ рдХреИрд╕реЗ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░реЗрдВ, рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ
OUTPUT рдореЗрдВ рд╣рдо рдЖрдЙрдЯрдкреБрдЯ рд╕реНрдЯреНрд░реАрдо рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВ - рдЬрд╣рд╛рдВ рдкрд╛рд░реНрд╕ рд▓реЙрдЧ рднреЗрдЬреЗ рдЬрд╛рдПрдВрдЧреЗред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, INPUT рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ, рдХреБрдЫ рдкреНрд░рдХрд╛рд░реЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдЬреЛ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ - рдлрд╝рд╛рдЗрд▓, tcp рдФрд░ exeред
рдЯреАрд╕реАрдкреА: input { tcp { port => 5555 host => тАЬ10.10.1.205тАЭ type => "checkpoint" mode => "server" } }
рдореЛрдб => "рд╕рд░реНрд╡рд░"
рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рд▓реЙрдЧрд╕реНрдЯреИрд╢ рдХрдиреЗрдХреНрд╢рди рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИред
рдкреЛрд░реНрдЯ => 5555
рд╣реЛрд╕реНрдЯ => "10.10.1.205"
рд╣рдо рдЖрдИрдкреА рдкрддреЗ рд╕реЗ рдХрдиреЗрдХреНрд╢рди рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ 10.10.1.205 (рд▓реЙрдЧрд╕реНрдЯреИрд╢), рдкреЛрд░реНрдЯ 5555 - рдкреЛрд░реНрдЯ рдХреЛ рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рдиреАрддрд┐ рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрдорддрд┐ рджреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред
рдЯрд╛рдЗрдк => "рдЪреЗрдХрдкреЙрдЗрдВрдЯ"
рд╣рдо рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХрдИ рдЖрд╡рдХ рдХрдиреЗрдХреНрд╢рди рд╣реИрдВ рддреЛ рдпрд╣ рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореЗрдВ, рдкреНрд░рддреНрдпреЗрдХ рдХрдиреЗрдХреНрд╢рди рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдк рддрд╛рд░реНрдХрд┐рдХ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдирд╛ рд╕реНрд╡рдпрдВ рдХрд╛ рдлрд╝рд┐рд▓реНрдЯрд░ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВред
рдлрд╝рд╛рдЗрд▓: input { file { path => "/var/log/openvas_report/*" type => "openvas" start_position => "beginning" } }
рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХрд╛ рд╡рд┐рд╡рд░рдг:
рдкрде => "/ var / log / openvas_report / *"
рдЙрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдЬрд┐рд╕рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдкрдврд╝рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдкреНрд░рдХрд╛рд░ => "рдУрдкрдирд╡рд╛рд╕"
рдШрдЯрдирд╛ рдХрд╛ рдкреНрд░рдХрд╛рд░ред
start_position => "рд╢реБрд░реБрдЖрдд"
рдлрд╝рд╛рдЗрд▓ рдХреЛ рдмрджрд▓рддреЗ рд╕рдордп, рдпрд╣ рдкреВрд░реА рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкрдврд╝рддрд╛ рд╣реИ; рдпрджрд┐ рдЖрдк "рдЕрдВрдд" рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕рд┐рд╕реНрдЯрдо рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрдд рдореЗрдВ рдирдИ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреЗ рдЖрдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИред
рдХрд╛рд░реНрдпрдХрд╛рд░реА: input { exec { command => "ls -alh" interval => 30 } }
рдЗрд╕ рдЗрдирдкреБрдЯ рдкрд░, (рдХреЗрд╡рд▓!) рд╢реЗрд▓ рдХрдорд╛рдВрдб рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рд▓реЙрдЧ рд╕рдВрджреЗрд╢ рдореЗрдВ рд▓рдкреЗрдЯрд╛ рдЧрдпрд╛ рд╣реИред
рдХрдорд╛рдВрдб => "ls -alh"
рдЬрд┐рд╕ рдЯреАрдо рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рд╣рдо рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВред
рдЕрдВрддрд░рд╛рд▓ => 30
рд╕реЗрдХрдВрдб рдореЗрдВ рдХрдорд╛рдВрдб рдордВрдЧрд▓рд╛рдЪрд░рдг рдЕрдВрддрд░рд╛рд▓ред
рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рд╕реЗ рд▓реЙрдЧ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдПрдХ
tcp рдпрд╛
udp рдлрд╝рд┐рд▓реНрдЯрд░ рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рдпрд╣ рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд▓реЙрдЧрд╕реНрдЯреИрд╢ рдореЗрдВ рд▓реЙрдЧ рдХреИрд╕реЗ рднреЗрдЬреЗ рдЬрд╛рддреЗ рд╣реИрдВред
рд▓реЙрдЧ рдЗрди рд╕рдВрджреЗрд╢ рдХреНрдпрд╛ рджрд┐рдЦрддрд╛ рд╣реИ, рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдо рдбрд┐рдмрдЧ рдореЛрдб рдореЗрдВ рд▓реЙрдЧрд╕реНрдЯреИрд╢ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВ
рд╣рдо INPUT рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рдпрд╣ рд╕рдордЭрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рд▓реЙрдЧ рд╕рдВрджреЗрд╢ рдХреИрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛, рд▓реЙрдЧ рдХреЗ рдлрд╝рд┐рд▓реНрдЯрд░ (рдкрд╛рд░реНрд╕рд░) рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рди рддрд░реАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдПрдХ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рдЬреЛ рдореВрд▓ рд╕рдВрджреЗрд╢ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдгрд╛рдо рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ, рд╡рд░реНрддрдорд╛рди рдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА:
input { tcp { port => 5555 type => "checkpoint" mode => "server" host => тАЬ10.10.1.205тАЭ } } output { if [type] == "checkpoint" { stdout { codec=> json } } }
рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рдЪрд▓рд╛рддрд╛ рд╣реИ:
sudo / usr / share / logstash / bin // logstash -f /etc/logstash/conf.d/checkpoint.conf
рд╣рдо рдкрд░рд┐рдгрд╛рдо рджреЗрдЦрддреЗ рд╣реИрдВ, рдЪрд┐рддреНрд░ рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИ:

рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдХреЙрдкреА рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛:
action=\"Accept\" conn_direction=\"Internal\" contextnum=\"1\" ifdir=\"outbound\" ifname=\"bond1.101\" logid=\"0\" loguid=\"{0x5dfb8c13,0x5,0xfe0a0a0a,0xc0000000}\" origin=\"10.10.10.254\" originsicname=\"CN=ts-spb-cpgw-01,O=cp-spb-mgmt-01.tssolution.local.kncafb\" sequencenum=\"8\" time=\"1576766483\" version=\"5\" context_num=\"1\" dst=\"10.10.10.10\" dst_machine_name=\"ts-spb-dc-01@tssolution.local\" layer_name=\"TSS-Standard Security\" layer_name=\"TSS-Standard Application\" layer_uuid=\"dae7f01c-4c98-4c3a-a643-bfbb8fcf40f0\" layer_uuid=\"dbee3718-cf2f-4de0-8681-529cb75be9a6\" match_id=\"8\" match_id=\"33554431\" parent_rule=\"0\" parent_rule=\"0\" rule_action=\"Accept\" rule_action=\"Accept\" rule_name=\"Implicit Cleanup\" rule_uid=\"6dc2396f-9644-4546-8f32-95d98a3344e6\" product=\"VPN-1 & FireWall-1\" proto=\"17\" s_port=\"37317\" service=\"53\" service_id=\"domain-udp\" src=\"10.10.1.180\" ","type":"qqqqq","host":"10.10.10.250","@version":"1","port":50620}{"@timestamp":"2019-12-19T14:50:12.153Z","message":"time=\"1576766483\" action=\"Accept\" conn_direction=\"Internal\" contextnum=\"1\" ifdir=\"outbound\" ifname=\"bond1.101\" logid=\"0\" loguid=\"{0x5dfb8c13,
рдЗрди рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рд╣рдо рд╕рдордЭрддреЗ рд╣реИрдВ рдХрд┐ рд▓реЙрдЧ рдореЗрдВ рдлреЙрд░реНрдо рд╣реИ: рдлрд╝реАрд▓реНрдб = рдореВрд▓реНрдп рдпрд╛ рдХреБрдВрдЬреА = рдореВрд▓реНрдп, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ kv рдирд╛рдордХ рдПрдХ рдлрд┐рд▓реНрдЯрд░ рдЙрдкрдпреБрдХреНрдд рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдлрд┐рд▓реНрдЯрд░ рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП, рддрдХрдиреАрдХреА рджрд╕реНрддрд╛рд╡реЗрдЬ рдореЗрдВ рдЙрдирдХреЗ рд╕рд╛рде рдЦреБрдж рдХреЛ рдкрд░рд┐рдЪрд┐рдд рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛, рдпрд╛ рдХрд┐рд╕реА рдорд┐рддреНрд░ рд╕реЗ рдкреВрдЫреЗрдВред
рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЛ рдХрд╕реНрдЯрдорд╛рдЗрдЬрд╝ рдХрд░реЗрдВ
рдЕрдВрддрд┐рдо рдЪрд░рдг рдореЗрдВ, рдЙрдиреНрд╣реЛрдВрдиреЗ kv рдЪреБрдирд╛, рдлрд┐рд░ рдЗрд╕ рдлрд┐рд▓реНрдЯрд░ рдХрд╛ рд╡рд┐рдиреНрдпрд╛рд╕ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
filter { if [type] == "checkpoint"{ kv { value_split => "=" allow_duplicate_values => false } } }
рд╣рдо рдЙрд╕ рдкреНрд░рддреАрдХ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рд╣рдо рдлрд╝реАрд▓реНрдб рдФрд░ рдорд╛рди рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░реЗрдВрдЧреЗ - "="ред рдпрджрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд▓реЙрдЧ рдореЗрдВ рд╕рдорд╛рди рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпрд╛рдВ рд╣реИрдВ, рддреЛ рд╣рдо рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЛ рд╕рд╣реЗрдЬрддреЗ рд╣реИрдВ, рдЕрдиреНрдпрдерд╛ рдЖрдкрдХреЛ рд╕рдорд╛рди рдорд╛рдиреЛрдВ рдХреА рдПрдХ рд╕рд░рдгреА рдорд┐рд▓реЗрдЧреА, рдЕрд░реНрдерд╛рдд, рдпрджрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ "foo = some foo = some" рд╕рдВрджреЗрд╢ рд╣реИ, рддреЛ рдХреЗрд╡рд▓ foo = рдХреБрдЫ рд▓рд┐рдЦреЗрдВред
ElasticSearch рдореЗрдВ рд╕рд╣реА рдЖрдЙрдЯрдкреБрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ
рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рд▓реЙрдЧ рдХреЛ
рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕рдЦреЛрдЬ рдбреЗрдЯрд╛рдмреЗрд╕ рдкрд░ рдЕрдкрд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
output { if [type] == "checkpoint" { elasticsearch { hosts => ["10.10.1.200:9200"] index => "checkpoint-%{+YYYY.MM.dd}" user => "tssolution" password => "cool" } } }
рдпрджрд┐ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдЪреЗрдХрдкреЙрдЗрдВрдЯ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рд╛рде рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдИрд╡реЗрдВрдЯ рдХреЛ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХреНрд╕рдЦреЛрдЬ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕рд╣реЗрдЬреЗрдВ, рдЬреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ 9200 рдХреЛ рдкреЛрд░реНрдЯ 9200 рдкрд░ рдкреЛрд░реНрдЯ рдХреЗ рд▓рд┐рдП 10.10.1.200 рдкрд░ рдХрдиреЗрдХреНрд╢рди рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реВрдЪрдХрд╛рдВрдХ рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд╣рдо рд╕реВрдЪрдХрд╛рдВрдХ "рдЪреЗрдХрдкреЙрдЗрдВрдЯ-" + рд╡рд░реНрддрдорд╛рди рд╕рдордп рдХреА рддрд╛рд░реАрдЦ рдореЗрдВ рд╕рд╣реЗрдЬрддреЗ рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ рдЗрдВрдбреЗрдХреНрд╕ рдореЗрдВ рдлрд╝реАрд▓реНрдб рдХрд╛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реЗрдЯ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╛ рдпрд╣ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рд╕рдВрджреЗрд╢ рдореЗрдВ рдПрдХ рдирдпрд╛ рдлрд╝реАрд▓реНрдб рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ, рдлрд╝реАрд▓реНрдб рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдФрд░ рдЙрдирдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЛ рдореИрдкрд┐рдВрдЧ рдореЗрдВ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдпрджрд┐ рдЖрдкрдиреЗ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рд╣реИ (рд╣рдо рдмрд╛рдж рдореЗрдВ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗ), рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реВрдЪрдХрд╛рдВрдХ рдореЗрдВ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдпрд╣ "рдХреВрд▓" рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рд╕рд╛рде "tssolution" рд╣реИред рдЖрдк рдХреЗрд╡рд▓ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реВрдЪрдХрд╛рдВрдХ рдореЗрдВ рд▓реЙрдЧ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрдзрд┐рдХ рдирд╣реАрдВред
рд▓реЙрдЧрд╕реНрдЯреИрд╢ рд▓реЙрдиреНрдЪ рдХрд░реЗрдВред
рд▓реЙрдЧрд╕реНрдЯреИрд╢ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓:
input { tcp { port => 5555 type => "checkpoint" mode => "server" host => тАЬ10.10.1.205тАЭ } } filter { if [type] == "checkpoint"{ kv { value_split => "=" allow_duplicate_values => false } } } output { if [type] == "checkpoint" { elasticsearch { hosts => ["10.10.1.200:9200"] index => "checkpoint-%{+YYYY.MM.dd}" user => "tssolution" password => "cool" } } }
рд╕рд╣реА рд╕рдВрдХрд▓рди рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ:
/ usr / share / logstash / bin // logstash -f checkpoint.conf

рд╣рдо рд▓реЙрдЧрд╕реНрдЯреИрд╢ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ:
sudo systemctl рдХреА рд╢реБрд░реБрдЖрдд logstash рд╕реЗ рд╣реЛрддреА рд╣реИ
рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╢реБрд░реВ рд╣реЛ рдЧрдИ рд╣реИ:
sudo systemctl рд╕реНрдЯреЗрдЯрд╕ рд▓реЙрдЧрд╕реНрдЯреИрд╢

рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рд╕реЙрдХреЗрдЯ рдмрдврд╝ рдЧрдпрд╛ рд╣реИ:
netstat -nat | grep 5555

Kibana рдореЗрдВ рд▓реЙрдЧ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВред
рд╕рдм рдХреБрдЫ рд╢реБрд░реВ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдХрд┐рдмрд╛рдирд╛ - рдбрд┐рд╕реНрдХрд╡рд░ рдкрд░ рдЬрд╛рдПрдВ, рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рд╕рдм рдХреБрдЫ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЪрд┐рддреНрд░ рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИ!

рд╕рднреА рд▓реЙрдЧ рдЬрдЧрд╣ рдореЗрдВ рд╣реИрдВ рдФрд░ рд╣рдо рд╕рднреА рдХреНрд╖реЗрддреНрд░реЛрдВ рдФрд░ рдЙрдирдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ!
рдирд┐рд╖реНрдХрд░реНрд╖
рд╣рдордиреЗ рдЬрд╛рдВрдЪ рдХреА рдХрд┐ рд▓реЙрдЧрд╕реНрдЯреИрд╢ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХреИрд╕реЗ рд▓рд┐рдЦреА рдЬрд╛рддреА рд╣реИ, рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╣рдореЗрдВ рд╕рднреА рдХреНрд╖реЗрддреНрд░реЛрдВ рдФрд░ рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдПрдХ рдкрд╛рд░реНрд╕рд░ рдорд┐рд▓рд╛ред рдЕрдм рд╣рдо рдХреБрдЫ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдЦреЛрдЬ рдФрд░ рдЪрд╛рд░реНрдЯрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдЧреЗ рд╣рдо рдХрд┐рдмрд╛рдирд╛ рдореЗрдВ рджреГрд╢реНрдп рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗ, рдПрдХ рд╕рд░рд▓ рдбреИрд╢рдмреЛрд░реНрдб рдмрдирд╛рдПрдВред рдпрд╣ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╣реИ рдХрд┐ рд▓реЙрдЧрд╕реНрдЯреИрд╢ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХреБрдЫ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рд▓рдЧрд╛рддрд╛рд░ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрдм рд╣рдо рдлрд╝реАрд▓реНрдб рдорд╛рди рдХреЛ рдПрдХ рдЕрдВрдХ рд╕реЗ рдПрдХ рд╢рдмреНрдж рдореЗрдВ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдмрд╛рдж рдХреЗ рд▓реЗрдЦреЛрдВ рдореЗрдВ, рд╣рдо рд╣рд░ рд╕рдордп рдРрд╕рд╛ рдХрд░реЗрдВрдЧреЗред
рддреЛ рдмрдиреЗ рд░рд╣рд┐рдП (
Telegram ,
Facebook ,
VK ,
TS Solution Blog ),
Yandex.Zen ред