ElasticSearch는 url을 이용해서 쉽게 데이터 전송이 가능하기 때문에 ElasticSearch를 이용하여 서비스를 할 때 반드시 보안설정을 해주어야 합니다. 만약 해주지 않는다면 임의의 사용자가 마음대로 CRUD 작업이 가능합니다.
따라서 이번 글에서는 ElasticSearch와 Kibana에 보안을 적용하려고 합니다.
*참고 : 보안 적용 법은 아래 공식 홈페이지에 자세히 나와있습니다.
Set up minimal security for Elasticsearch | Elasticsearch Guide [7.12] | Elastic
The ES_PATH_CONF variable is the path for the Elasticsearch configuration files. If you installed Elasticsearch using archive distributions (zip or tar.gz), the variable defaults to ES_HOME/config. If you used package distributions (Debian or RPM), the var
www.elastic.co
서버는 CentOS7이고, ElasticSearch는 yum이 아닌 tar.gz로 다운받았습니다. 따라서 파일의 경로는 다를수 있습니다. 환경에 맞게 명령어를 입력하시길 바랍니다.
# vi /home/es/elasticsearch-7.13.4/config/elasticsearch.yml |
elasticsearch.yml 파일에 아래와 같이 입력해줍니다.
xpack.security.enabled: true xpack.security.transport.ssl.enabled: true |
설정 후 elasticsearch를 재시작 해줍니다.
# systemctl stop elasticsearch # systemctl start elasticsearch |
* 참고 : ElasticSearch는 root 계정으로 실행시킬수 없습니다. 아래 글을 참고하시길 바랍니다.
[ElasticSearch] org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
Elasticsearch 5.0 이후에서는 root에서 elasticsearch를 실행할 수 없게 했기 때문에 sudo 명령어를 사용한다고 Elasticsearch를 실행 할 수 없습니다. 계정을 새로 생성 한 후 권한을 부여하여 그 계정으로 실.
kingofbackend.tistory.com
아래 명령으로 계정 별 패스워드를 설정해 줍니다. auto 는 자동으로 패스워드가 입력 되며 interactive는 개인이 직접 패스워드를 입력 할 수 있는데 저는 auto로 설정 해보겠습니다.
# /home/es/elasticsearch-7.13.4/bin/elasticsearch-setup-passwords auto |
아래와 같이 패스워드가 자동 입력되어 표시 됩니다. 추후 사용을 위해 꼭 어딘가에 저장해놓습니다!
이후 curl 명령으로 id/passwd 없이 호출 해보면 아래와 같이 error가 발생 합니다.
그럼 다시 설정한 id와 패스워드를 넣고 호출 해봅니다. 호출 방법은 curl -u "id/passwd" localhost:9200 으로 호출 하면 됩니다.
아래와 같이 id, passwd를 입력 하면 정상 호출 된 것을 볼 수 있습니다.
'...' 카테고리의 다른 글
[Elastic Search+Java] 사용자 인증 구현하기 Basic Authentication (0) | 2021.08.19 |
---|---|
[ElasticSearch] ElasticSearch 외부 접속하기 (0) | 2021.08.18 |
[Linux] CentOS 7에 OpenJDK 1.8 설치하기 (0) | 2021.08.18 |
[Kubernetes] nodeport, port, targetport 차이 (0) | 2021.08.17 |
[Linux] max user processes 늘리는 방법 (0) | 2021.08.17 |