本次环境为rockylinux9.6 使用zabbix7.0LTS版本
阿里云镜像站仓库配置指南
1. 手动配置基础仓库
1.1 Rocky Linux 9 基础仓库配置
创建 /etc/yum.repos.d/rocky.repo:
ini
[baseos]
name=Rocky Linux $releasever - BaseOS
baseurl=https://mirrors.aliyun.com/rockylinux/$releasever/BaseOS/$basearch/os/
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/rockylinux/RPM-GPG-KEY-rockyofficial
enabled=1
[appstream]
name=Rocky Linux $releasever - AppStream
baseurl=https://mirrors.aliyun.com/rockylinux/$releasever/AppStream/$basearch/os/
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/rockylinux/RPM-GPG-KEY-rockyofficial
enabled=1
[extras]
name=Rocky Linux $releasever - Extras
baseurl=https://mirrors.aliyun.com/rockylinux/$releasever/extras/$basearch/os/
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/rockylinux/RPM-GPG-KEY-rockyofficial
enabled=1
1.2 EPEL 仓库配置
创建 /etc/yum.repos.d/epel.repo:
ini
[epel]
name=Extra Packages for Enterprise Linux $releasever - $basearch
baseurl=https://mirrors.aliyun.com/epel/$releasever/Everything/$basearch/
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/epel/RPM-GPG-KEY-EPEL-$releasever
[epel-debuginfo]
name=Extra Packages for Enterprise Linux $releasever - $basearch - Debug
baseurl=https://mirrors.aliyun.com/epel/$releasever/Everything/$basearch/debug/
enabled=0
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/epel/RPM-GPG-KEY-EPEL-$releasever
[epel-source]
name=Extra Packages for Enterprise Linux $releasever - $basearch - Source
baseurl=https://mirrors.aliyun.com/epel/$releasever/Everything/SRPMS/
enabled=0
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/epel/RPM-GPG-KEY-EPEL-$releasever
1.3 Zabbix 仓库配置
根据图片信息,创建 /etc/yum.repos.d/zabbix.repo:
ini
[zabbix]
name=Zabbix Official Repository - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/7.0/rhel/9/$basearch/
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-B5333005
https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-08EFA7DD
https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-79EA5ED4
https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591
https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX
[zabbix-non-supported]
name=Zabbix Non-Supported Repository - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/9/$basearch/
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-B5333005
https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-08EFA7DD
https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-79EA5ED4
https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591
https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX
[zabbix-tools]
name=Zabbix Tools Repository - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix-tools/rhel/9/$basearch/
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-TOOLS
3. GPG 密钥导入及作用
3.1 如何导入 GPG 密钥
bash
# 导入 Rocky Linux GPG 密钥
sudo rpm --import https://mirrors.aliyun.com/rockylinux/RPM-GPG-KEY-rockyofficial
# 导入 EPEL GPG 密钥
sudo rpm --import https://mirrors.aliyun.com/epel/RPM-GPG-KEY-EPEL-9
# 导入 Zabbix GPG 密钥(根据地址目录中的最新密钥)
sudo rpm --import https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-B5333005
sudo rpm --import https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-TOOLS
# 导入历史 Zabbix 密钥(可选,确保兼容性)
sudo rpm --import https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-08EFA7DD
sudo rpm --import https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-79EA5ED4
sudo rpm --import https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591
sudo rpm --import https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX
3.2 GPG 密钥的作用
GPG 密钥的主要作用:
-
验证软件包完整性:
- 确保下载的软件包在传输过程中没有被篡改
- 防止中间人攻击,确保软件包来源可信
-
验证软件包来源:
- 确认软件包来自官方或可信的发布者
- 防止恶意软件伪装成合法软件包
-
数字签名验证:
- 每个 RPM 包都有数字签名
- GPG 密钥用于验证这些签名的有效性
- 如果签名验证失败,yum/dnf 会拒绝安装
-
建立信任链:
- 确保软件供应链的安全
- 用户信任 GPG 密钥,密钥信任软件包
从图片中可用的 GPG 密钥:
RPM-GPG-KEY-ZABBIX-B5333005(3.1KB, 2024-06-04) - 最新的主密钥RPM-GPG-KEY-ZABBIX-08EFA7DD(3.1KB) - 较新的密钥RPM-GPG-KEY-ZABBIX-79EA5ED4(1.7KB) - 历史密钥RPM-GPG-KEY-ZABBIX-A14FE591(1.7KB) - 历史密钥RPM-GPG-KEY-ZABBIX(1.3KB) - 基础密钥RPM-GPG-KEY-ZABBIX-TOOLS(3.1KB, 2024-04-12) - 工具仓库专用密钥zabbix-official-repo-key(8.8KB, 2024-05-23) - 官方仓库密钥文件
4. 配置完成后的操作
4.1 清理并更新缓存
bash
# 清理所有缓存
sudo dnf clean all
# 生成新的缓存
sudo dnf makecache
# 验证仓库列表
sudo dnf repolist
4.2 验证仓库配置
bash
# 列出所有启用的仓库
sudo dnf repolist enabled
# 测试安装软件包
sudo dnf install -y epel-release
sudo dnf install -y zabbix-agent
4.3 检查密钥导入状态
bash
# 查看已导入的 GPG 密钥
rpm -q gpg-pubkey --qf '%{NAME}-%{VERSION}-%{RELEASE}\t%{SUMMARY}\n'
# 查看特定密钥
rpm -qi gpg-pubkey-b5333005-*
5. 故障排除
5.1 如果遇到 GPG 密钥错误
bash
# 临时禁用 GPG 检查(仅用于测试)
sudo dnf install --nogpgcheck package_name
# 或者编辑仓库文件临时关闭 GPG 检查
sudo sed -i 's/gpgcheck=1/gpgcheck=0/' /etc/yum.repos.d/repo_file.repo
5.2 验证仓库 URL
bash
# 测试仓库 URL 是否可达
curl -I https://mirrors.aliyun.com/zabbix/zabbix/7.0/rhel/9/x86_64/repodata/repomd.xml
curl -I https://mirrors.aliyun.com/zabbix/zabbix-tools/rhel/9/x86_64/repodata/repomd.xml
curl -I https://mirrors.aliyun.com/zabbix/non-supported/rhel/9/x86_64/repodata/repomd.xml
通过以上配置,您就完成了阿里云镜像站所有必需仓库的配置,确保了软件包下载的安全性和完整性验证。
6.安装mysql或者 MariaDB
使用 Rocky Linux AppStream 仓库(默认)
bash
# 查看可用的 MySQL 模块
sudo dnf module list mysql
# 启用 MySQL 8.0 模块
sudo dnf module enable mysql:8.4
# 安装 MySQL
sudo dnf install -y mysql mysql-server
# 启动服务
sudo systemctl enable --now mysqld
# 查看版本
mysql --version
初始化配置
bash
# 运行安全配置脚本
sudo mysql_secure_installation
# 按提示操作,建议:
# 1. 设置 root 密码
# 2. 移除匿名用户 (Y)
# 3. 禁止远程 root 登录 (Y)
# 4. 移除测试数据库 (Y)
# 5. 重新加载权限表 (Y)
安装zabbix组件 参考zabbix官网步骤即可
前面已经操作过了 从2.b开始即可



安装Zabbix server,Web前端,agent
bash
dnf install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent
如果报错gpgkey校验失败之类的 直接忽略吧 想研究的自己慢慢研究
bash
dnf install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent --nogpgcheck
配置数据库
bash
mysql -uroot -p
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;
导入初始架构和数据,系统将提示您输入新创建的密码。
bash
zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix
为Zabbix server配置数据库 编辑配置文件 /etc/zabbix/zabbix_server.conf找到并修改DBPassword参数
bash
# DBName=
DBName=zabbix
### Option: DBSchema
# Schema name. Used for PostgreSQL.
#
# Mandatory: no
# Default:
# DBSchema=
### Option: DBUser
# Database user.
#
# Mandatory: no
# Default:
# DBUser=
DBUser=zabbix
### Option: DBPassword
# Database password.
# Comment this line if no password is used.
#
# Mandatory: no
# Default:
DBPassword=wy@941022
为Zabbix前端配置PHP
编辑配置文件 /etc/nginx/conf.d/zabbix.conf 找到server块的listen和servername 取消注释并修改为你的地址和端口
bash
server {
listen 80;
server_name _;
root /usr/share/zabbix;
index index.php;
location = /favicon.ico {
log_not_found off;
启动Zabbix server和agent进程
启动Zabbix server和agent进程,并为它们设置开机自启(你的nginx和mysql也顺带开启)
bash
systemctl restart zabbix-server zabbix-agent nginx php-fpm
bash
systemctl enable zabbix-server zabbix-agent nginx php-fpm
最后关闭防火墙 修改enforce
bash
# 停止firewalld服务
sudo systemctl stop firewalld
# 禁用开机启动
sudo systemctl disable firewalld
# 检查状态
sudo systemctl status firewalld
bash
# 查看当前状态
getenforce
# 或
sestatus
# 临时设置为 permissive 模式(重启后恢复)
sudo setenforce 0
# 永久修改(需要重启生效)
sudo sed -i 's/SELINUX=enforcing/SELINUX=permissive/g' /etc/selinux/config
# 或直接编辑配置文件
sudo vi /etc/selinux/config
# 将 SELINUX=enforcing 改为:
# SELINUX=permissive (警告模式)
# 或
# SELINUX=disabled (完全禁用)
最后一步
浏览器访问虚拟机IP地址即可 自动跳转到setup.php 安装向导 完成后会生成配置文件在指定目录

语言不支持中文是我因为rockylinux默认没装中文包 装下
bash
# 1. 查看当前已安装的locale
locale -a
# 通常只会看到英文locale,如 en_US.utf8
# 2. 安装中文语言包
sudo dnf install -y glibc-langpack-zh --nogpgcheck
# 3. 再次查看locale,确认中文已安装
locale -a | grep zh_CN
# 应该显示:zh_CN.utf8
刷新浏览器选择中文即可。

然后下一步下一步即可

中文乱码 有很多方框 需要修复下 下载字体 修改字体支持(自己研究下吧)