లాక్ మరియు కీ కింద సాగే: లోపల మరియు వెలుపల నుండి యాక్సెస్ కోసం సాగే శోధన క్లస్టర్ భద్రతా ఎంపికలను ప్రారంభించడం

లాక్ మరియు కీ కింద సాగే: లోపల మరియు వెలుపల నుండి యాక్సెస్ కోసం సాగే శోధన క్లస్టర్ భద్రతా ఎంపికలను ప్రారంభించడం

ఎలాస్టిక్ స్టాక్ అనేది SIEM సిస్టమ్స్ మార్కెట్‌లో బాగా తెలిసిన సాధనం (వాస్తవానికి, అవి మాత్రమే కాదు). ఇది చాలా సెన్సిటివ్ మరియు చాలా సెన్సిటివ్ కాకుండా విభిన్న-పరిమాణ డేటాను సేకరించగలదు. సాగే స్టాక్ ఎలిమెంట్‌లకు యాక్సెస్ రక్షించబడకపోతే ఇది పూర్తిగా సరైనది కాదు. డిఫాల్ట్‌గా, అన్ని సాగే అవుట్-ఆఫ్-ది-బాక్స్ ఎలిమెంట్స్ (ఎలాస్టిక్‌సెర్చ్, లాగ్‌స్టాష్, కిబానా మరియు బీట్స్ కలెక్టర్లు) ఓపెన్ ప్రోటోకాల్‌లపై అమలవుతాయి. మరియు కిబానాలోనే, ప్రమాణీకరణ నిలిపివేయబడింది. ఈ పరస్పర చర్యలన్నీ సురక్షితంగా ఉంటాయి మరియు దీన్ని ఎలా చేయాలో ఈ వ్యాసంలో మేము మీకు తెలియజేస్తాము. సౌలభ్యం కోసం, మేము కథనాన్ని 3 సెమాంటిక్ బ్లాక్‌లుగా విభజించాము:

  • పాత్ర-ఆధారిత డేటా యాక్సెస్ మోడల్
  • సాగే శోధన క్లస్టర్‌లో డేటా భద్రత
  • సాగే శోధన క్లస్టర్ వెలుపల డేటాను భద్రపరచడం

కట్ కింద వివరాలు.

పాత్ర-ఆధారిత డేటా యాక్సెస్ మోడల్

మీరు ఎలాస్టిక్‌సెర్చ్‌ని ఇన్‌స్టాల్ చేసి, దాన్ని ఏ విధంగానూ ట్యూన్ చేయకపోతే, అన్ని ఇండెక్స్‌లకు యాక్సెస్ అందరికీ అందుబాటులో ఉంటుంది. బాగా, లేదా కర్ల్ ఉపయోగించగల వారు. దీన్ని నివారించడానికి, Elasticsearch ఒక రోల్ మోడల్‌ను కలిగి ఉంది, అది ప్రాథమిక చందా (ఇది ఉచితం)తో ప్రారంభమవుతుంది. క్రమపద్ధతిలో ఇది ఇలా కనిపిస్తుంది:

లాక్ మరియు కీ కింద సాగే: లోపల మరియు వెలుపల నుండి యాక్సెస్ కోసం సాగే శోధన క్లస్టర్ భద్రతా ఎంపికలను ప్రారంభించడం

చిత్రంలో ఏముంది

  • వినియోగదారులు తమ ఆధారాలను ఉపయోగించి లాగిన్ చేయగల ప్రతి ఒక్కరూ.
  • పాత్ర అనేది హక్కుల సమితి.
  • హక్కులు ప్రత్యేకాధికారాల సమితి.
  • అధికారాలు రాయడం, చదవడం, తొలగించడం మొదలైన వాటికి అనుమతులు. (అధికారాల పూర్తి జాబితా)
  • వనరులు సూచికలు, పత్రాలు, ఫీల్డ్‌లు, వినియోగదారులు మరియు ఇతర నిల్వ ఎంటిటీలు (కొన్ని వనరులకు రోల్ మోడల్ చెల్లింపు సభ్యత్వాలతో మాత్రమే అందుబాటులో ఉంటుంది).

డిఫాల్ట్‌గా సాగే శోధన ఉంది బాక్స్ వినియోగదారులు, అవి జతచేయబడినవి బాక్స్ పాత్రలు. మీరు భద్రతా సెట్టింగ్‌లను ప్రారంభించిన తర్వాత, మీరు వాటిని వెంటనే ఉపయోగించడం ప్రారంభించవచ్చు.

సాగే శోధన సెట్టింగ్‌లలో భద్రతను ప్రారంభించడానికి, మీరు దానిని కాన్ఫిగరేషన్ ఫైల్‌కి జోడించాలి (డిఫాల్ట్‌గా ఇది elasticsearch/config/elasticsearch.yml) కొత్త వాక్యం:

xpack.security.enabled: true

కాన్ఫిగరేషన్ ఫైల్‌ను మార్చిన తర్వాత, మార్పులు అమలులోకి రావడానికి సాగే శోధనను ప్రారంభించండి లేదా పునఃప్రారంభించండి. బాక్స్ వినియోగదారులకు పాస్‌వర్డ్‌లను కేటాయించడం తదుపరి దశ. దిగువ ఆదేశాన్ని ఉపయోగించి ఇంటరాక్టివ్‌గా దీన్ని చేద్దాం:

[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

మీరు వెనుకకు తట్టుకోవచ్చు - సాగే శోధన వైపు సెట్టింగ్‌లు పూర్తయ్యాయి. ఇప్పుడు కిబానాను కాన్ఫిగర్ చేసే సమయం వచ్చింది. మీరు దీన్ని ఇప్పుడు అమలు చేస్తే, లోపాలు కనిపిస్తాయి, కాబట్టి కీ స్టోర్‌ను సృష్టించడం చాలా ముఖ్యం. ఇది రెండు ఆదేశాలలో జరుగుతుంది (యూజర్ కిబానా మరియు సాగే శోధనలో పాస్‌వర్డ్ సృష్టి దశలో నమోదు చేయబడిన పాస్‌వర్డ్:

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

అన్నీ సరిగ్గా ఉంటే, కిబానా లాగిన్ మరియు పాస్‌వర్డ్ అడగడం ప్రారంభిస్తుంది. ప్రాథమిక సభ్యత్వం అంతర్గత వినియోగదారుల ఆధారంగా రోల్ మోడల్‌ను కలిగి ఉంటుంది. గోల్డ్‌తో ప్రారంభించి, మీరు బాహ్య ప్రమాణీకరణ సిస్టమ్‌లను కనెక్ట్ చేయవచ్చు - LDAP, PKI, యాక్టివ్ డైరెక్టరీ మరియు సింగిల్ సైన్-ఆన్ సిస్టమ్‌లు.

లాక్ మరియు కీ కింద సాగే: లోపల మరియు వెలుపల నుండి యాక్సెస్ కోసం సాగే శోధన క్లస్టర్ భద్రతా ఎంపికలను ప్రారంభించడం

సాగే శోధనలోని వస్తువులకు యాక్సెస్ హక్కులు కూడా పరిమితం చేయబడతాయి. అయితే, పత్రాలు లేదా ఫీల్డ్‌ల కోసం అదే విధంగా చేయడానికి, మీకు చెల్లింపు సభ్యత్వం అవసరం (ఈ లగ్జరీ ప్లాటినం స్థాయితో ప్రారంభమవుతుంది). ఈ సెట్టింగ్‌లు కిబానా ఇంటర్‌ఫేస్‌లో లేదా ద్వారా అందుబాటులో ఉంటాయి భద్రతా API. మీరు ఇప్పటికే తెలిసిన Dev టూల్స్ మెను ద్వారా తనిఖీ చేయవచ్చు:

ఒక పాత్రను సృష్టిస్తోంది

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"
  }
}

సాగే శోధన క్లస్టర్‌లో డేటా భద్రత

క్లస్టర్‌లో సాగే శోధన నడుస్తున్నప్పుడు (ఇది సాధారణం), క్లస్టర్‌లోని భద్రతా సెట్టింగ్‌లు ముఖ్యమైనవి. నోడ్‌ల మధ్య సురక్షిత కమ్యూనికేషన్ కోసం, సాగే శోధన TLS ప్రోటోకాల్‌ను ఉపయోగిస్తుంది. వాటి మధ్య సురక్షిత పరస్పర చర్యను సెటప్ చేయడానికి, మీకు సర్టిఫికేట్ అవసరం. మేము PEM ఆకృతిలో ప్రమాణపత్రం మరియు ప్రైవేట్ కీని రూపొందిస్తాము:

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

పై ఆదేశాన్ని అమలు చేసిన తర్వాత, డైరెక్టరీలో /../elasticsearch ఆర్కైవ్ కనిపిస్తుంది సాగే-స్టాక్-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

మేము అన్ని సాగే శోధన నోడ్‌లను ప్రారంభించాము మరియు అమలు చేస్తాము కర్ల్. ప్రతిదీ సరిగ్గా జరిగితే, అనేక నోడ్‌లతో ప్రతిస్పందన తిరిగి ఇవ్వబడుతుంది:

[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 చిరునామాల తెలుపు జాబితాలను సృష్టించడానికి మిమ్మల్ని అనుమతిస్తుంది.

సాగే శోధన క్లస్టర్ వెలుపల డేటాను భద్రపరచడం

క్లస్టర్ వెలుపల అంటే బాహ్య సాధనాలను కనెక్ట్ చేయడం: కిబానా, లాగ్‌స్టాష్, బీట్స్ లేదా ఇతర బాహ్య క్లయింట్‌లు.

లాక్ మరియు కీ కింద సాగే: లోపల మరియు వెలుపల నుండి యాక్సెస్ కోసం సాగే శోధన క్లస్టర్ భద్రతా ఎంపికలను ప్రారంభించడం

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

కీలను జోడించిన తర్వాత, 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

ఈ విధంగా, సెట్టింగ్‌లు పూర్తయ్యాయి మరియు ఎలాస్టిక్‌సెర్చ్ క్లస్టర్‌లోని డేటాకు యాక్సెస్ ఎన్‌క్రిప్ట్ చేయబడింది.

ఉచిత లేదా చెల్లింపు సభ్యత్వాలపై సాగే స్టాక్ సామర్థ్యాల గురించి మీకు ప్రశ్నలు ఉంటే, విధులను పర్యవేక్షించడం లేదా SIEM సిస్టమ్‌ను సృష్టించడం, దీనికి అభ్యర్థనను పంపండి అభిప్రాయమును తెలియ చేయు ఫారము మా వెబ్‌సైట్‌లో.

హబ్రేపై సాగే స్టాక్ గురించి మా మరిన్ని కథనాలు:

సాగే స్టాక్‌లో మెషిన్ లెర్నింగ్‌ను అర్థం చేసుకోవడం (ఎలాస్టిక్‌సెర్చ్, అకా ELK)

సాగే శోధన పరిమాణం

మూలం: www.habr.com

ఒక వ్యాఖ్యను జోడించండి