熱門搜索 Zabbix技術資料 Zabbix常見問、答討論 成功案例 Zabbix交流區 Prometheus交流區
前面文章曾介紹過如果使用docker-compose快速部署一個zabbix系統,但是部署的zabbix系統是使用http協議進行訪問的。有時候為了保證安全。我們需要配置使用https協議進行訪問。
下面就講述如何使用自簽名的ssl證書配置https訪問。(注:若是有簽發的證書,也可使用配置,無須自己生成自簽名證書。)
本文主要講述zabbix官方鏡像如何配置https訪問,需為zabbix官方提供的zabbix docker鏡像來部署的zabbix監控系統。
首先,先生成自簽名證書。
這里提供一個快速生成證書的腳本,執行腳本需要輸入一個IP的參數,然后會在腳本所在目錄下面生成名為ssl.crt的證書和ssl.key的密鑰。
然后使用openssl生成dhparam證書。
openssl dhparam -out dhparam.pem 2048
接下來就需要將ssl證書和dhparam證書一共掛載進ZABBIX WEB鏡像里面,隨后重啟即可生效。
[if !supportLists]l?[endif]若是zabbix系統使用docker-compose部署(可參考文章:使用docker-compose部署zabbix監控系統),則修改對應的docker-compose.yaml文件,如:
修改完后,直接使用命令:
docker-compose up –d
重新創建容器即可生效
[if !supportLists]l?[endif]若是zabbix系統直接使用docker命令啟動(可參考文章:如何使用docker快速部署zabbix監控系統),則需重新創建ZABBIX WEB容器,如:
先刪除舊容器,刪除命令:
docker rm -f 容器名
然后重新創建容器命令:
docker run –name zabbix-web -e ZBX_SERVER_HOST=192.168.75.31 -e ZBX_SERVER_PORT=10051 -e DB_SERVER_HOST=192.168.75.31 -e DB_SERVER_PORT=3306
-e MYSQL_DATABASE=zabbix -e MYSQL_USER=root -e MYSQL_PASSWORD=zabbix -p 48080:8080 -p 48443:8443 –v /data/zabbix/ssl:/etc/ssl/nginx -d zabbix/zabbix-web-nginx-mysql:latest
掛載容器參數解釋:–v ./ssl:/etc/ssl/nginx
-v —— 指啟用卷掛載,格式:宿主機目錄(文件)/容器目錄(文件)
/data/zabbix/ssl:/etc/ssl/nginx —— 指,將宿主機/data/zabbix/ssl目錄掛載到容器的/etc/ssl/nginx目錄
配置好,重新創建容器后,查看容器日志:
docker logs -f 容器名(容器ID)
可以看到,已經啟用了SSL
最后到瀏覽器進行訪問測試:
http://IP:PORT
如圖,配置已完成。
大家好,我是樂樂,專注運維技術研究與分享,關注我,了解更多zabbix知識。如有zabbix問題也可以到尊龍時凱社區留言提問,共同探討解決方案。
尊龍時凱基于zabbix實現,支持二次開發,采用分布式部署,集中告警,一覽視圖、網絡拓撲、業務地圖、投屏視圖、圖形視圖各類視圖等。
View details