The net/zabbix,-web port

zabbix-web-4.0.19 – network and application monitoring - web frontend (source)

Description

ZABBIX is an enterprise-class open source distributed monitoring
solution designed to monitor and track performance and availability of
network servers, devices and other IT resources. It supports distributed
and WEB monitoring, and more.

This package contains the PHP web frontend for ZABBIX.
WWW: http://www.zabbix.com/

Readme

$OpenBSD: README-web,v 1.12 2018/09/05 09:24:31 espie Exp $

+-----------------------------------------------------------------------
| Running ${PKGSTEM} on OpenBSD
+-----------------------------------------------------------------------

The Zabbix web frontend has been installed into
${PREFIX-web}/zabbix

Zabbix Web can work with a PostgreSQL, MySQL or SQLite3 database.
Support for SQLite3 is included with the main php package; to use
another database, the corresponding package needs to be installed:
    php-pgsql or php-mysqli

Zabbix requires a timezone to be configured in PHP; zabbix.ini
sets this to UTC, you may like to adjust this. After making these
changes, stop and start your webserver.

Finally, edit ${ZABBIX_WEB}/conf/zabbix.conf.php according to your needs.
Below are instructions for setting up Zabbix Web with Apache or NGINX.

Apache
======

You should point this to the DocumentRoot of your web-server:
    # ln -s ../zabbix /var/www/htdocs/zabbix
(make sure you use a relative symlink since Apache is chrooted)

The web frontend works reasonably well with OpenBSD's chroot'ed
httpd (the "Status of Zabbix" page uses /bin/ps and /dev/kmem to
check the process, so it erroneously reports it as not running).
Some changes from the default configuration are required -
you can do this by creating symbolic links as follows:

    # ln -s ${PREFIX-web}/conf/modules.sample/zabbix.conf \
      ${PREFIX-web}/conf/modules

    # ln -fs ${SYSCONFDIR}/php-${MODPHP_VERSION}.sample/zabbix.ini \
      ${SYSCONFDIR}/php-${MODPHP_VERSION}/zabbix.ini

NGINX
=====

First install and enable php-fpm and enable the required modules:

    # cd ${SYSCONFDIR}/php-${MODPHP_VERSION}.sample
    # for i in *; do ln -fs ../php-${MODPHP_VERSION}.sample/$i ../php-${MODPHP_VERSION}/; done

Next configure a nginx such as:

server {                         
  listen        80;              
  server_name   zabbix.example.com;
  root          ${ZABBIX_WEB};
  index         index.php;                             
  error_page    403 404 502 503 504  /zabbix/index.php;
  
  location ~ \.php {                                                         
    fastcgi_pass        unix:run/php-fpm.sock;
    fastcgi_index       index.php;     
    fastcgi_param       DOCUMENT_ROOT $document_root;
    fastcgi_param       SCRIPT_FILENAME $request_filename;
    include             fastcgi_params;
  }                   
  location ~ \.(jpg|jpeg|gif|png|ico)$ {
     access_log      off;
     expires         33d;
  }
  location ~ ^\.ht {
    deny        all;
  }
}

httpd.conf(5)
=============

server "zabbix.example.com" {
	listen on * 80
	listen on * tls port 443
	directory { index "index.php" }

	tls {
		certificate "/etc/ssl/acme/zabbix.example.com_fullchain.pem"
		key "/etc/ssl/acme/private/zabbix.example.com_private.pem"
	}

	# Increase connection limits to extend the lifetime
	connection { max requests 500, timeout 3600 }
	connection { max request body 8388608 }

	location "/conf/*" {
		block return 401
	}

	location "*.php" {
		fastcgi socket "/run/php-fpm.sock"
	}
	root "/zabbix"
}

Maintainer

Robert Nagy

Multi-packages

zabbix-agent-4.0.19 zabbix-web-4.0.19

Categories

lang/php net

Run dependencies

Files

Search
File Descr
Path Name
Category Maintainer