mirror of
https://github.com/zabbix/zabbix-docker.git
synced 2025-08-09 08:35:05 +02:00
Added correct resolving for source IP addresses in case of HTTP proxies
This commit is contained in:
@ -258,6 +258,10 @@ PHP_FPM_PM_START_SERVERS=5
|
||||
PHP_FPM_PM_MIN_SPARE_SERVERS=5
|
||||
PHP_FPM_PM_MAX_SPARE_SERVERS=35
|
||||
PHP_FPM_PM_MAX_REQUESTS=0
|
||||
|
||||
Allowed Apache configuration options:
|
||||
WEB_REAL_IP_FROM=
|
||||
WEB_REAL_IP_HEADER=
|
||||
```
|
||||
|
||||
## Allowed volumes for the Zabbix web interface container
|
||||
|
@ -15,3 +15,4 @@ LoadModule proxy_module modules/mod_proxy.so
|
||||
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
|
||||
LoadModule expires_module modules/mod_expires.so
|
||||
LoadModule headers_module modules/mod_headers.so
|
||||
LoadModule remoteip_module modules/mod_remoteip.so
|
||||
|
@ -1,6 +1,9 @@
|
||||
Listen 8080
|
||||
|
||||
<VirtualHost *:8080>
|
||||
RemoteIPInternalProxy ${WEB_REAL_IP_FROM}
|
||||
RemoteIPHeader ${WEB_REAL_IP_HEADER}
|
||||
|
||||
<LocationMatch "/(ping|status)">
|
||||
Require all granted
|
||||
|
||||
|
@ -14,6 +14,9 @@ SSLSessionCache shmcb:${APACHE_RUN_DIR}/ssl_scache(512000)
|
||||
SSLSessionCacheTimeout 300
|
||||
|
||||
<VirtualHost *:8443>
|
||||
RemoteIPInternalProxy ${WEB_REAL_IP_FROM}
|
||||
RemoteIPHeader ${WEB_REAL_IP_HEADER}
|
||||
|
||||
# Enable/Disable SSL for this virtual host.
|
||||
SSLEngine on
|
||||
|
||||
|
@ -202,6 +202,11 @@ prepare_web_server() {
|
||||
export APACHE_SERVER_SIGNATURE="Off"
|
||||
fi
|
||||
|
||||
[ -z "${WEB_REAL_IP_FROM}" ] && sed -i '/WEB_REAL_IP_FROM/d' "$ZABBIX_CONF_DIR/apache.conf"
|
||||
[ -z "${WEB_REAL_IP_FROM}" ] && sed -i '/WEB_REAL_IP_FROM/d' "$ZABBIX_CONF_DIR/apache_ssl.conf"
|
||||
[ -z "${WEB_REAL_IP_HEADER}" ] && sed -i '/WEB_REAL_IP_HEADER/d' "$ZABBIX_CONF_DIR/apache.conf"
|
||||
[ -z "${WEB_REAL_IP_HEADER}" ] && sed -i '/WEB_REAL_IP_HEADER/d' "$ZABBIX_CONF_DIR/apache_ssl.conf"
|
||||
|
||||
mkdir -p "${APACHE_RUN_DIR}"
|
||||
}
|
||||
|
||||
|
@ -15,3 +15,4 @@ LoadModule proxy_module modules/mod_proxy.so
|
||||
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
|
||||
LoadModule expires_module modules/mod_expires.so
|
||||
LoadModule headers_module modules/mod_headers.so
|
||||
LoadModule remoteip_module modules/mod_remoteip.so
|
||||
|
@ -1,6 +1,9 @@
|
||||
Listen 8080
|
||||
|
||||
<VirtualHost *:8080>
|
||||
RemoteIPInternalProxy ${WEB_REAL_IP_FROM}
|
||||
RemoteIPHeader ${WEB_REAL_IP_HEADER}
|
||||
|
||||
<LocationMatch "/(ping|status)">
|
||||
Require all granted
|
||||
|
||||
|
@ -14,6 +14,9 @@ SSLSessionCache shmcb:${APACHE_RUN_DIR}/ssl_scache(512000)
|
||||
SSLSessionCacheTimeout 300
|
||||
|
||||
<VirtualHost *:8443>
|
||||
RemoteIPInternalProxy ${WEB_REAL_IP_FROM}
|
||||
RemoteIPHeader ${WEB_REAL_IP_HEADER}
|
||||
|
||||
# Enable/Disable SSL for this virtual host.
|
||||
SSLEngine on
|
||||
|
||||
|
@ -202,6 +202,11 @@ prepare_web_server() {
|
||||
export APACHE_SERVER_SIGNATURE="Off"
|
||||
fi
|
||||
|
||||
[ -z "${WEB_REAL_IP_FROM}" ] && sed -i '/WEB_REAL_IP_FROM/d' "$ZABBIX_CONF_DIR/apache.conf"
|
||||
[ -z "${WEB_REAL_IP_FROM}" ] && sed -i '/WEB_REAL_IP_FROM/d' "$ZABBIX_CONF_DIR/apache_ssl.conf"
|
||||
[ -z "${WEB_REAL_IP_HEADER}" ] && sed -i '/WEB_REAL_IP_HEADER/d' "$ZABBIX_CONF_DIR/apache.conf"
|
||||
[ -z "${WEB_REAL_IP_HEADER}" ] && sed -i '/WEB_REAL_IP_HEADER/d' "$ZABBIX_CONF_DIR/apache_ssl.conf"
|
||||
|
||||
mkdir -p "${APACHE_RUN_DIR}"
|
||||
}
|
||||
|
||||
|
@ -15,3 +15,4 @@ LoadModule proxy_module modules/mod_proxy.so
|
||||
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
|
||||
LoadModule expires_module modules/mod_expires.so
|
||||
LoadModule headers_module modules/mod_headers.so
|
||||
LoadModule remoteip_module modules/mod_remoteip.so
|
||||
|
@ -1,6 +1,9 @@
|
||||
Listen 8080
|
||||
|
||||
<VirtualHost *:8080>
|
||||
RemoteIPInternalProxy ${WEB_REAL_IP_FROM}
|
||||
RemoteIPHeader ${WEB_REAL_IP_HEADER}
|
||||
|
||||
<LocationMatch "/(ping|status)">
|
||||
Require all granted
|
||||
|
||||
|
@ -14,6 +14,9 @@ SSLSessionCache shmcb:${APACHE_RUN_DIR}/ssl_scache(512000)
|
||||
SSLSessionCacheTimeout 300
|
||||
|
||||
<VirtualHost *:8443>
|
||||
RemoteIPInternalProxy ${WEB_REAL_IP_FROM}
|
||||
RemoteIPHeader ${WEB_REAL_IP_HEADER}
|
||||
|
||||
# Enable/Disable SSL for this virtual host.
|
||||
SSLEngine on
|
||||
|
||||
|
@ -202,6 +202,11 @@ prepare_web_server() {
|
||||
export APACHE_SERVER_SIGNATURE="Off"
|
||||
fi
|
||||
|
||||
[ -z "${WEB_REAL_IP_FROM}" ] && sed -i '/WEB_REAL_IP_FROM/d' "$ZABBIX_CONF_DIR/apache.conf"
|
||||
[ -z "${WEB_REAL_IP_FROM}" ] && sed -i '/WEB_REAL_IP_FROM/d' "$ZABBIX_CONF_DIR/apache_ssl.conf"
|
||||
[ -z "${WEB_REAL_IP_HEADER}" ] && sed -i '/WEB_REAL_IP_HEADER/d' "$ZABBIX_CONF_DIR/apache.conf"
|
||||
[ -z "${WEB_REAL_IP_HEADER}" ] && sed -i '/WEB_REAL_IP_HEADER/d' "$ZABBIX_CONF_DIR/apache_ssl.conf"
|
||||
|
||||
mkdir -p "${APACHE_RUN_DIR}"
|
||||
}
|
||||
|
||||
|
@ -12,3 +12,4 @@ LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so
|
||||
LoadModule proxy_fcgi_module /usr/lib/apache2/modules/mod_proxy_fcgi.so
|
||||
LoadModule expires_module /usr/lib/apache2/modules/mod_expires.so
|
||||
LoadModule headers_module /usr/lib/apache2/modules/mod_headers.so
|
||||
LoadModule remoteip_module /usr/lib/apache2/modules/mod_remoteip.so
|
||||
|
@ -1,6 +1,9 @@
|
||||
Listen 8080
|
||||
|
||||
<VirtualHost *:8080>
|
||||
RemoteIPInternalProxy ${WEB_REAL_IP_FROM}
|
||||
RemoteIPHeader ${WEB_REAL_IP_HEADER}
|
||||
|
||||
<LocationMatch "/(ping|status)">
|
||||
Require all granted
|
||||
|
||||
|
@ -14,6 +14,9 @@ SSLSessionCache shmcb:${APACHE_RUN_DIR}/ssl_scache(512000)
|
||||
SSLSessionCacheTimeout 300
|
||||
|
||||
<VirtualHost *:8443>
|
||||
RemoteIPInternalProxy ${WEB_REAL_IP_FROM}
|
||||
RemoteIPHeader ${WEB_REAL_IP_HEADER}
|
||||
|
||||
# Enable/Disable SSL for this virtual host.
|
||||
SSLEngine on
|
||||
|
||||
|
@ -202,6 +202,11 @@ prepare_web_server() {
|
||||
export APACHE_SERVER_SIGNATURE="Off"
|
||||
fi
|
||||
|
||||
[ -z "${WEB_REAL_IP_FROM}" ] && sed -i '/WEB_REAL_IP_FROM/d' "$ZABBIX_CONF_DIR/apache.conf"
|
||||
[ -z "${WEB_REAL_IP_FROM}" ] && sed -i '/WEB_REAL_IP_FROM/d' "$ZABBIX_CONF_DIR/apache_ssl.conf"
|
||||
[ -z "${WEB_REAL_IP_HEADER}" ] && sed -i '/WEB_REAL_IP_HEADER/d' "$ZABBIX_CONF_DIR/apache.conf"
|
||||
[ -z "${WEB_REAL_IP_HEADER}" ] && sed -i '/WEB_REAL_IP_HEADER/d' "$ZABBIX_CONF_DIR/apache_ssl.conf"
|
||||
|
||||
mkdir -p "${APACHE_RUN_DIR}"
|
||||
}
|
||||
|
||||
|
@ -258,6 +258,10 @@ PHP_FPM_PM_START_SERVERS=5
|
||||
PHP_FPM_PM_MIN_SPARE_SERVERS=5
|
||||
PHP_FPM_PM_MAX_SPARE_SERVERS=35
|
||||
PHP_FPM_PM_MAX_REQUESTS=0
|
||||
|
||||
Allowed Apache configuration options:
|
||||
WEB_REAL_IP_FROM=
|
||||
WEB_REAL_IP_HEADER=
|
||||
```
|
||||
|
||||
## Allowed volumes for the Zabbix web interface container
|
||||
|
@ -15,3 +15,4 @@ LoadModule proxy_module modules/mod_proxy.so
|
||||
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
|
||||
LoadModule expires_module modules/mod_expires.so
|
||||
LoadModule headers_module modules/mod_headers.so
|
||||
LoadModule remoteip_module modules/mod_remoteip.so
|
||||
|
@ -1,6 +1,9 @@
|
||||
Listen 8080
|
||||
|
||||
<VirtualHost *:8080>
|
||||
RemoteIPInternalProxy ${WEB_REAL_IP_FROM}
|
||||
RemoteIPHeader ${WEB_REAL_IP_HEADER}
|
||||
|
||||
<LocationMatch "/(ping|status)">
|
||||
Require all granted
|
||||
|
||||
|
@ -14,6 +14,9 @@ SSLSessionCache shmcb:${APACHE_RUN_DIR}/ssl_scache(512000)
|
||||
SSLSessionCacheTimeout 300
|
||||
|
||||
<VirtualHost *:8443>
|
||||
RemoteIPInternalProxy ${WEB_REAL_IP_FROM}
|
||||
RemoteIPHeader ${WEB_REAL_IP_HEADER}
|
||||
|
||||
# Enable/Disable SSL for this virtual host.
|
||||
SSLEngine on
|
||||
|
||||
|
@ -201,6 +201,11 @@ prepare_web_server() {
|
||||
export APACHE_SERVER_SIGNATURE="Off"
|
||||
fi
|
||||
|
||||
[ -z "${WEB_REAL_IP_FROM}" ] && sed -i '/WEB_REAL_IP_FROM/d' "$ZABBIX_CONF_DIR/apache.conf"
|
||||
[ -z "${WEB_REAL_IP_FROM}" ] && sed -i '/WEB_REAL_IP_FROM/d' "$ZABBIX_CONF_DIR/apache_ssl.conf"
|
||||
[ -z "${WEB_REAL_IP_HEADER}" ] && sed -i '/WEB_REAL_IP_HEADER/d' "$ZABBIX_CONF_DIR/apache.conf"
|
||||
[ -z "${WEB_REAL_IP_HEADER}" ] && sed -i '/WEB_REAL_IP_HEADER/d' "$ZABBIX_CONF_DIR/apache_ssl.conf"
|
||||
|
||||
mkdir -p "${APACHE_RUN_DIR}"
|
||||
}
|
||||
|
||||
|
@ -15,3 +15,4 @@ LoadModule proxy_module modules/mod_proxy.so
|
||||
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
|
||||
LoadModule expires_module modules/mod_expires.so
|
||||
LoadModule headers_module modules/mod_headers.so
|
||||
LoadModule remoteip_module modules/mod_remoteip.so
|
||||
|
@ -1,6 +1,9 @@
|
||||
Listen 8080
|
||||
|
||||
<VirtualHost *:8080>
|
||||
RemoteIPInternalProxy ${WEB_REAL_IP_FROM}
|
||||
RemoteIPHeader ${WEB_REAL_IP_HEADER}
|
||||
|
||||
<LocationMatch "/(ping|status)">
|
||||
Require all granted
|
||||
|
||||
|
@ -14,6 +14,9 @@ SSLSessionCache shmcb:${APACHE_RUN_DIR}/ssl_scache(512000)
|
||||
SSLSessionCacheTimeout 300
|
||||
|
||||
<VirtualHost *:8443>
|
||||
RemoteIPInternalProxy ${WEB_REAL_IP_FROM}
|
||||
RemoteIPHeader ${WEB_REAL_IP_HEADER}
|
||||
|
||||
# Enable/Disable SSL for this virtual host.
|
||||
SSLEngine on
|
||||
|
||||
|
@ -201,6 +201,11 @@ prepare_web_server() {
|
||||
export APACHE_SERVER_SIGNATURE="Off"
|
||||
fi
|
||||
|
||||
[ -z "${WEB_REAL_IP_FROM}" ] && sed -i '/WEB_REAL_IP_FROM/d' "$ZABBIX_CONF_DIR/apache.conf"
|
||||
[ -z "${WEB_REAL_IP_FROM}" ] && sed -i '/WEB_REAL_IP_FROM/d' "$ZABBIX_CONF_DIR/apache_ssl.conf"
|
||||
[ -z "${WEB_REAL_IP_HEADER}" ] && sed -i '/WEB_REAL_IP_HEADER/d' "$ZABBIX_CONF_DIR/apache.conf"
|
||||
[ -z "${WEB_REAL_IP_HEADER}" ] && sed -i '/WEB_REAL_IP_HEADER/d' "$ZABBIX_CONF_DIR/apache_ssl.conf"
|
||||
|
||||
mkdir -p "${APACHE_RUN_DIR}"
|
||||
}
|
||||
|
||||
|
@ -15,3 +15,4 @@ LoadModule proxy_module modules/mod_proxy.so
|
||||
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
|
||||
LoadModule expires_module modules/mod_expires.so
|
||||
LoadModule headers_module modules/mod_headers.so
|
||||
LoadModule remoteip_module modules/mod_remoteip.so
|
||||
|
@ -1,6 +1,9 @@
|
||||
Listen 8080
|
||||
|
||||
<VirtualHost *:8080>
|
||||
RemoteIPInternalProxy ${WEB_REAL_IP_FROM}
|
||||
RemoteIPHeader ${WEB_REAL_IP_HEADER}
|
||||
|
||||
<LocationMatch "/(ping|status)">
|
||||
Require all granted
|
||||
|
||||
|
@ -14,6 +14,9 @@ SSLSessionCache shmcb:${APACHE_RUN_DIR}/ssl_scache(512000)
|
||||
SSLSessionCacheTimeout 300
|
||||
|
||||
<VirtualHost *:8443>
|
||||
RemoteIPInternalProxy ${WEB_REAL_IP_FROM}
|
||||
RemoteIPHeader ${WEB_REAL_IP_HEADER}
|
||||
|
||||
# Enable/Disable SSL for this virtual host.
|
||||
SSLEngine on
|
||||
|
||||
|
@ -201,6 +201,11 @@ prepare_web_server() {
|
||||
export APACHE_SERVER_SIGNATURE="Off"
|
||||
fi
|
||||
|
||||
[ -z "${WEB_REAL_IP_FROM}" ] && sed -i '/WEB_REAL_IP_FROM/d' "$ZABBIX_CONF_DIR/apache.conf"
|
||||
[ -z "${WEB_REAL_IP_FROM}" ] && sed -i '/WEB_REAL_IP_FROM/d' "$ZABBIX_CONF_DIR/apache_ssl.conf"
|
||||
[ -z "${WEB_REAL_IP_HEADER}" ] && sed -i '/WEB_REAL_IP_HEADER/d' "$ZABBIX_CONF_DIR/apache.conf"
|
||||
[ -z "${WEB_REAL_IP_HEADER}" ] && sed -i '/WEB_REAL_IP_HEADER/d' "$ZABBIX_CONF_DIR/apache_ssl.conf"
|
||||
|
||||
mkdir -p "${APACHE_RUN_DIR}"
|
||||
}
|
||||
|
||||
|
@ -12,3 +12,4 @@ LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so
|
||||
LoadModule proxy_fcgi_module /usr/lib/apache2/modules/mod_proxy_fcgi.so
|
||||
LoadModule expires_module /usr/lib/apache2/modules/mod_expires.so
|
||||
LoadModule headers_module /usr/lib/apache2/modules/mod_headers.so
|
||||
LoadModule remoteip_module /usr/lib/apache2/modules/mod_remoteip.so
|
||||
|
@ -1,6 +1,9 @@
|
||||
Listen 8080
|
||||
|
||||
<VirtualHost *:8080>
|
||||
RemoteIPInternalProxy ${WEB_REAL_IP_FROM}
|
||||
RemoteIPHeader ${WEB_REAL_IP_HEADER}
|
||||
|
||||
<LocationMatch "/(ping|status)">
|
||||
Require all granted
|
||||
|
||||
|
@ -14,6 +14,9 @@ SSLSessionCache shmcb:${APACHE_RUN_DIR}/ssl_scache(512000)
|
||||
SSLSessionCacheTimeout 300
|
||||
|
||||
<VirtualHost *:8443>
|
||||
RemoteIPInternalProxy ${WEB_REAL_IP_FROM}
|
||||
RemoteIPHeader ${WEB_REAL_IP_HEADER}
|
||||
|
||||
# Enable/Disable SSL for this virtual host.
|
||||
SSLEngine on
|
||||
|
||||
|
@ -201,6 +201,11 @@ prepare_web_server() {
|
||||
export APACHE_SERVER_SIGNATURE="Off"
|
||||
fi
|
||||
|
||||
[ -z "${WEB_REAL_IP_FROM}" ] && sed -i '/WEB_REAL_IP_FROM/d' "$ZABBIX_CONF_DIR/apache.conf"
|
||||
[ -z "${WEB_REAL_IP_FROM}" ] && sed -i '/WEB_REAL_IP_FROM/d' "$ZABBIX_CONF_DIR/apache_ssl.conf"
|
||||
[ -z "${WEB_REAL_IP_HEADER}" ] && sed -i '/WEB_REAL_IP_HEADER/d' "$ZABBIX_CONF_DIR/apache.conf"
|
||||
[ -z "${WEB_REAL_IP_HEADER}" ] && sed -i '/WEB_REAL_IP_HEADER/d' "$ZABBIX_CONF_DIR/apache_ssl.conf"
|
||||
|
||||
mkdir -p "${APACHE_RUN_DIR}"
|
||||
}
|
||||
|
||||
|
@ -259,6 +259,10 @@ PHP_FPM_PM_START_SERVERS=5
|
||||
PHP_FPM_PM_MIN_SPARE_SERVERS=5
|
||||
PHP_FPM_PM_MAX_SPARE_SERVERS=35
|
||||
PHP_FPM_PM_MAX_REQUESTS=0
|
||||
|
||||
Allowed Nginx configuration options:
|
||||
WEB_REAL_IP_FROM=
|
||||
WEB_REAL_IP_HEADER=
|
||||
```
|
||||
|
||||
## Allowed volumes for the Zabbix web interface container
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8080;
|
||||
listen [::]:8080;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
index {HTTP_INDEX_FILE};
|
||||
|
||||
|
@ -4,6 +4,9 @@ server {
|
||||
|
||||
http2 on;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
server_name_in_redirect off;
|
||||
|
||||
|
@ -35,6 +35,15 @@ NGINX_SSL_CONFIG_DIR="/etc/ssl/nginx"
|
||||
# PHP-FPM configuration file
|
||||
PHP_CONFIG_FILE="/etc/php84/php-fpm.d/zabbix.conf"
|
||||
|
||||
escape_spec_char() {
|
||||
local var_value=$1
|
||||
|
||||
var_value="${var_value//\\/\\\\}"
|
||||
var_value="${var_value//./\\.}"
|
||||
|
||||
echo "$var_value"
|
||||
}
|
||||
|
||||
# usage: file_env VAR [DEFAULT]
|
||||
# as example: file_env 'MYSQL_PASSWORD' 'zabbix'
|
||||
# (will allow for "$MYSQL_PASSWORD_FILE" to fill in the value of "$MYSQL_PASSWORD" from a file)
|
||||
@ -229,6 +238,27 @@ prepare_web_server() {
|
||||
sed -i \
|
||||
-e "s/{EXPOSE_WEB_SERVER_INFO}/${EXPOSE_WEB_SERVER_INFO}/g" \
|
||||
"$NGINX_CONF_FILE"
|
||||
|
||||
[ ! -z "${WEB_REAL_IP_FROM}" ] && WEB_REAL_IP_FROM="set_real_ip_from ${WEB_REAL_IP_FROM};"
|
||||
WEB_REAL_IP_FROM=$(escape_spec_char "$WEB_REAL_IP_FROM")
|
||||
[ ! -z "${WEB_REAL_IP_HEADER}" ] && WEB_REAL_IP_HEADER="real_ip_header ${WEB_REAL_IP_HEADER};"
|
||||
WEB_REAL_IP_HEADER=$(escape_spec_char "$WEB_REAL_IP_HEADER")
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
}
|
||||
|
||||
prepare_zbx_php_config() {
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8080;
|
||||
listen [::]:8080;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
index {HTTP_INDEX_FILE};
|
||||
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8443 ssl http2;
|
||||
listen [::]:8443 ssl http2;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
server_name_in_redirect off;
|
||||
|
||||
|
@ -35,6 +35,15 @@ NGINX_SSL_CONFIG_DIR="/etc/ssl/nginx"
|
||||
# PHP-FPM configuration file
|
||||
PHP_CONFIG_FILE="/etc/php-fpm.d/zabbix.conf"
|
||||
|
||||
escape_spec_char() {
|
||||
local var_value=$1
|
||||
|
||||
var_value="${var_value//\\/\\\\}"
|
||||
var_value="${var_value//./\\.}"
|
||||
|
||||
echo "$var_value"
|
||||
}
|
||||
|
||||
# usage: file_env VAR [DEFAULT]
|
||||
# as example: file_env 'MYSQL_PASSWORD' 'zabbix'
|
||||
# (will allow for "$MYSQL_PASSWORD_FILE" to fill in the value of "$MYSQL_PASSWORD" from a file)
|
||||
@ -229,6 +238,27 @@ prepare_web_server() {
|
||||
sed -i \
|
||||
-e "s/{EXPOSE_WEB_SERVER_INFO}/${EXPOSE_WEB_SERVER_INFO}/g" \
|
||||
"$NGINX_CONF_FILE"
|
||||
|
||||
[ ! -z "${WEB_REAL_IP_FROM}" ] && WEB_REAL_IP_FROM="set_real_ip_from ${WEB_REAL_IP_FROM};"
|
||||
WEB_REAL_IP_FROM=$(escape_spec_char "$WEB_REAL_IP_FROM")
|
||||
[ ! -z "${WEB_REAL_IP_HEADER}" ] && WEB_REAL_IP_HEADER="real_ip_header ${WEB_REAL_IP_HEADER};"
|
||||
WEB_REAL_IP_HEADER=$(escape_spec_char "$WEB_REAL_IP_HEADER")
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
}
|
||||
|
||||
prepare_zbx_php_config() {
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8080;
|
||||
listen [::]:8080;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
index {HTTP_INDEX_FILE};
|
||||
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8443 ssl http2;
|
||||
listen [::]:8443 ssl http2;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
server_name_in_redirect off;
|
||||
|
||||
|
@ -35,6 +35,15 @@ NGINX_SSL_CONFIG_DIR="/etc/ssl/nginx"
|
||||
# PHP-FPM configuration file
|
||||
PHP_CONFIG_FILE="/etc/php-fpm.d/zabbix.conf"
|
||||
|
||||
escape_spec_char() {
|
||||
local var_value=$1
|
||||
|
||||
var_value="${var_value//\\/\\\\}"
|
||||
var_value="${var_value//./\\.}"
|
||||
|
||||
echo "$var_value"
|
||||
}
|
||||
|
||||
# usage: file_env VAR [DEFAULT]
|
||||
# as example: file_env 'MYSQL_PASSWORD' 'zabbix'
|
||||
# (will allow for "$MYSQL_PASSWORD_FILE" to fill in the value of "$MYSQL_PASSWORD" from a file)
|
||||
@ -229,6 +238,27 @@ prepare_web_server() {
|
||||
sed -i \
|
||||
-e "s/{EXPOSE_WEB_SERVER_INFO}/${EXPOSE_WEB_SERVER_INFO}/g" \
|
||||
"$NGINX_CONF_FILE"
|
||||
|
||||
[ ! -z "${WEB_REAL_IP_FROM}" ] && WEB_REAL_IP_FROM="set_real_ip_from ${WEB_REAL_IP_FROM};"
|
||||
WEB_REAL_IP_FROM=$(escape_spec_char "$WEB_REAL_IP_FROM")
|
||||
[ ! -z "${WEB_REAL_IP_HEADER}" ] && WEB_REAL_IP_HEADER="real_ip_header ${WEB_REAL_IP_HEADER};"
|
||||
WEB_REAL_IP_HEADER=$(escape_spec_char "$WEB_REAL_IP_HEADER")
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
}
|
||||
|
||||
prepare_zbx_php_config() {
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8080;
|
||||
listen [::]:8080;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
index {HTTP_INDEX_FILE};
|
||||
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8443 ssl http2;
|
||||
listen [::]:8443 ssl http2;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
server_name_in_redirect off;
|
||||
|
||||
|
@ -35,6 +35,15 @@ NGINX_SSL_CONFIG_DIR="/etc/ssl/nginx"
|
||||
# PHP-FPM configuration file
|
||||
PHP_CONFIG_FILE="/etc/php-fpm.d/zabbix.conf"
|
||||
|
||||
escape_spec_char() {
|
||||
local var_value=$1
|
||||
|
||||
var_value="${var_value//\\/\\\\}"
|
||||
var_value="${var_value//./\\.}"
|
||||
|
||||
echo "$var_value"
|
||||
}
|
||||
|
||||
# usage: file_env VAR [DEFAULT]
|
||||
# as example: file_env 'MYSQL_PASSWORD' 'zabbix'
|
||||
# (will allow for "$MYSQL_PASSWORD_FILE" to fill in the value of "$MYSQL_PASSWORD" from a file)
|
||||
@ -229,6 +238,27 @@ prepare_web_server() {
|
||||
sed -i \
|
||||
-e "s/{EXPOSE_WEB_SERVER_INFO}/${EXPOSE_WEB_SERVER_INFO}/g" \
|
||||
"$NGINX_CONF_FILE"
|
||||
|
||||
[ ! -z "${WEB_REAL_IP_FROM}" ] && WEB_REAL_IP_FROM="set_real_ip_from ${WEB_REAL_IP_FROM};"
|
||||
WEB_REAL_IP_FROM=$(escape_spec_char "$WEB_REAL_IP_FROM")
|
||||
[ ! -z "${WEB_REAL_IP_HEADER}" ] && WEB_REAL_IP_HEADER="real_ip_header ${WEB_REAL_IP_HEADER};"
|
||||
WEB_REAL_IP_HEADER=$(escape_spec_char "$WEB_REAL_IP_HEADER")
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
}
|
||||
|
||||
prepare_zbx_php_config() {
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8080;
|
||||
listen [::]:8080;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
index {HTTP_INDEX_FILE};
|
||||
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8443 ssl http2;
|
||||
listen [::]:8443 ssl http2;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
server_name_in_redirect off;
|
||||
|
||||
|
@ -35,6 +35,15 @@ NGINX_SSL_CONFIG_DIR="/etc/ssl/nginx"
|
||||
# PHP-FPM configuration file
|
||||
PHP_CONFIG_FILE="/etc/php/8.3/fpm/pool.d/zabbix.conf"
|
||||
|
||||
escape_spec_char() {
|
||||
local var_value=$1
|
||||
|
||||
var_value="${var_value//\\/\\\\}"
|
||||
var_value="${var_value//./\\.}"
|
||||
|
||||
echo "$var_value"
|
||||
}
|
||||
|
||||
# usage: file_env VAR [DEFAULT]
|
||||
# as example: file_env 'MYSQL_PASSWORD' 'zabbix'
|
||||
# (will allow for "$MYSQL_PASSWORD_FILE" to fill in the value of "$MYSQL_PASSWORD" from a file)
|
||||
@ -229,6 +238,27 @@ prepare_web_server() {
|
||||
sed -i \
|
||||
-e "s/{EXPOSE_WEB_SERVER_INFO}/${EXPOSE_WEB_SERVER_INFO}/g" \
|
||||
"$NGINX_CONF_FILE"
|
||||
|
||||
[ ! -z "${WEB_REAL_IP_FROM}" ] && WEB_REAL_IP_FROM="set_real_ip_from ${WEB_REAL_IP_FROM};"
|
||||
WEB_REAL_IP_FROM=$(escape_spec_char "$WEB_REAL_IP_FROM")
|
||||
[ ! -z "${WEB_REAL_IP_HEADER}" ] && WEB_REAL_IP_HEADER="real_ip_header ${WEB_REAL_IP_HEADER};"
|
||||
WEB_REAL_IP_HEADER=$(escape_spec_char "$WEB_REAL_IP_HEADER")
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
}
|
||||
|
||||
prepare_zbx_php_config() {
|
||||
|
@ -258,6 +258,10 @@ PHP_FPM_PM_START_SERVERS=5
|
||||
PHP_FPM_PM_MIN_SPARE_SERVERS=5
|
||||
PHP_FPM_PM_MAX_SPARE_SERVERS=35
|
||||
PHP_FPM_PM_MAX_REQUESTS=0
|
||||
|
||||
Allowed Nginx configuration options:
|
||||
WEB_REAL_IP_FROM=
|
||||
WEB_REAL_IP_HEADER=
|
||||
```
|
||||
|
||||
## Allowed volumes for the Zabbix web interface container
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8080;
|
||||
listen [::]:8080;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
index {HTTP_INDEX_FILE};
|
||||
|
||||
|
@ -4,6 +4,9 @@ server {
|
||||
|
||||
http2 on;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
server_name_in_redirect off;
|
||||
|
||||
|
@ -35,6 +35,15 @@ NGINX_SSL_CONFIG_DIR="/etc/ssl/nginx"
|
||||
# PHP-FPM configuration file
|
||||
PHP_CONFIG_FILE="/etc/php84/php-fpm.d/zabbix.conf"
|
||||
|
||||
escape_spec_char() {
|
||||
local var_value=$1
|
||||
|
||||
var_value="${var_value//\\/\\\\}"
|
||||
var_value="${var_value//./\\.}"
|
||||
|
||||
echo "$var_value"
|
||||
}
|
||||
|
||||
# usage: file_env VAR [DEFAULT]
|
||||
# as example: file_env 'MYSQL_PASSWORD' 'zabbix'
|
||||
# (will allow for "$MYSQL_PASSWORD_FILE" to fill in the value of "$MYSQL_PASSWORD" from a file)
|
||||
@ -228,6 +237,27 @@ prepare_web_server() {
|
||||
sed -i \
|
||||
-e "s/{EXPOSE_WEB_SERVER_INFO}/${EXPOSE_WEB_SERVER_INFO}/g" \
|
||||
"$NGINX_CONF_FILE"
|
||||
|
||||
[ ! -z "${WEB_REAL_IP_FROM}" ] && WEB_REAL_IP_FROM="set_real_ip_from ${WEB_REAL_IP_FROM};"
|
||||
WEB_REAL_IP_FROM=$(escape_spec_char "$WEB_REAL_IP_FROM")
|
||||
[ ! -z "${WEB_REAL_IP_HEADER}" ] && WEB_REAL_IP_HEADER="real_ip_header ${WEB_REAL_IP_HEADER};"
|
||||
WEB_REAL_IP_HEADER=$(escape_spec_char "$WEB_REAL_IP_HEADER")
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
}
|
||||
|
||||
prepare_zbx_php_config() {
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8080;
|
||||
listen [::]:8080;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
index {HTTP_INDEX_FILE};
|
||||
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8443 ssl http2;
|
||||
listen [::]:8443 ssl http2;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
server_name_in_redirect off;
|
||||
|
||||
|
@ -35,6 +35,15 @@ NGINX_SSL_CONFIG_DIR="/etc/ssl/nginx"
|
||||
# PHP-FPM configuration file
|
||||
PHP_CONFIG_FILE="/etc/php-fpm.d/zabbix.conf"
|
||||
|
||||
escape_spec_char() {
|
||||
local var_value=$1
|
||||
|
||||
var_value="${var_value//\\/\\\\}"
|
||||
var_value="${var_value//./\\.}"
|
||||
|
||||
echo "$var_value"
|
||||
}
|
||||
|
||||
# usage: file_env VAR [DEFAULT]
|
||||
# as example: file_env 'MYSQL_PASSWORD' 'zabbix'
|
||||
# (will allow for "$MYSQL_PASSWORD_FILE" to fill in the value of "$MYSQL_PASSWORD" from a file)
|
||||
@ -228,6 +237,27 @@ prepare_web_server() {
|
||||
sed -i \
|
||||
-e "s/{EXPOSE_WEB_SERVER_INFO}/${EXPOSE_WEB_SERVER_INFO}/g" \
|
||||
"$NGINX_CONF_FILE"
|
||||
|
||||
[ ! -z "${WEB_REAL_IP_FROM}" ] && WEB_REAL_IP_FROM="set_real_ip_from ${WEB_REAL_IP_FROM};"
|
||||
WEB_REAL_IP_FROM=$(escape_spec_char "$WEB_REAL_IP_FROM")
|
||||
[ ! -z "${WEB_REAL_IP_HEADER}" ] && WEB_REAL_IP_HEADER="real_ip_header ${WEB_REAL_IP_HEADER};"
|
||||
WEB_REAL_IP_HEADER=$(escape_spec_char "$WEB_REAL_IP_HEADER")
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
}
|
||||
|
||||
prepare_zbx_php_config() {
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8080;
|
||||
listen [::]:8080;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
index {HTTP_INDEX_FILE};
|
||||
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8443 ssl http2;
|
||||
listen [::]:8443 ssl http2;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
server_name_in_redirect off;
|
||||
|
||||
|
@ -35,6 +35,15 @@ NGINX_SSL_CONFIG_DIR="/etc/ssl/nginx"
|
||||
# PHP-FPM configuration file
|
||||
PHP_CONFIG_FILE="/etc/php-fpm.d/zabbix.conf"
|
||||
|
||||
escape_spec_char() {
|
||||
local var_value=$1
|
||||
|
||||
var_value="${var_value//\\/\\\\}"
|
||||
var_value="${var_value//./\\.}"
|
||||
|
||||
echo "$var_value"
|
||||
}
|
||||
|
||||
# usage: file_env VAR [DEFAULT]
|
||||
# as example: file_env 'MYSQL_PASSWORD' 'zabbix'
|
||||
# (will allow for "$MYSQL_PASSWORD_FILE" to fill in the value of "$MYSQL_PASSWORD" from a file)
|
||||
@ -228,6 +237,27 @@ prepare_web_server() {
|
||||
sed -i \
|
||||
-e "s/{EXPOSE_WEB_SERVER_INFO}/${EXPOSE_WEB_SERVER_INFO}/g" \
|
||||
"$NGINX_CONF_FILE"
|
||||
|
||||
[ ! -z "${WEB_REAL_IP_FROM}" ] && WEB_REAL_IP_FROM="set_real_ip_from ${WEB_REAL_IP_FROM};"
|
||||
WEB_REAL_IP_FROM=$(escape_spec_char "$WEB_REAL_IP_FROM")
|
||||
[ ! -z "${WEB_REAL_IP_HEADER}" ] && WEB_REAL_IP_HEADER="real_ip_header ${WEB_REAL_IP_HEADER};"
|
||||
WEB_REAL_IP_HEADER=$(escape_spec_char "$WEB_REAL_IP_HEADER")
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
}
|
||||
|
||||
prepare_zbx_php_config() {
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8080;
|
||||
listen [::]:8080;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
index {HTTP_INDEX_FILE};
|
||||
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8443 ssl http2;
|
||||
listen [::]:8443 ssl http2;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
server_name_in_redirect off;
|
||||
|
||||
|
@ -35,6 +35,15 @@ NGINX_SSL_CONFIG_DIR="/etc/ssl/nginx"
|
||||
# PHP-FPM configuration file
|
||||
PHP_CONFIG_FILE="/etc/php-fpm.d/zabbix.conf"
|
||||
|
||||
escape_spec_char() {
|
||||
local var_value=$1
|
||||
|
||||
var_value="${var_value//\\/\\\\}"
|
||||
var_value="${var_value//./\\.}"
|
||||
|
||||
echo "$var_value"
|
||||
}
|
||||
|
||||
# usage: file_env VAR [DEFAULT]
|
||||
# as example: file_env 'MYSQL_PASSWORD' 'zabbix'
|
||||
# (will allow for "$MYSQL_PASSWORD_FILE" to fill in the value of "$MYSQL_PASSWORD" from a file)
|
||||
@ -228,6 +237,27 @@ prepare_web_server() {
|
||||
sed -i \
|
||||
-e "s/{EXPOSE_WEB_SERVER_INFO}/${EXPOSE_WEB_SERVER_INFO}/g" \
|
||||
"$NGINX_CONF_FILE"
|
||||
|
||||
[ ! -z "${WEB_REAL_IP_FROM}" ] && WEB_REAL_IP_FROM="set_real_ip_from ${WEB_REAL_IP_FROM};"
|
||||
WEB_REAL_IP_FROM=$(escape_spec_char "$WEB_REAL_IP_FROM")
|
||||
[ ! -z "${WEB_REAL_IP_HEADER}" ] && WEB_REAL_IP_HEADER="real_ip_header ${WEB_REAL_IP_HEADER};"
|
||||
WEB_REAL_IP_HEADER=$(escape_spec_char "$WEB_REAL_IP_HEADER")
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
}
|
||||
|
||||
prepare_zbx_php_config() {
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8080;
|
||||
listen [::]:8080;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
index {HTTP_INDEX_FILE};
|
||||
|
||||
|
@ -2,6 +2,9 @@ server {
|
||||
listen 8443 ssl http2;
|
||||
listen [::]:8443 ssl http2;
|
||||
|
||||
{WEB_REAL_IP_FROM}
|
||||
{WEB_REAL_IP_HEADER}
|
||||
|
||||
server_name zabbix;
|
||||
server_name_in_redirect off;
|
||||
|
||||
|
@ -35,6 +35,15 @@ NGINX_SSL_CONFIG_DIR="/etc/ssl/nginx"
|
||||
# PHP-FPM configuration file
|
||||
PHP_CONFIG_FILE="/etc/php/8.3/fpm/pool.d/zabbix.conf"
|
||||
|
||||
escape_spec_char() {
|
||||
local var_value=$1
|
||||
|
||||
var_value="${var_value//\\/\\\\}"
|
||||
var_value="${var_value//./\\.}"
|
||||
|
||||
echo "$var_value"
|
||||
}
|
||||
|
||||
# usage: file_env VAR [DEFAULT]
|
||||
# as example: file_env 'MYSQL_PASSWORD' 'zabbix'
|
||||
# (will allow for "$MYSQL_PASSWORD_FILE" to fill in the value of "$MYSQL_PASSWORD" from a file)
|
||||
@ -228,6 +237,27 @@ prepare_web_server() {
|
||||
sed -i \
|
||||
-e "s/{EXPOSE_WEB_SERVER_INFO}/${EXPOSE_WEB_SERVER_INFO}/g" \
|
||||
"$NGINX_CONF_FILE"
|
||||
|
||||
[ ! -z "${WEB_REAL_IP_FROM}" ] && WEB_REAL_IP_FROM="set_real_ip_from ${WEB_REAL_IP_FROM};"
|
||||
WEB_REAL_IP_FROM=$(escape_spec_char "$WEB_REAL_IP_FROM")
|
||||
[ ! -z "${WEB_REAL_IP_HEADER}" ] && WEB_REAL_IP_HEADER="real_ip_header ${WEB_REAL_IP_HEADER};"
|
||||
WEB_REAL_IP_HEADER=$(escape_spec_char "$WEB_REAL_IP_HEADER")
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_FROM}/${WEB_REAL_IP_FROM}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{WEB_REAL_IP_HEADER}/${WEB_REAL_IP_HEADER}/g" \
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
}
|
||||
|
||||
prepare_zbx_php_config() {
|
||||
|
@ -48,3 +48,6 @@ ZBX_SERVER_NAME=Composed installation
|
||||
# PHP_FPM_PM_MIN_SPARE_SERVERS=5
|
||||
# PHP_FPM_PM_MAX_SPARE_SERVERS=35
|
||||
# PHP_FPM_PM_MAX_REQUESTS=0
|
||||
|
||||
#WEB_REAL_IP_FROM=
|
||||
#WEB_REAL_IP_HEADER=
|
||||
|
Reference in New Issue
Block a user