突然發現我有些東西好像忘了說了
我的測試環境有架測一台主機是用容器安裝Mongodb的
這篇文章其實應該要在更前面的比較正確XD
先前的文章有提到有三種方式管理agent
這邊以CLI為例帶大家操作一次
我們來做幾件事情
我們先利用以下的指令來進入wazuh manager容器內的bash
docker exec -it single-node_wazuh.manager_1 bash
如果要列出全部的agent,可以使用內建的executable檔案執行CLI
名稱叫agent_control,使用以下的指令
可以注意到,列出了目前註冊的agent
包含了server本身,本身會是ID為0的機器
/var/ossec/bin/agent_control -l
接下來我們在另外一台主機上面安裝agent
另外一台為準備要啟動資料庫服務的主機
這邊demo其實你要用原本安裝Nginx的agent來操作也是可以的
我只是想稍微做一點變化(架構圖請看文章最後)
另一台啟動一台新的虛擬機,負責安裝資料庫服務以及註冊Agent
資料庫使用以下docker-compose.yml啟動
mkdir -p /data/mongo
touch /data/mongo/mongod.log
chown 999:999 /data/mongo/mongod.log
version: '3.1'
services:
mongo:
image: mongo:4.2
restart: always
container_name: mongo
command: mongod --auth --logpath /var/log/mongodb/mongod.log --logappend
environment:
- MONGO_INITDB_ROOT_USERNAME=userAdmin
- MONGO_INITDB_ROOT_PASSWORD=userPassword
volumes:
- /data/mongo/db:/data/db
- /data/mongo/mongod.log:/var/log/mongodb/mongod.log
ports:
- "27017:27017"
安裝連線工具
wget -qO- https://www.mongodb.org/static/pgp/server-6.0.asc | sudo tee /etc/apt/trusted.gpg.d/server-6.0.asc
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
sudo apt-get update
sudo apt-get install -y mongodb-mongosh
mongosh --version
測試連線正常,確定可正常登入
mongosh -u userAdmin -p 'userPassword' --authenticationDatabase admin
也可以看到有LOG紀錄
我們在此台主機安裝agent
curl -so wazuh-agent.deb https://packages.wazuh.com/4.x/apt/pool/main/w/wazuh-agent/wazuh-agent_4.5.0-1_amd64.deb && sudo WAZUH_MANAGER='192.168.101.139' WAZUH_AGENT_GROUP='default' dpkg -i ./wazuh-agent.deb
sudo systemctl daemon-reload
sudo systemctl enable wazuh-agent
sudo systemctl start wazuh-agent
利用CLI或API將agent進行分組
回到wazuh manager查看agent list
/var/ossec/bin/agent_control -l
多了一個ID 002
正好,發現我忘了改hostname
我們現在測試把002的agent移除
使以下指令將002的agent移除
/var/ossec/bin/manage_agents -r 002
不過阿…重新安裝之後
我們會發現兩件事情
因為這台agent的主機實際上還是活得好好的
上面的wazuh-agent也是持訊續運行 (可以用systemctl status wazuh-agent去看)
所以刪除後只會消失一下,接著又會重新註冊agent (放著不動,等待一段時間就會回來了)
而且會發現ID 變成003,再移除一次又會再回來,變成004喔
不過這個ID我們就不管了XD
我不確定這個到底是不是正常的邏輯XDDDDD
這邊我想要真的移除,還是先到agent主機主機上停用移除agent
然後再來server上移除上面顯示的agent
接著主機再重新安裝agent
最後
接下來呢我們要將一台agent給加入到名稱為dbms的group
步驟:
先新增一個group名稱為dbms
將節點004移除default這個群組
將節點004分組至dbms
列出dbms這個group下面有哪些成員
/var/ossec/bin/agent_groups -a -g dbms
/var/ossec/bin/agent_groups -a -i 004 -g dbms
/var/ossec/bin/agent_groups -r -i 004 -g default
/var/ossec/bin/agent_groups -l -g dbms
一旦有了新的群組,server對於群組的設定將會在其名字下面的路徑
/var/ossec/etc/shared/dbms/agent.conf
我們在manager server上修改該group目錄下的agent.conf
就會被同步到agent上的agent.conf
當然以上內容都可以在dashboard進行操作
也是很方便的
上面大家可能有注意到有件事情可能覺得詭異
為何我要把agent 004給移除default這個群組呢
這個XD
原本其實是個伏筆了… 且待後面章節揭曉答案!
但實際上就是昨天的內容啦 會有多重群組的問題要解決哈哈
所以我們這系列
目前是啟動了三台虛擬機
一台是安裝Wazuh
一台安裝Nginx (本機/容器)
一台安裝Mongodb (容器)
架構圖如下