当前位置: 首页 > news >正文

万维网站会员管理系统app

万维网站,会员管理系统app,线上分销的三种模式,wordpress替换主题数据库Elasticsearch 单节点安全配置与用户认证 安全扫描时发现了一个高危漏洞#xff1a;Elasticsearch 未授权访问 。在使用 Elasticsearch 构建搜索引擎或处理大规模数据时#xff0c;需要启用基本的安全功能来防止未经授权的访问。本文将通过简单的配置步骤#xff0c;为单节…Elasticsearch 单节点安全配置与用户认证 安全扫描时发现了一个高危漏洞Elasticsearch 未授权访问 。在使用 Elasticsearch 构建搜索引擎或处理大规模数据时需要启用基本的安全功能来防止未经授权的访问。本文将通过简单的配置步骤为单节点 Elasticsearch 实现最基本的安全功能包括启用 Elasticsearch 自带的安全功能和配置传输层 SSL以确保数据传输的加密和访问权限的严格管理。 elaticsearch版本7.9.2 修改配置文件 编辑单节点的 elasticsearch.yml 文件确保包含以下内容 # 启用 Elasticsearch 的安全功能 xpack.security.enabled: true# 启用传输层 SSL xpack.security.transport.ssl.enabled: true xpack.security.transport.ssl.verification_mode: certificate xpack.security.transport.ssl.client_authentication: required# 指定证书路径使用默认生成的 P12 文件 xpack.security.transport.ssl.keystore.path: elastic-certificates.p12 xpack.security.transport.ssl.truststore.path: elastic-certificates.p12生成证书 在 Elasticsearch 安装目录中使用 elasticsearch-certutil 工具生成证书 生成 CA 文件 cd /bin ./elasticsearch-certutil ca# (设置证书密码)可以直接回车选择不设置密码 Please enter the desired output file [elastic-stack-ca.p12]: Enter password for elastic-stack-ca.p12 :输出文件elastic-stack-ca.p12 选择密码可留空 生成节点证书 cd /bin ./elasticsearch-certutil cert --ca elastic-stack-ca.p12# (设置证书密码)可以直接回车选择不设置密码 Enter password for CA (elastic-stack-ca.p12) : Please enter the desired output file [elastic-certificates.p12]: Enter password for elastic-certificates.p12 : 输出文件elastic-certificates.p12 可选择为证书设置密码 将证书复制到配置目录 将生成的 elastic-certificates.p12 文件移动到 Elasticsearch 的配置目录通常是 $ES_HOME/config下 mv elastic-certificates.p12 $ES_HOME/config # 赋权为es用户权限 chown es:es elastic-certificates.p12​ 可选存储证书密码 如果生成证书时设置了密码需要将密码存储到 Elasticsearch 密钥库中 ./bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password ./bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password按照提示输入密码 启动 Elasticsearch 配置完成后切换为 es 用户启动 Elasticsearch 或重启ES服务 ./elasticsearch如果一切正常日志中应显示以下内容 [2024-12-03T14:27:33,401][INFO ][o.e.x.s.s.SecurityStatusChangeListener] [es-xcu-node] Active license is now [BASIC]; Security is enabled验证安全配置 设置用户密码 默认情况下Elasticsearch 启用了几个内置用户例如 elastic。运行以下命令设置密码 cd /bin ./elasticsearch-setup-passwords interactive按提示为用户设置密码特别是 elastic 用户。 访问 REST 接口 使用 curl 或其他工具测试 # 未带认证信息访问会提示报错 curl http://localhost:9200 # 提示 401 错误表明未授权# 带认证信息的请求 curl -u elastic:设置的密码 http://localhost:9200如果返回正常的 Elasticsearch 信息则配置成功。 浏览器访问 Spring Boot 项目中配置 Elasticsearch 连接账户密码 1. 引入依赖 在 pom.xml 中添加 Elasticsearch 客户端依赖 dependencygroupIdorg.elasticsearch.client/groupIdartifactIdelasticsearch-rest-high-level-client/artifactIdversion7.9.2/version /dependency2. 配置类 在 Spring Boot 项目中通过 Java 配置类创建 RestHighLevelClient Bean import org.apache.http.auth.AuthScope; import org.apache.http.auth.UsernamePasswordCredentials; import org.apache.http.impl.client.BasicCredentialsProvider; import org.apache.http.impl.nio.client.HttpAsyncClientBuilder; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.impl.nio.client.HttpAsyncClients; import org.apache.http.nio.client.HttpAsyncClientBuilder; import org.apache.http.impl.client.BasicCredentialsProvider; import org.elasticsearch.client.RestClient; import org.elasticsearch.client.RestClientBuilder; import org.elasticsearch.client.RestHighLevelClient; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;Configuration public class ElasticsearchConfig {Value(${elasticsearch.host})private String host;Value(${elasticsearch.port})private int port;Value(${elasticsearch.username})private String username;Value(${elasticsearch.password})private String password;Beanpublic RestHighLevelClient restHighLevelClient() {// 配置用户名和密码BasicCredentialsProvider credentialsProvider new BasicCredentialsProvider();credentialsProvider.setCredentials(AuthScope.ANY,new UsernamePasswordCredentials(username, password));// 构建 RestClientRestClientBuilder restClientBuilder RestClient.builder(new HttpHost(host, port)).setHttpClientConfigCallback(httpClientBuilder - httpClientBuilder.setDefaultCredentialsProvider(credentialsProvider));return new RestHighLevelClient(restClientBuilder);} }3. 配置文件 在 application.yml 或 application.properties 中添加 Elasticsearch 的相关配置 elasticsearch:host: localhostport: 9200username: elasticpassword: elasticPWD4. 使用示例 在需要使用 RestHighLevelClient 的地方直接注入并使用 import org.elasticsearch.client.RequestOptions; import org.elasticsearch.client.RestHighLevelClient; import org.elasticsearch.client.core.MainResponse; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service;Service public class ElasticsearchService {Autowiredprivate RestHighLevelClient restHighLevelClient;public String getClusterInfo() {try {MainResponse response restHighLevelClient.info(RequestOptions.DEFAULT);return response.getClusterName().toString();} catch (Exception e) {e.printStackTrace();return Error fetching cluster info;}} }5. 启动项目并验证 启动项目后调用 ElasticsearchService 中的方法验证是否成功连接到 Elasticsearch
http://www.hkea.cn/news/14577604/

相关文章:

  • 黄岛开发区网站制作青岛网站建设设计
  • 网站建设中下载php黄页系统
  • 微信 微网站开发电商平台方案
  • 蝴蝶传媒网站推广四川成都最新消息
  • 韶关微网站建设c 做的网站怎么上传
  • 自己做网站流程微信服务号怎么做商城
  • 福州网站建设 找燕狂徒 04网站建设怎么收费呀
  • 中国公路建设行业协会网站网页特效设计
  • 网站帮助页面设计搜索引擎优化搜索优化
  • 龙华城市建设局网站苏州网站开发公司电话
  • 网站域名到期登不上是怎么回事cnzz统计代码放在网站
  • 水利建设与管理司网站亚马逊网站链接
  • 贵阳市城乡建设厅网站受欢迎的手机网站建设
  • 微信公众平台绑定网站四川网站建设设计公司哪家好
  • 网站数据库到期外链信息
  • 昆明网站建设系统百度广告投放代理商
  • 服务专业公司网站建设服务济南建站公司效果
  • 百度网站推广找谁做关键词挖掘网站
  • 如何网站切换朋友圈转wordpress文章显示缩略图
  • 电子商务网站开发难点中国石油工程建设有限公司网站
  • 网站是专门对生活中的一些所谓常识做辟谣的wordpress获取token方法
  • 阿里云做网站步骤中山网站建设推广
  • 实验一html静态网站开发商城型网站建设代理加盟
  • 有没有专业做特产的网站网站搭建有分谷歌
  • 帮忙建网站的人档案网站建设对比
  • 济南做网站建设做视频网站视频短片
  • 如何用手机做网站魔艺极速建站
  • 品牌网站建设S苏州上海徐汇做网站
  • 做django后台网站岚山网站建设公司
  • 免费扑克网站阿里云 全国网站建设