最近在研究 zabbix——分布式系统、网络工具即“网络管理员平台”也可称为自动化运维平台,就是可以监控计算机的 CPU、硬盘 IO、网卡流量、甚至是 Windows 日志。
这种平台有很多,如 ManageEngine(卓豪)系列里面的 OpManager(收费的,淘宝可以买激活文件)、Zabbix 等等(其他的没用过不知道)。这类平台一般采用 Snmp 协议、IP、WMI(Windows Management Instrumentation)、客户端来监视你关注的计算机设备或者网络设备的在线、CPU、内存、硬盘的状态。
ManageEngine 非常成熟,局域网自动发现主机、自动化配置监控项目都较为便利,不过 ManageEngine 是基于 SNMP(端口 161)或 WMI(端口 135)来监控 Linux/Windows 设备,是没有客户端的。换句话说从被监控的机器送出来的数据一定是端口 161 或 135 输出。
“端口 161 或 135 怎么了?直接用不行吗?”。在大型局域网里面,Snmp 和 WMI 都是潜在被攻击的服务,同样连累端口 161 或 135 被丢在防火墙的禁用名单里。大型的局域网里面,交换机、防火墙设备品类特别多,不同局域网段管理的部门多如牛毛,甚至有时是另一家公司负责网络和设备的日常维护。嘿嘿,那就不是一个办公室里的同事喊一句人家就给你授权那么简单了,沟通成本太高。
有人会说,为啥不能更改 Snmp 协议或 WMI 的端口,20 年的时候我问过官方客服,他们说:“不好意思 OpManager 不支持 WMI 的端口修改”。也就是 Windows 的 WMI 改了端口也没用,OpManager 还是会去访问端口 135。
Zabbix Agent 就解决了这个问题。Zabbix Server/Agent 监听的端口分别是 10051/10050,同时这两个端口均是可以使用配置文件进行修改。
Zabbix 分为 Server 版和 Agent 两部分。Server 就是服务器端,目前只有 Linux 版本,安装完成后用浏览器访问,成品如下图。
PS:不要尝试攻击图片上的 ip,这就是个代理服务器,有防火墙的。
Zabbix 有比较完善的安装流程,接下来我用 Ubuntu Server 20.04 进行演示
a.安装 Zabbix repository
sudo wget https://repo.zabbix.com/zabbix/6.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.2-4%2Bubuntu20.04_all.deb
sudo dpkg -i zabbix-release_6.2-4+ubuntu20.04_all.deb
sudo apt update
b. 安装 Zabbix server,Web 前端,agent
sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent
c. 创建初始数据库
Mariadb 的安装来自:https://zhuanlan.zhihu.com/p/572146789 - 知乎专栏
sudo apt install -y mariadb-server
sudo mysql_secure_installation
#直接回车,空
是否设置密码:y
输入设置密码:
再次输入密码:
是否移除anonymous用户:y
是否不允许root远程登录:n
是否移除test数据库:y
是否更新:y
# 查看运行情况,并开启自启动
root@debian11:~# systemctl status mariadb
root@debian11:~# systemctl enable mariadb
在数据库主机上运行以下代码。
sudo mysql -uroot -p
password
mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
mysql> create user zabbix@localhost identified by 'password';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> set global log_bin_trust_function_creators = 1;
mysql> quit;
导入初始架构和数据,系统将提示您输入新创建的密码。
sudo zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix
d. 为 Zabbix server 配置数据库
编辑配置文件 /etc/zabbix/zabbix_server.conf
sudo nano /etc/zabbix/zabbix_server.conf
zabbix_server.conf 里面加
DBPassword=password
e. 启动 Zabbix server 和 agent 进程
启动 Zabbix server 和 agent 进程,并为它们设置开机自启:
sudo systemctl restart zabbix-server zabbix-agent apache2
sudo systemctl enable zabbix-server zabbix-agent apache2
浏览器地址栏输入
http://ip/zabbix
默认账号Admin
默认密码:Zabbix
至此 Zabbix Server 安装完成
当然 Agent 也可以选择安装
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于