의미없는 블로그
[Wazuh] 와저 다시 설치 / Cluster 구성 본문
[와저 공식 다큐먼트]
https://documentation.wazuh.com/
OpenSearch / Open Distro for Elasticsearch / Elastic Stack
이렇게 세가지 구성 중에 선택해서 설치할 수 있다
서칭 기능의 차이인거 같은데 뭐가 좋은지는 잘 모르겠다
1. 걍 와저 다큐먼트 installation guide 대로 설치하면 OpenSearch 로 설치됨
2. 엘라스틱 깔때 apt install opendistroforelasticsearch 로 깔면 Open Distro 로 깔림
3. 와저 다큐먼트에 Elastic Stack 으로 설치하는거 있는데 그걸로 하면 이렇게 됨
[OpenSearch 설치]
hi-wtest-i Ubunbu 20.04 / Ram 4G / CPU 2 core / 10G (테스트용이라 최저로) asia-northeast3 / hi-network (443, 1514 인바운드 허용) |
인덱서 - 서버 - 대시보드 설치하면 되는데
다 한 서버에 설치할거고
인덱서가 말 그대로 인덱싱 하는거고 (엘라스틱 서치 같은)
대시보드가 보여주는거 (키바나 같은)
서버는 매니저랑 파일비트
0)사전 작업
wazuh-install.sh 인스톨 파일이랑
config.yml 컨피그 파일 다운받아서
config.yml 컨피그에 인덱서, 서버, 대시보드 설정해주고
wazuh-install.sh 로 tar 파일 만들어서
각각 서버에 배포해주는 과정이다
wazuh-install.sh 랑 config.yml 파일 다운
config.yml 파일 설정하는 건데
다 한 서버에 설치할거라 ip 동일하게 지정해줬고
각각 설치할거면 각각 지정해주면 됨 (gcp 내부 ip로 지정)
wazuh-install.sh 실행시키면 config.yml 참고해서 tar 파일 생기는데
각각 설치할거면 각 서버에 tar 파일 넣어줘야됨
1)인덱서 설치
./wazuh-install.sh --wazuh-indexer node-1
비번 잘 기억
MO2fRui5c5YKGzo1gfaIBgjC+ZB7qS6H
2)서버 설치 (매니저, 파일비트)
./wazuh-install.sh --wazuh-server wazuh-1
3)대시보드 설치
./wazuh-install.sh --wazuh-dashboard dashboard
4)방화벽 오픈
iptable 말고 ufw 로 하면 됨
gcp 네트워크 에서도 443 열어줘야 됨
그러면 gcp 외부 ip 로 대시보드 붙을 수 있음
[Open Distro 설치]
https://saltlee.tistory.com/270
[Elastic Stack 설치]
https://documentation.wazuh.com/current/deployment-options/elastic-stack/index.html
요렇게 한 host 에 다 까는 방식 있고 (올인원 배포)
분산해서 설치하는 방식 있음 (분산 배포)
Master 서버(매니저, 파일비트)
Worker 서버(매니저, 파일비트)
Worker 서버(매니저, 파일비트)
...
Elastic(인덱서)
Elastic(인덱서)
...
Kibana(대시보드)
이런식으로 설치하는것
[올인원 배포]
hi-wtest-k
Ubunbu 20.04 / Ram 4G / CPU 2 core / 10G (테스트용이라 최저로)
asia-northeast3 / hi-network (443, 1514 인바운드 허용)
#엘라스틱 설치
가이드대로 하고 elasticsearch 서비스 활성화 시
systemctl 로 했다
Changed password for user elastic
PASSWORD elastic = aTDGiC4lF47qPXwST6O3
#와저 서버 설치
wazuh-manager 설치
파일비트 설치
#키바나 설치
#GCP 외부IP(443) 접속
[분산 배포]
Master 와저 서버 (hi-wtest-m1 / 10.178.0.21) Worker 와저 서버 (hi-wtest-w1 / 10.178.0.22) Worker 와저 서버 (hi-wtest-w2 / 10.178.0.23) Master node Elastic (hi-wtest-e1 / 10.178.0.18) Data node Elastic (hi-wtest-e2 / 10.178.0.19) Kibana (hi-wtest-k1 / 10.178.0.20) |
엘라스틱 설치부터 하는게 좋다고 함 (hi-wtest-e1)
#필수 구성 요소 설치
apt-get install lsb-release curl apt-transport-https zip unzip gnupg
#레파지토리 설치
curl -s https://artifacts.elastic.co/GPG-KEY-elasticsearch | gpg --no-default-keyring --keyring gnupg-ring:/usr/share/keyrings/elasticsearch.gpg --import && chmod 644 /usr/share/keyrings/elasticsearch.gpg
echo "deb [signed-by=/usr/share/keyrings/elasticsearch.gpg] https://artifacts.elastic.co/packages/7.x/apt stable main" | tee /etc/apt/sources.list.d/elastic-7.x.list
apt-get update
#엘라스틱 설치
apt-get install elasticsearch=7.17.13
curl -so /etc/elasticsearch/elasticsearch.yml https://packages.wazuh.com/4.5/tpl/elastic-basic/elasticsearch_cluster_initial_node.yml
#인증서 생성
vi /usr/share/elasticsearch/instances.yml
/usr/share/elasticsearch/bin/elasticsearch-certutil cert ca --pem --in instances.yml --keep-ca-key --out ~/certs.zip
certs.zip 이거 모든 서버에 넣으래
hi-wtest-e2 도 똑같이 elastic 깔고
certs.zip 만 넣어줌
인증서 만들 때
와저 서버 몇개 할건지 먼저 정해놔야 함
Changed password for user apm_system
PASSWORD apm_system = pHG1QqSg22ALVNuXjrbb
Changed password for user kibana_system
PASSWORD kibana_system = FSlgsLii0mw4zx8Fkm9n
Changed password for user kibana
PASSWORD kibana = FSlgsLii0mw4zx8Fkm9n
Changed password for user logstash_system
PASSWORD logstash_system = lhLLYseBKpwhu5TuKLuw
Changed password for user beats_system
PASSWORD beats_system = bwHKbYcdt0Ybm2xClNzc
Changed password for user remote_monitoring_user
PASSWORD remote_monitoring_user = znDe2Dc31yWnPycnHt7e
Changed password for user elastic
PASSWORD elastic = 3rVFncbskZCF45vpbzIK
와저 서버 Master 노드랑 Worker 노드를 정해놔야 함
wazuh-manager 로 설치하는건 동일하고 ossec.conf 에서 어떻게 설정하느냐에 따라 마스터/워커로 나뉨
ossec.conf 설정하고 wazuh-manager 서비스 start 하면 됨
hi-wtest-m1 (마스터) hi-wtest-w1 (워커) hi-wtest-w2 (워커) |
셋 다 필요한 패키지 깔고
apt-get install lsb-release curl apt-transport-https zip unzip gnupg
GPG키?
curl -s https://packages.wazuh.com/key/GPG-KEY-WAZUH | gpg --no-default-keyring --keyring gnupg-ring:/usr/share/keyrings/wazuh.gpg --import && chmod 644 /usr/share/keyrings/wazuh.gpg
저장소 추가
echo "deb [signed-by=/usr/share/keyrings/wazuh.gpg] https://packages.wazuh.com/4.x/apt/ stable main" | tee -a /etc/apt/sources.list.d/wazuh.list
apt-get update
와저 매니저 설치
apt-get install wazuh-manager=4.5.4-1
ossec.conf 구성해주는데
이때 마스터/워커 각자 설정해주면 됨
key는 openssl rand -hex 16 명령으로 생성
systemctl daemon-reload
systemctl enable wazuh-manager
systemctl start wazuh-manager
/var/ossec/bin/cluster_control -l 했을때 잘 뜨면 된다
파일비트 설치하고
인증서 certs.zip 옮겨와서 아래 명령어 수행할때
filebeat-X 부분을 엘라스틱 instances.yml 에 설정한 대로 지정하라고 함
mkdir /etc/filebeat/certs/ca -p zip -d ~/certs.zip "ca/ca.key" unzip ~/certs.zip -d ~/certs cp -R ~/certs/ca/ ~/certs/filebeat-X/* /etc/filebeat/certs/ mv /etc/filebeat/certs/filebeat-X.crt /etc/filebeat/certs/filebeat.crt mv /etc/filebeat/certs/filebeat-X.key /etc/filebeat/certs/filebeat.key chmod -R 500 /etc/filebeat/certs chmod 400 /etc/filebeat/certs/ca/ca.* /etc/filebeat/certs/filebeat.* rm -rf ~/certs/ ~/certs.zip 이렇게 설정되어 있음 hi-wtest-m1 > filebeat-1 hi-wtest-w1 > filebeat-2 hi-wtest-w2 > filebeat-3 |
filebeat test output 으로 확인하면 되는데
elastic2 가 좀 이상해서 연결이 안돼서 일단 단일 노드로 연결해둠
키바나 깔고
인증서 설치하고
하라는대로 하면 됨
키바나 외부 ip로 접속해 봄
55000 안열어줘서 그런감...?
아 저기 wazuh.yml 파일에 와저 매니저 IP로 지정해주면 된다
워커 1, 2 에다가 각각 연결해 보겠다
워커 죽으면 status 에 사라지고
restart cluster 해도 안생기는데 이건 걍 현재 선택된 매니저를 리스타트 하는건가 보다
'# 나 > !nfra' 카테고리의 다른 글
[Wazuh] 와저 이벤트 Discover, 디코더 설정 (0) | 2023.11.28 |
---|---|
[Wazuh] 와저 SCA (0) | 2023.10.10 |
[Wazuh] 와저 서버 IP 변경, Kibana server is not ready yet (1) | 2023.10.05 |
와저(Wazuh) 구축 테스트 - GCP (1) | 2023.02.21 |
[도커] Authorization-Plugin 설치 및 사용하기 (0) | 2021.06.30 |