ááŒá®ážáá²á·áá±á¬ááŸá
áºááœááºá áá±áá¬áá±á·á
áºáá»á¬ážááŸáá±á«ááºááŒá¬ážááŸá¯áá»á¬ážá
áœá¬ááŸááá²á·áááºá
áá»áœááºá¯ááºááá¯á·áá¡áá±á·á¡áá»áá·áºááœáẠáá»áœááºá¯ááºááá¯á·ááẠ152-FZá Cloud-152 áááá¯á¡ááºáá»ááºáá»á¬ážááŸáá·áºááá¯ááºáá®ááá·áº áá»áœááºá¯ááºááá¯á·á IaaS ááááºáá±á¬ááºážááŸá ááááºážá¡áá»ááºá¡áááºáá¯á¶ááŒá¯á¶áá±ážáááááá¬áá»á¬ážá OS ááŸáá·áº áá±á¬á·ááºáá²ááŸááºáááºážáá»á¬ážááᯠááŸááºáááºážáá»á¬ážááááºážáááºážáááºááŸáá·áº ááœá²ááŒááºážá áááºááŒá¬ááẠElasticsearch ááá¯á¡áá¯á¶ážááŒá¯á ááŒáá¯áááºá á¬áááºážááœááºážááŒáá«á áá¯á·á
áá±áá¬áá±á·á áºááẠá¡ááºáá¬áááºááá¯á· âááœááºâ ááŒááºáž ááŸáááááŸá á á áºáá±ážáá«áááºá
áá±á«ááºááŒá¬ážááŸá¯á¡áá»á¬ážá
á¯ááœáẠ(
ááááŠážá
áœá¬á á¡ááºáá¬áááºáá±á«áºááœááºáá¯ááºáá±ááŒááºážááŸáá·áºáááºáá¶ááŒáá«á
áá¯á·á áá¬ááŒá±á¬áá·áº áá®ááá¯ááŒá
áºáá¬áá²á á¡ááŸááºááŸá¬ Elasticsearch á ááá¯ááá¯ááŒá±á¬ááºážááœááºááŒááºááœááºáááºáááºááŸá¯á¡ááœááºááŒá
áºáááºá
áááºááá¯ááºááẠááááºááá¯á· ááŒá±ážáá«á
áá±áá¬áá±á·á áºááá¯á·áá»áááºáááºááŸá¯ááá¯áá¬ááœááºááŒááºážá
á¡áá±á¬ááºá¡áá¬ážáááá¯ááºáá¯á¶áá² áá±áá¬áá±á·á áºááá¯á· áá»áááºáááºááẠáááŒá áºááá¯ááºá á±ááẠááᯠáá»áœááºá¯ááºááá¯á· ááŒá¯áá¯ááºáá«áááºá
Elasticsearch ááœáẠáá±áá¬áá±á·á áºááá¯á· áááºáá±á¬ááºááœáá·áºááᯠááá·áºáááºáá¬ážááá·áº á¡áá±á¬ááºá¡áá¬ážá áá á áºááŒááºáž áá±á¬áºáá»á°ážáá áºáᯠááŸáááŒá®ážá ááá¯á·áá±á¬áº áááºážááᯠá¡ááá±áž X-Pack plugin áááºááŸááºááŸá¯ááœááºáᬠáááá¯ááºááẠ(1 á á¡ááá²á· á¡áá¯á¶ážááŒá¯ááŸá¯)á
ááááºážáá±á¬ááºážááŸá¬ 2019 áá¯ááŸá Ạáá±á¬ááºážáŠážááœáẠAmazon ááẠX-Pack ááŸáá·áº áááºáá±áá±á¬ áááºážá ááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯áá»á¬ážááᯠááœáá·áºááŸá áºáá²á·áááºá áá±áá¬áá±á·á áºáá áºáá¯ááá¯á· áá»áááºáááºááá·áºá¡áá« á¡áá±á¬ááºá¡áá¬ážá áá á áºááŒááºážáá¯ááºáá±á¬ááºáá»ááºááᯠElasticsearch 7.3.2 áá¬ážááŸááºážá¡ááœáẠá¡ááá²á·ááá¯ááºá ááºáá áºáá¯á¡á±á¬ááºááœáẠáááŸáááá¯ááºááŒá®áž Elasticsearch 7.4.0 á¡ááœáẠáá¯ááºáá±ááŸá¯á¡áá áºááẠá¡áá¯ááºááŒá áºáá±áá«ááŒá®á
á€ááááºá¡ááºááẠáááºáááºááẠááœááºáá°áááºá áá¬áᬠááœááºááá¯ážááºááá¯á· ááœá¬ážááŒá®áž ááá¯ááŸá±á¬ááºáá¬ááᯠáá»áááºáááºáá«-
RPM á¡ááŒá±áá¶-
curl https://d3g5vo6xdbdb9a.cloudfront.net/yum/opendistroforelasticsearch-artifacts.repo -o /etc/yum.repos.d/opendistroforelasticsearch-artifacts.repo
yum update
yum install opendistro-security
DEB á¡ááŒá±áá¶-
wget -qO â https://d3g5vo6xdbdb9a.cloudfront.net/GPG-KEY-opendistroforelasticsearch | sudo apt-key add -
SSL ááŸáá áºááá·áº áá¬áá¬áá»á¬ážááŒá¬áž á¡ááŒááºá¡ááŸááºáááºááœááºááŸá¯ááᯠá áá áºááá·áºááœááºážááŒááºážá
ááááºá¡ááºááᯠááá·áºááœááºážáá±á¬á¡áá«á áá±áá¬áá±á·á áºááá¯á· áá»áááºáááºááá·áº ááááºáááºážáááœá²á·á ááºážáá¯á¶ááẠááŒá±á¬ááºážáá²ááœá¬ážáááºá áááºážááẠSSL áá¯ááºááŸááºááŒááºážááᯠáá¯ááºáá±á¬ááºáááºá á¡á á¯ááá¯ááºáá¬áá¬áá»á¬áž áá áºáá¯ááŸáá·áºáá áºáᯠáááºáááºáá¯ááºáá±á¬ááºááá¯ááºá á±áááºá¡ááœáẠSSL ááᯠá¡áá¯á¶ážááŒá¯á áááºážááá¯á·á¡ááŒá¬áž á¡ááŒááºá¡ááŸááºáááºááœááºááŸá¯ááᯠáá»áááºááŸáááẠááá¯á¡ááºáá«áááºá
á¡áááºááŸááºáá»á¬ážá¡ááŒá¬áž áá¯á¶ááŒááºááŸá¯ááᯠáááºážáááá¯ááºááá¯áẠáááºááŸáẠá¡á¬áá¬ááá¯ááºá¡ááœá²á·á¡á ááºážááŒáá·áº ááá¯á·ááá¯áẠááá«áá² áá°áá±á¬ááºááá¯ááºáááºá ááááááºážáááºážááŒáá·áºá á¡á¬ážáá¯á¶ážááŸááºážáá«áááº- áááºááẠCA áá»áœááºážáá»ááºáá°áá»á¬ážááᯠáááºááœááºáááºáᬠááá¯á¡ááºáááºá áá¯áááááᯠááá·áºááá·áºááœá¬ážááŒáá·áºáá¡á±á¬ááºá
- ááá¯ááááºážá¡áááºá¡ááŒáá·áºá¡á
á¯á¶ááŒáá·áº ááááºážááŸááºáá
áºáá¯áááºáá®ážáá«-
export DOMAIN_CN="example.com"
- áá®ážááá·áºáá±á¬á·áá
áºáᯠáááºáá®ážáá«-
openssl genrsa -out root-ca-key.pem 4096
- root áááºááŸááºááᯠáááºááŸááºááá¯ážáá«á áá±ážáááºážá¡á±á¬ááºáá¬ážáá«- áá»á±á¬ááºáá¯á¶ážááœá¬ážáá«á ááá¯á·ááá¯áẠá¡áá±ážá¡áá°áá¶ááá«áá áááºáá¶áá°á¡á¬ážáá¯á¶ážááŒá¬ážááœáẠáá¯á¶ááŒááºááŸá¯ááᯠááŒááºáááºááŒááºáááºááẠááá¯á¡ááºáááºááŒá
áºáá«áááºá
openssl req -new -x509 -sha256 -subj "/C=RU/ST=Moscow/O=Moscow, Inc./CN=${DOMAIN_CN}" -key root-ca-key.pem -out root-ca.pem
- á
á®áá¶ááá·áºááœá²áá°áá®áž áááºáá®ážáá«-
openssl genrsa -out admin-key-temp.pem 4096 openssl pkcs8 -inform PEM -outform PEM -in admin-key-temp.pem -topk8 -nocrypt -v1 PBE-SHA1-3DES -out admin-key.pem
- áááºááŸááºááᯠáááºááŸááºááá¯ážááẠáá±á¬ááºážááá¯áá»ááºáá
áºáᯠáááºáá®ážáá«-
openssl req -new -subj "/C=RU/ST=Moscow/O=Moscow Inc./CN=${DOMAIN_CN}/CN=admin " -key admin-key.pem -out admin.csr
- á
á®áá¶ááá·áºááœá²áá°áááºááŸááºááᯠáááºáá®ážáá«-
openssl x509 -req -extensions usr_cert -in admin.csr -CA root-ca.pem -CAkey root-ca-key.pem -CAcreateserial -sha256 -out admin.pem
- Elasticsearch node á¡ááœáẠáááºááŸááºáá»á¬áž áááºáá®ážáá«-
export NODENAME="node-01" openssl genrsa -out ${NODENAME}-key-temp.pem 4096 openssl pkcs8 -inform PEM -outform PEM -in ${NODENAME}-key-temp.pem -topk8 -nocrypt -v1 PBE-SHA1-3DES -out ${NODENAME}-key.pem
- áááºááŸááºáá±á¬ááºážááá¯ááŸá¯ááᯠáááºáá®ážáá«-
openssl req -new -subj "/C=RU/ST=Moscow/O=Moscow Inc./CN=${NODENAME}.${DOMAIN_CN}" -addext"subjectAltName=DNS:${NODENAME}.${DOMAIN_CN},DNS:www.${NODENAME}.${DOMAIN_CN}" -key ${NODENAME}-key.pem -out ${NODENAME}.csr
- áááºááŸááºááᯠáááºááŸááºáá±ážááá¯ážááŒááºáž-
openssl x509 -req -in node.csr -CA root-ca.pem -CAkey root-ca-key.pem -CAcreateserial -sha256 -out node.pem
- áááºááŸááºááᯠElasticsearch node áá»á¬ážááŒá¬ážááœáẠá¡á±á¬ááºáá±á¬áºááŒáá« ááá¯ááºááœá²ááœáẠááá·áºáá«á
/etc/elasticsearch/
ááá¯ááºáá»á¬áž ááá¯á¡ááºáááºnode-01-key.pem node-01.pem admin-key.pem admin.pem root-ca.pem
- Configuring /etc/elasticsearch/elasticsearch.yml - áá»áœááºá¯ááºááá¯á·ááŸáá¯ááºáá±ážáá±á¬ á¡ááá¡ááŸááºááŒá¯áááºááŸááºáá»á¬ážááŒáá·áº ááá¯ááºáá»á¬ážáá¡áááºááᯠááŒá±á¬ááºážáá²áá«á
opendistro_security.ssl.transport.pemcert_filepath: node-01.pem opendistro_security.ssl.transport.pemkey_filepath: node-01-key.pem opendistro_security.ssl.transport.pemtrustedcas_filepath: root-ca.pem opendistro_security.ssl.transport.enforce_hostname_verification: false opendistro_security.ssl.http.enabled: true opendistro_security.ssl.http.pemcert_filepath: node-01.pem opendistro_security.ssl.http.pemkey_filepath: node-01-key.pem opendistro_security.ssl.http.pemtrustedcas_filepath: root-ca.pem opendistro_security.allow_unsafe_democertificates: false opendistro_security.allow_default_init_securityindex: true opendistro_security.authcz.admin_dn: â CN=admin,CN=example.com,O=Moscow Inc.,ST=Moscow,C=RU opendistro_security.nodes_dn: â CN=node-01.example.com,O=Moscow Inc.,ST=Moscow,C=RU
á¡ááœááºážá¡áá¯á¶ážááŒá¯áá°áá»á¬ážá¡ááœáẠá áá¬ážááŸááºáá»á¬ážááᯠááŒá±á¬ááºážáá²ááŒááºážá
- á¡á±á¬ááºáá±á¬áºááŒáá« command ááá¯áá¯á¶ážááŒá®ážá áá»áœááºá¯ááºááá¯á·ááẠá
áá¬ážááŸáẠhash ááᯠconsole ááá¯á·áá¯ááºáá±ážáááº-
sh ${OD_SEC}/tools/hash.sh -p [паÑПлÑ]
- ááá¯ááºááŸá hash ááᯠáááºáá¶áááŸááá°ááá¯á· ááŒá±á¬ááºážáá«-
/usr/share/elasticsearch/plugins/opendistro_security/securityconfig/internal_users.yml
OS ááœáẠfirewall áá áºáá¯áááºáá±á¬ááºááŒááºážá
- Firewall ááᯠá
áááºááœáá·áºááŒá¯áá«-
systemctl enable firewalld
- á
áááºááá¯ááºáá¡á±á¬ááº-
systemctl start firewalld
- Elasticsearch ááá¯á· áá»áááºáááºááœáá·áºááŒá¯áá«-
firewall-cmd --set-default-zone work firewall-cmd --zone=work --add-port=9200/TCP --permanent
- Firewall á
ááºážáá»ááºážáá»á¬ážááᯠááŒááºáááºá
áááºáá«á
firewall-cmd --reload
- á€ááœáẠá¡áá¯ááºá
ááºážáááºážáá»á¬ážá
firewall-cmd --list-all
áá»áœááºá¯ááºááá¯á·áááŒá±á¬ááºážáá²ááŸá¯á¡á¬ážáá¯á¶ážááᯠElasticsearch ááœááºá¡áá¯á¶ážááŒá¯ááŒááºážá
- ááááºá¡ááºááŒáá·áº ááá¯ááºááœá²ááá¯á· áááºážááŒá±á¬ááºážá¡ááŒáá·áºá¡á
á¯á¶ááŒáá·áº ááááºážááŸááºáá
áºáá¯ááᯠáááºáá®ážáá«-
export OD_SEC="/usr/share/elasticsearch/plugins/opendistro_security/"
- á
áá¬ážááŸááºáá»á¬ážááᯠá¡ááºááááºáá¯ááºááŒá®áž áááºáááºáá»á¬ážááᯠá
á
áºáá±ážáá±ážááá·áº script áá
áºáá¯ááᯠááœáá·áºááŒáá·áºááŒáá«á
áá¯á·á
${OD_SEC}/tools/securityadmin.sh -cd ${OD_SEC}/securityconfig/ -icl -nhnv -cacert /etc/elasticsearch/root-ca.pem -cert /etc/elasticsearch/admin.pem -key /etc/elasticsearch/admin-key.pem
- á¡ááŒá±á¬ááºážá¡áá²áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯áá¬ážááŒááºáž ááŸáá áááŸá á
á
áºáá±ážáá«-
curl -XGET https://[IP/ÐÐŒÑ Elasticsearch]:9200/_cat/nodes?v -u admin:[паÑПлÑ] --insecure
áá«áá«áá²á áá«ááœá±á Elasticsearch ááᯠááœáá·áºááŒá¯áá»ááºáááŸááá² áá»áááºáááºááŸá¯ááœá±ááá± áá¬ááœááºáá±ážáá²á· á¡áááá·áºáá¯á¶ážáááºáááºááœá±áá«á
source: www.habr.com