ProHoster > Блог > басқарма > Құлып пен кілт астында серпімді: ішінен және сыртынан қол жеткізу үшін Elasticsearch кластерінің қауіпсіздік опцияларын қосу
Құлып пен кілт астында серпімді: ішінен және сыртынан қол жеткізу үшін Elasticsearch кластерінің қауіпсіздік опцияларын қосу
Elastic Stack - бұл SIEM жүйелер нарығындағы танымал құрал (шын мәнінде олар ғана емес). Ол сезімтал және аса сезімтал емес көптеген әртүрлі өлшемді деректерді жинай алады. Elastic Stack элементтеріне қол жеткізу қорғалмаған болса, бұл мүлдем дұрыс емес. Әдепкі бойынша, барлық Elastic қораптан тыс элементтер (Elasticsearch, Logstash, Kibana және Beats коллекторлары) ашық хаттамаларда жұмыс істейді. Ал Кибананың өзінде аутентификация өшірілген. Барлық осы өзара әрекеттесулерді қорғауға болады және осы мақалада біз мұны қалай жасау керектігін айтамыз. Ыңғайлы болу үшін біз әңгімені 3 семантикалық блокқа бөлдік:
Рөлге негізделген деректерге қол жеткізу моделі
Elasticsearch кластеріндегі деректер қауіпсіздігі
Elasticsearch кластерінен тыс деректерді қорғау
Кесу астындағы мәліметтер.
Рөлге негізделген деректерге қол жеткізу моделі
Егер сіз Elasticsearch бағдарламасын орнатып, оны ешбір жолмен реттемесеңіз, барлық индекстерге қол жеткізу барлығына ашық болады. Жақсы, немесе curl пайдалана алатындар. Бұған жол бермеу үшін, 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 жағындағы параметрлер аяқталды. Енді Kibana конфигурациялау уақыты келді. Оны қазір іске қоссаңыз, қателер пайда болады, сондықтан кілттер қоймасын жасау маңызды. Бұл екі командада орындалады (user кибана және Elasticsearch жүйесінде құпия сөзді жасау қадамында енгізілген құпия сөз):
Егер бәрі дұрыс болса, Кибана логин мен құпия сөзді сұрай бастайды. Негізгі жазылым ішкі пайдаланушыларға негізделген үлгі үлгісін қамтиды. Алтыннан бастап сыртқы аутентификация жүйелерін – LDAP, PKI, Active Directory және бір рет кіру жүйелерін қосуға болады.
Elasticsearch ішіндегі нысандарға қол жеткізу құқықтары да шектелуі мүмкін. Дегенмен, құжаттар немесе өрістер үшін де солай істеу үшін сізге ақылы жазылым қажет болады (бұл сән-салтанат Platinum деңгейінен басталады). Бұл параметрлер Kibana интерфейсінде немесе арқылы қол жетімді Қауіпсіздік API. Бұрыннан таныс Dev Tools мәзірі арқылы тексеруге болады:
Elasticsearch кластерде жұмыс істегенде (бұл кең таралған), кластердегі қауіпсіздік параметрлері маңызды болады. Түйіндер арасындағы қауіпсіз байланыс үшін Elasticsearch TLS протоколын пайдаланады. Олардың арасында қауіпсіз өзара әрекеттесуді орнату үшін сізге сертификат қажет. Біз PEM пішімінде сертификат пен жеке кілт жасаймыз:
[elastic@node1 ~]$ ./elasticsearch/bin/elasticsearch-certutil ca --pem
Жоғарыдағы пәрменді орындағаннан кейін каталогта /../elasticsearch мұрағат пайда болады elastic-stack-ca.zip. Оның ішінде сіз кеңейтімдері бар сертификат пен жеке кілтті таба аласыз crt и кілт тиісінше. Оларды кластердегі барлық түйіндерден қол жеткізуге болатын ортақ ресурсқа қою ұсынылады.
Әрбір түйінге енді ортақ каталогтағыларға негізделген жеке куәліктер мен жеке кілттер қажет. Пәрменді орындау кезінде сізден құпия сөзді орнату сұралады. Өзара әрекеттесетін түйіндерді толық тексеру үшін -ip және -dns қосымша опцияларын қосуға болады.
Пәрменді орындау нәтижесінде біз парольмен қорғалған PKCS#12 пішіміндегі сертификат пен жабық кілт аламыз. Жасалған файлды жылжыту ғана қалады p12 конфигурация каталогына:
Басқа қауіпсіздік опциясы бар - IP мекенжайын сүзгілеу (Алтын деңгейдегі жазылымдарда қол жетімді). Түйіндерге кіруге рұқсат етілген IP мекенжайларының ақ тізімдерін жасауға мүмкіндік береді.
Elasticsearch кластерінен тыс деректерді қорғау
Кластердің сыртында сыртқы құралдарды қосуды білдіреді: Kibana, Logstash, Beats немесе басқа сыртқы клиенттер.
https қолдауын конфигурациялау үшін (http орнына) elasticsearch.yml сайтына жаңа жолдарды қосыңыз:
Кілттерді қосқаннан кейін Elasticsearch түйіндері https арқылы қосылуға дайын. Енді оларды іске қосуға болады.
Келесі қадам - Kibana қосу үшін кілт жасау және оны конфигурацияға қосу. Ортақ каталогта бұрыннан бар сертификат негізінде біз PEM пішімінде сертификат жасаймыз (PKCS#12 Kibana, Logstash және Beats әлі қолдамайды):
Кілттер сонда, сондықтан Kibana конфигурациясын оларды пайдалана бастау үшін өзгерту ғана қалады. kibana.yml конфигурация файлында http мекенжайын https етіп өзгертіңіз және SSL қосылым параметрлері бар жолдарды қосыңыз. Соңғы үш жол пайдаланушы браузері мен Kibana арасындағы қауіпсіз байланысты теңшейді.
Осылайша, параметрлер аяқталды және Elasticsearch кластеріндегі деректерге қол жеткізу шифрланады.
Тегін немесе ақылы жазылымдарда, бақылау тапсырмаларында немесе SIEM жүйесін жасауда Elastic Stack мүмкіндіктері туралы сұрақтарыңыз болса, мына мекенжайға сұрау қалдырыңыз. кері байланыс формасы біздің сайтта.
Хабредегі Elastic Stack туралы қосымша мақалаларымыз: