搭建过zabbix用户的人都知道,zabbix默认是以zabbix用户来搭建的,如果为了服务器的安全着想,防止别人利用zabbix漏洞来攻击你的服务器,这时又有一个安全的策略,修改默认的zabbix启动用户。
怎么实现呢?本人给您一一道来。
一、安装zabbix依赖。
$ sudo yum -y install gcc gcc-c++ autoconf php php-gd php-mysql php-bcmath php-mbstring php-xml curl curl-devel net-snmp-devel perl-DBI libxml2-devel OpenIPMI-devel openldap-devel libevent-devel php-ldap php-fpm unixODBC-devel
二、下载zabbix到服务器。
$ mkdir -p /data/package
$ cd /data/package/
$ wget https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.2.0/zabbix-4.2.0.tar.gz
三、编译安装zabbix
3.1 解压zabbix
$ tar -xf zabbix-4.2.0.tar.gz
$ cd zabbix-4.2.0/
3.2 编译前准备,更改默认用户。
$ vim src/libs/zbxnix/daemon.c
if (NULL == user)
user = "www";
# 找到此处,将用户更改为你想要的用户,本人将其改为了www用户。
3.3 编译安装。
$ mkdir /data/soft
$ ./configure --prefix=/data/soft/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi --with-unixodbc
$ make install
不是很会修改zabbix配置文件可以参考centos7快速搭建zabbix4.0.3监控,只是目录不同,这里为什么要用/data目录作为搭建目录完全是为了服务器着想,一般服务器的系统盘和数据盘是分开的,将服务搭建到别的磁盘上可以避免系统坏了找不到服务的安装目录和数据。
3.4 修改配置文件启动zabbix
$ cd /data/soft/zabbix/ # 修改配置文件
$ sed -i 's/# DBPassword=/DBPassword=zabbix/' etc/zabbix_server.conf
$ sed -i 's#PidFile=/tmp#PidFile=/logs/zabbix#' etc/zabbix_server.conf
$ sed -i 's@# PidFile /tmp@PidFile /logs/zabbix' etc/zabbix_server.conf
$ mkdir -p /logs/zabbix
$ mysql -uroot -p -e "create database zabbix;" # 创建数据库,授权。
$ mysql -uroot -p -e "grant all on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix';"
$ cd /data/package/zabbix-4.2.0/database/mysql/ # 导入数据
$ mysql -uzabbix -pzabbix zabbix < schema.sql
$ mysql -uzabbix -pzabbix zabbix < images.sql
$ mysql -uzabbix -pzabbix zabbix < data.sql
$ cd /data/package/zabbix-4.2.0/frontends/ # 准备网页文件
$ mkdir /data/www
$ cp -r php/ /data/www/zabbix
$ chmod 777 /data/www/zabbix/conf/
$ cd /data/soft/zabbix/ # 启动zabbix_server
$ ./sbin/zabbix_server
3.5 准备nginx配置文件,搭建nginx可以访问源码搭建nginx
$ vim zabbix.conf
server {
listen 80;
server_name *********.com;
root /data/www/zabbix/;
index index.php;
access_log /logs/nginx/zabbix.log main;
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi.conf;
}
}
nginx根据自己的配置来配置。
3.6 修改php配置文件,启动php
$ sudo vim /etc/php.ini # 修改下面各个参数值
max_execution_time = 300
max_input_time = 300
post_max_size = 32M
date.timezone = Asia/Shanghai
$ www sudo systemctl restart php-fpm.service # 启动php
3.7 打开网页测试,链接zabbix。
浏览器输入nginx所指定的域名或ip地址。按照提示初始化zabbix。