Siguiendo estos pasos pude instalar correctamente Zabbix en su última versión 3.4 en Debian 9 Stretch, costo un poco pero finalmente salio andando bien, así que sin más dejo el paso a paso. A tener en cuenta, lo hice en un Debian con gnome, aunque no hace falta el entorno de ventanas en absoluto, ya lo tenía así que lo hice así, y todo esta como root.
1- Cosas que vamos a necesitar
# apt install build-essential gcc wget curl libsnmp-dev libcurl4-openssl-dev libxml2-dev libsnmp-dev libevent-dev libpcre3-dev libcurl3-dev make
2- Base de datos
# apt install mariadb-server mariadb-client libmariadbd18 libmariadbclient-dev-compat
Comenzamos instalando la base de datos en forma segura.
# mysql_secure_installation
Debemos responder unas preguntas, así que colocamos lo siguiente:
Change the root password? [Y/n] n Remove anonymous users? [Y/n] y Disallow root login remotely? [Y/n] y Remove test database and access to it? [Y/n] y Reload privilege tables now? [Y/n] y
3- Instalación y configuración de apache y php
# apt-get install apache2 php7.0 php-pear php7.0-mysql php7.0-mbstring php7.0-bcmath php7.0-gd php7.0-cli php7.0-xmlrpc php7.0-ldap
Abrimos php.ini y le cambiamos algunos valores, que en nuestro caso se encuentra en:
# nano /etc/php/7.0/apache2/php.ini
Y ahora buscamos las siguientes líneas, y dejamos los valores como se muestran (con nano podes usar Ctrl + w para buscar):
post_max_size = 16M max_execution_time = 300 max_input_time = 300 date.timezone = America/Argentina/Buenos_Aires
Guardamos cambios (F2) y reiniciamos apache para que se apliquen los cambios.
# service apache2 restart
4- Descarga y compilar
Vamos a encontrar la última versión en: zabbix-release (http://repo.zabbix.com/zabbix/3.4/debian/pool/main/z/zabbix-release/)
# cd /opt
# wget http://repo.zabbix.com/zabbix/3.4/debian/pool/main/z/zabbix/zabbix_3.4.2.orig.tar.gz
Descomprimimos
# tar -xzvf zabbix_3.4.2.orig.tar.gz
Eliminamos el archivo comprimido
# rm zabbix_3.4.2.orig.tar.gz
Ingresamos al directorio creado
# cd zabbix_3.4.2
Para ver los parámetros de configuración hacemos:
# ./configure -h
Finalmente lanzamos la configuración habilitando algunos servicios
# ./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
Lanzamos make para crear los binarios y luego make install
# make # make install
5- Crear un usuario # groupadd zabbix # useradd -g zabbix -d /usr/local/share/zabbix -s /bin/false zabbix
6- Configurar la base de datos MariaDB
# mysql -u root -p MariaDB> create database zabbix character set utf8 collate utf8_bin; MariaDB> grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'tu_contraseña'; MariaDB> flush privileges; MariaDB> exit
Es importante cambiar tu_contraseña por una para usarla más adelante.
Exportación de archivos, con cada una de las 3 líneas nos pedirá la contraseña, schema.sql tarda un poquito más que el resto.
# cd database/mysql # mysql -u zabbix -p zabbix < schema.sql # mysql -u zabbix -p zabbix < images.sql 3 mysql -u zabbix -p zabbix < data.sql
7- Configurar Apache
Vamos a copiar los archivos de configuración de frontend de php, esta parte es opcional, pueden colocar los archivos donde quieran.
# mkdir /var/www/html/zabbix # cp -rf frontends/php/* /var/www/html/zabbix
Ahora vamos a añadir al ususario zabbix al grupo www-data (grupo de apache) para que pueda hacer cambios en el servidor web, habilitaremos los módulo ssl para mayor seguridad y reiniciamos el servidor apache
usermod -aG www-data zabbix a2enmod ssl a2ensite default-ssl service apache2 restart
8- Configuración de Zabbix
Modificamos el archivo de zabbix_server.conf
# nano /usr/local/etc/zabbix_server.conf
El archivo debe tener los siguientes cambios, así que descomentá lo siguiente y ajusta los parámetros.
ListenPort=10051 LogFile=/var/log/zabbix_server.log DBHost=localhost DBName=zabbix ## Usar el nombre de la base de datos que hemos creado para Zabbix DBUser =zabbix ## Usamos el nombre del usuario que hemos creado DBPassword=contraseña ## contraseña de Zabbix MYSQL base de datos. DBSocket=/var/run/mysqld/mysqld.sock ## Ojo acá cambia bien los datos. DBPort=3306
Creamos los archivo de log que hemos configurado
# touch /var/log/zabbix_server.log # chmod 777 /var/log/zabbix_server.log # chgrp zabbix /var/log/zabbix_server.log
Ahora podemos iniciar los servicios del servidor y agente recolector.
# /usr/local/sbin/zabbix_server # /usr/local/sbin/zabbix_agentd
9- Instalación zabbix
Desde un navegador local o de otro equipo http://ipservidor/zabbix/
Antes de continuar, es muy importante modificar los permisos necesarios para que Zabbix pueda guardar dicha configuración.
# chown -R www-data /var/www/
Vamos que esta todo en verde, así que seguimos adelante.
Colocamos los datos que creamos en el punto 6
Vemos que el resumen este todo bien, y continuamos.
Una vez que le damos Finish nos aparecerá una pantalla para loguearnos solicitando el usuario y contraseña (por defecto Admin | zabbix, es case sensitive así que la A tiene que ser mayúscula)
Una vez creado el archivo dejamos los permisos como estaban.
# chown -R root /var/www/