elasticsearch.yml |
이후 디폴트 계성 생성.
[root@Centos7 ~]# /usr/share/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]
다음은 키바나의 엘라스틱 연결 설정.
kibana.yml |
이때 계정 정보가 평문으로 노출되는 게 찝찝하다면 다음처럼 keystore 기능을 이용해서 kibana.yml 설정을 이용하지 않고도 연결 계정 정보를 제공할 수 있다.
[root@Centos7 ~]# /usr/share/kibana/bin/kibana-keystore create --allow-root
Created Kibana keystore in /var/lib/kibana/kibana.keystore
[root@Centos7 ~]# /usr/share/kibana/bin/kibana-keystore add elasticsearch.username --allow-root
Enter value for elasticsearch.username: *******
[root@Centos7 ~]# /usr/share/kibana/bin/kibana-keystore add elasticsearch.password --allow-root
Enter value for elasticsearch.password: ******
다음은 로그스태시 파이프라인 설정. 엘라스틱에 인증 기능을 적용하면 로그스태시 역시 엘라스틱 연결을 위한 계정 정보가 필요하다.
input {
generator {
message => "test data"
count => 1
}
}
output {
elasticsearch {
hosts => "192.168.56.100"
user => "elastic"
password => "pass"
}
}
이때 역시 계정 정보 노출을 막으려면 다음처럼 keystore 기능을 이용하면 된다.
[root@Centos7 ~]# /usr/share/logstash/bin/logstash-keystore --path.settings /etc/logstash create
WARNING: The keystore password is not set. Please set the environment variable `LOGSTASH_KEYSTORE_PASS`. Failure to do so will result in reduced security. Continue without password protection on the keystore? [y/N] y
Created Logstash keystore at /etc/logstash/logstash.keystore
[root@Centos7 ~]# /usr/share/logstash/bin/logstash-keystore --path.settings /etc/logstash add es_user
Enter value for es_user:
Added 'es_user' to the Logstash keystore.
[root@Centos7 ~]# /usr/share/logstash/bin/logstash-keystore --path.settings /etc/logstash add es_password
Enter value for es_password:
Added 'es_password' to the Logstash keystore.
이후엔 파이프라인 설정의 계정 정보를 다음처럼 keystore에 저장한 변수명으로 바꿔주면 됨.
input {
generator {
message => "test data"
count => 1
}
}
output {
elasticsearch {
hosts => "192.168.56.100"
user => "${es_user}"
password => "${es_password}"
}
}
참고로 윈도우 버전은 로그스태시 keystore 생성이 안 되고, 리눅스 7.4.1 이전 버전은 로그스태시 서비스 구동 시 keystore를 찾지 못하는 버그가 있는 듯하다.
댓글 없음:
댓글 쓰기