解决单台Elasticsearch 未授权访问漏洞

一、单机部署

1、新增密码

编辑配置文件 bin/elasticsearch.yml,新增配置

Go 复制代码
#开启密码验证
xpack.security.enabled: true
xpack.license.self_generated.type: basic
xpack.security.transport.ssl.enabled: true

如下截图所示:

2、java应用调用ES服务

报错提示没有用户信息:

复制代码
Elasticsearch exception [type=security_exception, reason=missing authentication credentials for REST request [/seproject/_search?typed_keys=true&ignore_unavailable=false&expand_wildcards=open&allow_no_indices=true&ignore_throttled=true&search_type=query_then_fetch&batched_reduce_size=512&ccs_minimize_roundtrips=true]]

3、设置一下用户及密码

ES要先启动才能设置否则报错,如下图:

启动ES:

复制代码
./elasticsearch -d

设置密码:

复制代码
./elasticsearch-setup-passwords interactive

4、访问需要密码,输入刚才设置的密码就正常访问

5、java程序修改,新增用户及密码,密码放到配置里

复制代码
    RestHighLevelClient client() {
        RestClientBuilder build = RestClient.builder(createHosts()).setRequestConfigCallback(new RestClientBuilder.RequestConfigCallback() {
            @Override
            public RequestConfig.Builder customizeRequestConfig(RequestConfig.Builder builder) {
                return builder.setConnectTimeout(5000 * 1000) // 连接超时(默认为1秒)
                        .setSocketTimeout(6000 * 1000);// 套接字超时(默认为30秒)//更改客户端的超时限制默认30秒现在改为100分钟
            }
        });
        //加密码后增加
        CredentialsProvider credentialsProvider = new BasicCredentialsProvider();
        credentialsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(username, password));
        build.setHttpClientConfigCallback((HttpAsyncClientBuilder httpAsyncClientBuilder) -> httpAsyncClientBuilder.setDefaultCredentialsProvider(credentialsProvider));
       //加密码后增加
        RestHighLevelClient restHighLevelClient = new RestHighLevelClient(build);
        return restHighLevelClient;
    }

5、重启java应用再次访问,正常

6、Kibana,连不上

7、配置Kibana config/kinana.yml

默认是注释掉的

复制代码
elasticsearch.username: kibana
elasticsearch.password: password

8、使用刚才设置密码的用户登录

相关推荐
garmin Chen3 小时前
Elasticsearch(2):JavaRestClient操作Elasticsearch全流程实战指南
java·大数据·elasticsearch·搜索引擎
不做无法实现的梦~16 小时前
git指令速查
大数据·elasticsearch·搜索引擎
Elastic 中国社区官方博客19 小时前
Elastic 线下 Meetup 将于 2026 年 7 月 26 号下午在深圳举行
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
Elastic 中国社区官方博客20 小时前
Elasticsearch 如何通过 synthetic _id 和 Bloom filters 将时序存储降低 34%
大数据·数据库·elasticsearch·搜索引擎·serverless·全文检索·时序数据库
AskHarries1 天前
OpenClaw Skill 从哪里找
大数据·elasticsearch·搜索引擎
xzzd_jokelin1 天前
AI编程,几个核心工件写成了可直接使用的文件
大数据·人工智能·elasticsearch·ai编程·codex
明夜之约1 天前
Elasticsearch 深度解析:从倒排索引原理到亿级数据生产实战
大数据·elasticsearch·搜索引擎
garmin Chen1 天前
Elasticsearch(1):Elasticsearch核心原理与基础操作总结
java·大数据·笔记·elasticsearch·搜索引擎·全文检索
GISer_Jing1 天前
Claude Code 技术深度解析:一个活在终端里的 AI 编程助手
人工智能·elasticsearch·前端框架
西敏寺的乐章1 天前
01-倒排索引原理-搜索引擎为什么能秒搜
java·elasticsearch·搜索引擎