Concept

Cette page explique les paramètres présents dans le fichier /etc/shinken/synchronizer.cfg


Pour apporter des modifications à ces paramètres, 

  • Shinken conseille fortement de les surcharger dans le fichier /etc/shinken-user/configuration/daemons/synchronizers/synchronizer_cfg_overload.cfg ( voir la page Surcharge des paramètres du démon ( synchronizer_cfg_overload.cfg )  ).
  • Les paramètres sont présents dans ce fichier pour indiquer qu'ils existent, mais leur modification dans le fichier de surcharge permettra une meilleure gestion ( ne pas modifier ce que l'on livre par défaut, mais le surcharger ).


Exemple de fichier de configuration

#================================================================================
# SYNCHRONIZER
#================================================================================
# This file contains values for:
# - the global parameters
# - the synchronizer parameters
# IMPORTANT : DO NOT EDIT THIS FILE. This file will be overwritten at every update with the default values
#================================================================================

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ────────────────────────────────    MODULES AND ARCHITECTURE ( DON'T MODIFY )    ──────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── Modules definition                                                                                              ───
    # ───                                                                                                                 ───
    cfg_dir=modules

    # ─── Arbiters definition                                                                                             ───
    # ───                                                                                                                 ───
    cfg_dir=arbiters

    # ─── Schedulers definition                                                                                           ───
    # ───                                                                                                                 ───
    cfg_dir=schedulers

    # ─── Pollers definition                                                                                              ───
    # ───                                                                                                                 ───
    cfg_dir=pollers

    # ─── Reactionners definition                                                                                         ───
    # ───                                                                                                                 ───
    cfg_dir=reactionners

    # ─── Brokers definition                                                                                              ───
    # ───                                                                                                                 ───
    cfg_dir=brokers

    # ─── Receivers definition                                                                                            ───
    # ───                                                                                                                 ───
    cfg_dir=receivers

    # ─── Realms definition                                                                                               ───
    # ───                                                                                                                 ───
    cfg_dir=realms

    # ─── Synchronizers definition                                                                                        ───
    # ───                                                                                                                 ───
    cfg_dir=synchronizers

    # ─── Sources definition                                                                                              ───
    # ───                                                                                                                 ───
    cfg_dir=sources

    # ─── Listeners definition                                                                                            ───
    # ───                                                                                                                 ───
    cfg_dir=listeners

    # ─── Analyzers definition                                                                                            ───
    # ───                                                                                                                 ───
    cfg_dir=analyzers

    # ─── Taggers definition                                                                                              ───
    # ───                                                                                                                 ───
    cfg_dir=taggers

    # ─── Discovery rules definition                                                                                      ───
    # ───                                                                                                                 ───
    cfg_dir=discovery_rules

    # ─── Synchronizer discovery definition                                                                               ───
    # ───                                                                                                                 ───
    cfg_file=synchronizer_discovery.cfg

    # ─── Packs dir definition                                                                                            ───
    # ───                                                                                                                 ───
    packs_dir=packs

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ───────────────────────────    GLOBAL DATA AND DEFAULT PROPERTIES ( DON'T MODIFY )    ─────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── You will find global DATA into this directory                                                                   ───
    # ───                                                                                                                 ───
    cfg_dir=resource.d

    # ─── Load default properties for types (like hosts). Do not edit theses files, they are overwritten at every update  ───
    # ───                                                                                                                 ───
    cfg_dir=_default/elements_default_properties

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ─────────────────────────────────────────    DAEMON LOGS PARAMETERS    ────────────────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── The synchronizer daemon log                                                                                     ───
    # ───                                                                                                                 ───
    local_log=/var/log/shinken/synchronizerd.log

    # ─── If you disable, the timestamp will be an epoch integer instead of a human date                                  ───
    #                                                                                                                     ───
    #           ...     : 0 => timestamp                                                                                  ───
    #           ...     : 1 => human date                                                                                 ───
    # ───                                                                                                                 ───
    human_timestamp_log=1

    # ─── Set logging level for the Synchronizer daemon.                                                                  ───
    #                                                                                                                     ───
    #           ...     : accepted values: DEBUG,INFO,WARNING,ERROR,CRITICAL                                              ───
    #           Default : INFO ( info, warning and error logs will be shown )                                             ───
    # ───                                                                                                                 ───
    log_level=INFO

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ─────────────────────────────────    EXTERNAL AUTHENTICATION LOGS PARAMETERS    ───────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── Log the synchronizer authentication and Session history in a file                                               ───
    #                                                                                                                     ───
    #           ...     : 1 => Enable                                                                                     ───
    #           Default : 0 => Disable                                                                                    ───
    # ───                                                                                                                 ───
    # synchronizer__log_users__enabled=0

    # ─── File use for log authentication and Session history                                                             ───
    # ───                                                                                                                 ───
    # synchronizer__log_users__file_path=/var/log/shinken/synchronizer/log_users.log

    # ─── Add user name to log                                                                                            ───
    #                                                                                                                     ───
    #           ...     : 1 => Enable                                                                                     ───
    #           Default : 0 => Disable                                                                                    ───
    # ───                                                                                                                 ───
    # synchronizer__log_users__add_user_name=0

    # ─── The logs files will be daily rotated up to the number of configurated days.                                     ───
    # ─── All log files older than the configured number of days will be deleted automatically.                           ───
    #                                                                                                                     ───
    #           Default : 7 (days)                                                                                        ───
    # ───                                                                                                                 ───
    # synchronizer__log_users__logs_rotation__nb_days_before_deletion=7

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ───────────────────────────────────────────    SYSTEM AND SECURITY    ─────────────────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ──  System daemon parameters (user, group, pid, ...)  ─────────────────────────────────────────────────────────────── #

    # ─── Run or not the daemon                                                                                           ───
    #                                                                                                                     ───
    #           ...     : 0 => Disable                                                                                    ───
    #           ...     : 1 => Enable                                                                                     ───
    # ───                                                                                                                 ───
    daemon_enabled=1

    # ─── Lock file (with pid) for the synchronizer daemon                                                                ───
    # ───                                                                                                                 ───
    lock_file=/var/run/shinken/synchronizerd.pid

    # ─── User used by the synchronizer                                                                                   ───
    # ───                                                                                                                 ───
    shinken_user=shinken

    # ───                                                                                                                 ───
    shinken_group=shinken

    # ─── The path to the modules directory                                                                               ───
    # ───                                                                                                                 ───
    modules_dir=/var/lib/shinken/modules

    # ─── The path to the share files                                                                                     ───
    # ───                                                                                                                 ───
    share_dir=/var/lib/shinken/share

    # ─────────────  Listening address (daemon)  ────────────────────────────────────────────────────────────────────────── #

    # ─── Which HTTP backend to start the listening daemon with.                                                          ───
    # ─── Currently only auto is managed                                                                                  ───
    # ───                                                                                                                 ───
    http_backend=auto

    # ─── Which address to bind for the synchronizer daemon.                                                              ───
    #                                                                                                                     ───
    #           Default : 0.0.0.0 => (all interfaces)                                                                     ───
    # ───                                                                                                                 ───
    bind_addr=0.0.0.0

    # ─── Enable HTTPS.                                                                                                   ───
    #                                                                                                                     ───
    #           ...     : 1 => Use HTTPS                                                                                  ───
    #           Default : 0 => Use HTTP                                                                                   ───
    # ───                                                                                                                 ───
    use_ssl=0

    # ─── Paths to pem/cert and key files                                                                                 ───
    # ─── Note: default pem/cert and key files are for sample only. You need to generate                                  ───
    # ─── your own with your PKI.                                                                                         ───
    # ───                                                                                                                 ───
    ca_cert=/etc/shinken/certs/ca.pem

    # ───                                                                                                                 ───
    server_cert=/etc/shinken/certs/server.cert

    # ───                                                                                                                 ───
    server_key=/etc/shinken/certs/server.key

    # ─── Force the HTTPS certificates name checks by the synchronizer connections                                        ───
    # ─── If enabled and a distant certificate is not the same as the daemon address, then                                ───
    # ─── the connection will be refused.                                                                                 ───
    #                                                                                                                     ───
    #           ...     : 0 => Disable                                                                                    ───
    #           Default : 1 => Enable                                                                                     ───
    # ───                                                                                                                 ───
    hard_ssl_name_check=0

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ───────────────────────────────────────    MONGODB DATABASE CONNECTION    ─────────────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── Database type. currently only mongodb is managed.                                                               ───
    # ───                                                                                                                 ───
    data_backend=mongodb

    # ─── mongodb uri definition for connecting to the mongodb database. You can find the mongodb uri                     ───
    # ─── syntax at https://docs.mongodb.com/manual/reference/connection-string/                                          ───
    # ───                                                                                                                 ───
    mongodb_uri=mongodb://localhost/?safe=false

    # ─── Mongodb database to use for this daemon.                                                                        ───
    # ───                                                                                                                 ───
    mongodb_database=synchronizer

    # ─── username/password to authenticate to MongoDB.                                                                   ───     
	# ─── Both parameters must be provided for authentication to function correctly.                                      ───
	# ───                                                                                                                 ───
    # synchronizer__database__username=

    # ───                                                                                                                 ───
    # synchronizer__database__password=

    # ─── Secure your mongodb connection                                                                                  ───
    # ─── enable the ssh that will                                                                                        ───
    # ─── allow all mongodb to be encrypted & authenticated with SSH                                                      ───
    #                                                                                                                     ───
    #           ...     : 1 => Enable                                                                                     ───
    #           Default : 0 => Disable                                                                                    ───
    # ───                                                                                                                 ───
    mongodb_use_ssh_tunnel=0

    # ─── If the SSH connection goes wrong,                                                                               ───
    # ─── then retry use_ssh_retry_failure time                                                                           ───
    #                                                                                                                     ───
    #           ...     : 0 => Disable                                                                                    ───
    #           Default : 1 => Enable                                                                                     ───
    # ───                                                                                                                 ───
    mongodb_use_ssh_retry_failure=1

    # ─── SSH user/keyfile in order to connect to the mongodb server                                                      ───
    # ───                                                                                                                 ───
    mongodb_ssh_user=shinken

    # ───                                                                                                                 ───
    mongodb_ssh_keyfile=~shinken/.ssh/id_rsa

    # ─── SSH Timeout used to test if the SSH tunnel is viable or not, in seconds                                         ───
    #                                                                                                                     ───
    #           Default : 2 (in seconds)                                                                                  ───
    # ───                                                                                                                 ───
    mongodb_ssh_tunnel_timeout=2

    # ─── By default bailout the synchronizer if cannot contact mongodb for more than 120s                                ───
    #                                                                                                                     ───
    #           Default : 120 (in seconds)                                                                                ───
    # ───                                                                                                                 ───
    mongodb_retry_timeout=120

    # ─── Each database request will be tried X times before considering it as an error and abort                         ───
    #                                                                                                                     ───
    #           Default : 15 (in seconds)                                                                                 ───
    # ───                                                                                                                 ───
    synchronizer__database__retry_connection_X_times_before_considering_an_error=15

    # ─── We will wait X seconds between each try or any database request                                                 ───
    #                                                                                                                     ───
    #           Default : 5 (in seconds)                                                                                  ───
    # ───                                                                                                                 ───
    synchronizer__database__wait_X_seconds_before_reconnect=5

    # ─── The time the history will be kept for synchronizations into database                                            ───
    #                                                                                                                     ───
    #           Default : 1440 (in minutes)                                                                               ───
    # ───                                                                                                                 ───
    sync_history_lifespan=1440

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ──────────────────────────────────────────    ADDRESS AND SECURITY    ─────────────────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ────  Listening address (Configuration interface)  ────────────────────────────────────────────────────────────────── #

    # ─── Http(s) port to listen the Configuration interface.                                                             ───
    # ───                                                                                                                 ───
    http_port=7766

    # ─── set the Configuration interface into HTTPs or not (disabled by default).                                        ───
    #                                                                                                                     ───
    #           ...     : 1 => Use HTTPS                                                                                  ───
    #           Default : 0 => Use HTTP                                                                                   ───
    # ───                                                                                                                 ───
    http_use_ssl=0

    # ─── Mandatory is SSL is enabled: server key and certificate.                                                        ───
    # ───                                                                                                                 ───
    http_ssl_cert=/etc/shinken/certs/server.cert

    # ───                                                                                                                 ───
    http_ssl_key=/etc/shinken/certs/server.key

    # ────────────────────  Cypher keys  ────────────────────────────────────────────────────────────────────────────────── #

    # ─── Cookie secret password. Is used to crypt cookies.                                                               ───
    # ───                                                                                                                 ───
    auth_secret=THIS SHOULD BE CHANGED BEFORE PRODUCTION

    # ─── Master key for CLI access.                                                                                      ───
    # ───                                                                                                                 ───
    master_key=MASTERKEY-SHOULDBECHANGED

    # ─────────────────  SSO authentication  ────────────────────────────────────────────────────────────────────────────── #

    # ─── Remote application authentication.                                                                              ───
    #                                                                                                                     ───
    #           ...     : 1 => allow the user to be load from a HTTP Header                                               ───
    #           Default : 0 => Disable                                                                                    ───
    # ───                                                                                                                 ───
    http_remote_user_enable=0

    # ─── From which HTTP header get user name if remote_user_enable is 1.                                                ───
    # ───                                                                                                                 ───
    http_remote_user_variable=X-Remote-User

    # ─── Case sensitivity of login if remote_user_enable is 1.                                                           ───
    #                                                                                                                     ───
    #           ...     : 0 => disable case check on remote user login                                                    ───
    #           Default : 1 => enable case check on remote user login                                                     ───
    # ───                                                                                                                 ───
    http_remote_user_case_sensitive=1

    # ─────  Protected fields security ( Don't modify )  ────────────────────────────────────────────────────────────────── #

    # ─── Encryption for protected fields                                                                                 ───
    #                                                                                                                     ───
    #           ...     : 1 => Enable                                                                                     ───
    #           Default : 0 => Disable                                                                                    ───
    # ───                                                                                                                 ───
    protect_fields__activate_encryption=0

    # ─── File containing the encryption key                                                                              ───
    #                                                                                                                     ───
    #           ...     : 1 => Enable                                                                                     ───
    #           Default : 0 => Disable                                                                                    ───
    # ───                                                                                                                 ───
    protect_fields__encryption_keyfile=/etc/shinken/secrets/protected_fields_key

    # ─── List of words contained in protected fields names                                                               ───
    #                                                                                                                     ───
    #           Default : PASSWORD,PASSPHRASE,PASSE,DOMAINUSER,MSSQLUSER,MYSQLUSER,ORACLE_USER,SSH_USER,LOGIN             ───
    # ───                                                                                                                 ───
    protect_fields__substrings_matching_fields=PASSWORD,PASSPHRASE,PASSE,DOMAINUSER,MSSQLUSER,MYSQLUSER,ORACLE_USER,SSH_USER,LOGIN

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ───────────────────────────────────    INTERFACE CONFIGURATION PARAMETERS    ──────────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ──────────────────────  Language  ─────────────────────────────────────────────────────────────────────────────────── #

    # ─── Select the lang that will be used by default on the UIs.                                                        ───
    # ───       Currently managed:                                                                                        ───
    #                                                                                                                     ───
    #           ...     : en => (english)                                                                                 ───
    #           ...     : fr => (francais)                                                                                ───
    # ───                                                                                                                 ───
    lang=fr

    # ──────────────────────  Sources  ──────────────────────────────────────────────────────────────────────────────────── #

    # ─── On source page, some errors or warnings may concern many elements.                                              ───
    # ─── A summary is shown for this error and you can set the number                                                    ───
    # ─── of message who are in this summary.                                                                             ───
    # ───                                                                                                                 ───
    number_of_message_in_source_summary=5

    # ──────────────────  Production page  ──────────────────────────────────────────────────────────────────────────────── #

    # ─── Timeout for the Arbiter to load a new configuration                                                             ───
    # ───                                                                                                                 ───
    # synchronizer__production__apply_new_configuration_timeout=30

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ──────────────────────────────────    FOLDER CONFIGURATION ( DON'T MODIFY )    ────────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── When you need to customise element (host, check, ...) default properties value, set it in this directory        ───
    # ───                                                                                                                 ───
    cfg_dir=/etc/shinken-user/configuration/monitoring_policy

    # ─── For custom global DATA                                                                                          ───
    # ───                                                                                                                 ───
    cfg_dir=/etc/shinken-user/configuration/global-data

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ──────────────────────────────    EXTENDED FILE CONFIGURATION ( DON'T MODIFY )    ─────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── When you need to customise a value for the Synchronizer, set it in this file                                    ───
    # ───                                                                                                                 ───
    cfg_file=/etc/shinken-user/configuration/daemons/synchronizers/synchronizer_cfg_overload.cfg

Détails des sections composant le fichier de configuration

Paramètres de fonctionnement interne ( à ne pas modifier )

Les paramètres suivants sont gérés par Shinken. Ils peuvent être modifiés par les commandes Shinken ou par l'installeur. Il est conseillé de ne pas modifier les valeurs. Les paramètres sont modifiables ( voir la page Surcharge des paramètres du démon ( synchronizer_cfg_overload.cfg )  ).

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ────────────────────────────────────────    MODULES AND ARCHITECTURE    ───────────────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ───       /!\ Sub directories to load. Do not edit                                                                  ───

    # ─── Modules definition                                                                                              ───
    # ───                                                                                                                 ───
    cfg_dir=modules

    # ─── Arbiters definition                                                                                             ───
    # ───                                                                                                                 ───
    cfg_dir=arbiters

    # ─── Schedulers definition                                                                                           ───
    # ───                                                                                                                 ───
    cfg_dir=schedulers

    # ─── Pollers definition                                                                                              ───
    # ───                                                                                                                 ───
    cfg_dir=pollers

    # ─── Reactionners definition                                                                                         ───
    # ───                                                                                                                 ───
    cfg_dir=reactionners

    # ─── Brokers definition                                                                                              ───
    # ───                                                                                                                 ───
    cfg_dir=brokers

    # ─── Receivers definition                                                                                            ───
    # ───                                                                                                                 ───
    cfg_dir=receivers

    # ─── Realms definition                                                                                               ───
    # ───                                                                                                                 ───
    cfg_dir=realms

    # ─── Synchronizers definition                                                                                        ───
    # ───                                                                                                                 ───
    cfg_dir=synchronizers

    # ─── Sources definition                                                                                              ───
    # ───                                                                                                                 ───
    cfg_dir=sources

    # ─── Listeners definition                                                                                            ───
    # ───                                                                                                                 ───
    cfg_dir=listeners

    # ─── Analyzers definition                                                                                            ───
    # ───                                                                                                                 ───
    cfg_dir=analyzers

    # ─── Taggers definition                                                                                              ───
    # ───                                                                                                                 ───
    cfg_dir=taggers

    # ─── Discovery rules definition                                                                                      ───
    # ───                                                                                                                 ───
    cfg_dir=discovery_rules

    # ─── Synchronizer discovery definition                                                                               ───
    # ───                                                                                                                 ───
    cfg_file=synchronizer_discovery.cfg

    # ─── Packs dir definition                                                                                            ───
    # ───                                                                                                                 ───
    packs_dir=packs

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ───────────────────────────────────    GLOBAL DATA AND DEFAULT PROPERTIES    ──────────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── You will find global DATA into this directory                                                                   ───
    # ───                                                                                                                 ───
    cfg_dir=resource.d

    # ─── Load default properties for types (like hosts). Do not edit theses files, they are overwritten at every update  ───
    # ───                                                                                                                 ───
    cfg_dir=_default/elements_default_properties

Les logs du démon

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ─────────────────────────────────────────    DAEMON LOGS PARAMETERS    ────────────────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── The synchronizer daemon log                                                                                     ───
    # ───                                                                                                                 ───
    local_log=/var/log/shinken/synchronizerd.log

    # ─── If you disable, the timestamp will be an epoch integer instead of a human date                                  ───
    #                                                                                                                     ───
    #           ...     : 0 => timestamp                                                                                  ───
    #           ...     : 1 => human date                                                                                 ───
    # ───                                                                                                                 ───
    human_timestamp_log=1

    # ─── Set logging level for the Synchronizer daemon.                                                                  ───
    #                                                                                                                     ───
    #           ...     : accepted values: DEBUG,INFO,WARNING,ERROR,CRITICAL                                              ───
    #           Default : INFO ( info, warning and error logs will be shown )                                             ───
    # ───                                                                                                                 ───
    log_level=INFO

Les paramètres sont les suivants :

NomTypeUnitéDéfautDescription
local_log 
Texte--- /var/log/shinken/synchronizerd.log Emplacement du fichier de log du Synchronizer.
human_timestamp_log 
Booléen--- 1

Permet d'afficher les logs avec un affichage de la date lisible facilement.

  • → date au format "humain"
  • → pour avoir un timestamp, si un système de gestion de log est utilisé par exemple.
log_level 
Texte---

INFO


Niveau des logs du Synchronizer enregistrés dans le fichier de log. Les valeurs possibles sont : 

  • DEBUG
  • INFO
  • WARNING
  • CRITICAL
  • ERROR

Les logs d'activité des utilisateurs ( authentification et session )

Les paramètres suivants permettent au Synchronizer de créer un fichier de log supplémentaire pour y recenser l'activité des utilisateurs ( authentification et session ), qu'elles soient réussites ou non, ainsi que les déconnexions.

  • Shinken conseille fortement de les surcharger dans le fichier /etc/shinken-user/configuration/daemons/synchronizers/synchronizer_cfg_overload.cfg.
  • Ils sont présents dans ce fichier pour indiquer qu'ils existent, mais leur modification dans le fichier de surcharge permettra une meilleure gestion ( ne pas modifier ce que l'on livre par défaut, mais le surcharger ).



    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ─────────────────────────────────    EXTERNAL AUTHENTICATION LOGS PARAMETERS    ───────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── Log the synchronizer authentication and Session history in a file                                               ───
    #                                                                                                                     ───
    #           ...     : 1 => Enable                                                                                     ───
    #           Default : 0 => Disable                                                                                    ───
    # ───                                                                                                                 ───
    # synchronizer__log_users__enabled=0

    # ─── File use for log authentication and Session history                                                             ───
    # ───                                                                                                                 ───
    # synchronizer__log_users__file_path=/var/log/shinken/synchronizer/log_users.log

    # ─── Add user name to log                                                                                            ───
    #                                                                                                                     ───
    #           ...     : 1 => Enable                                                                                     ───
    #           Default : 0 => Disable                                                                                    ───
    # ───                                                                                                                 ───
    # synchronizer__log_users__add_user_name=0

    # ─── The logs files will be daily rotated up to the number of configurated days.                                     ───
    # ─── All log files older than the configured number of days will be deleted automatically.                           ───
    #                                                                                                                     ───
    #           Default : 7 (days)                                                                                        ───
    # ───                                                                                                                 ───
    # synchronizer__log_users__logs_rotation__nb_days_before_deletion=7
NomTypeUnitéDéfautDescription
synchronizer__log_users__enabled
Booléen--- 0

Permet d'activer les logs d'authentification et de session de l'interface de configuration

valeur possible :

  • 1 ( activé ) 
  • 0 ( désactivé )
synchronizer__log_users__file_path
Texte--- /var/log/shinken/synchronizer/log_users.log Défini le fichier utilisé pour écrire les logs.
synchronizer__log_users__add_user_name
Booléen--- 0

Permet d'activer l'ajout du nom d'utilisateur dans les logs

valeur possible :

  • 1 ( activé ) 
  • 0 ( désactivé )
synchronizer__log_users__logs_rotation__nb_days_before_deletion
Entier positif---7
Configuration de la rotation des logs. Les fichiers plus anciens que la valeur de la clé seront supprimés.

Système et sécurité

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ───────────────────────────────────────────    SYSTEM AND SECURITY    ─────────────────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ──  System daemon parameters (user, group, pid, ...)  ─────────────────────────────────────────────────────────────── #

    # ─── Run or not the daemon                                                                                           ───
    #                                                                                                                     ───
    #           ...     : 0 => Disable                                                                                    ───
    #           ...     : 1 => Enable                                                                                     ───
    # ───                                                                                                                 ───
    daemon_enabled=1

    # ─── Lock file (with pid) for the synchronizer daemon                                                                ───
    # ───                                                                                                                 ───
    lock_file=/var/run/shinken/synchronizerd.pid

    # ─── User used by the synchronizer                                                                                   ───
    # ───                                                                                                                 ───
    shinken_user=shinken

    # ───                                                                                                                 ───
    shinken_group=shinken

    # ─── The path to the modules directory                                                                               ───
    # ───                                                                                                                 ───
    modules_dir=/var/lib/shinken/modules

    # ─── The path to the share files                                                                                     ───
    # ───                                                                                                                 ───
    share_dir=/var/lib/shinken/share

    # ─────────────  Listening address (daemon)  ────────────────────────────────────────────────────────────────────────── #

    # ─── Which HTTP backend to start the listening daemon with.                                                          ───
    # ─── Currently only auto is managed                                                                                  ───
    # ───                                                                                                                 ───
    http_backend=auto

    # ─── Which address to bind for the synchronizer daemon.                                                              ───
    #                                                                                                                     ───
    #           Default : 0.0.0.0 => (all interfaces)                                                                     ───
    # ───                                                                                                                 ───
    bind_addr=0.0.0.0

    # ─── Enable HTTPS.                                                                                                   ───
    #                                                                                                                     ───
    #           ...     : 1 => Use HTTPS                                                                                  ───
    #           Default : 0 => Use HTTP                                                                                   ───
    # ───                                                                                                                 ───
    use_ssl=0

    # ─── Paths to pem/cert and key files                                                                                 ───
    # ─── Note: default pem/cert and key files are for sample only. You need to generate                                  ───
    # ─── your own with your PKI.                                                                                         ───
    # ───                                                                                                                 ───
    ca_cert=/etc/shinken/certs/ca.pem

    # ───                                                                                                                 ───
    server_cert=/etc/shinken/certs/server.cert

    # ───                                                                                                                 ───
    server_key=/etc/shinken/certs/server.key

    # ─── Force the HTTPS certificates name checks by the synchronizer connections                                        ───
    # ─── If enabled and a distant certificate is not the same as the daemon address, then                                ───
    # ─── the connection will be refused.                                                                                 ───
    #                                                                                                                     ───
    #           ...     : 0 => Disable                                                                                    ───
    #           Default : 1 => Enable                                                                                     ───
    # ───                                                                                                                 ───
    hard_ssl_name_check=0    

Paramètres système du démon

NomTypeUnitéDéfautDescription
daemon_enabled
Booléen--- 1

Définit si le démon est activé ou non.

Pour Activer ou désactiver le Synchronizer, utilisez les commandes suivantes plutôt que modifier le paramètre daemon_enabled :

  • shinken-daemons-disable synchronizer
  • shinken-daemons-enable synchronizer

Ces commandes permettent de vérifier que le Synchronizer est dans un état correct avant de démarrer afin de ne pas corrompre la base de données ( exécution de sanatize-data ).

lock_file
Texte--- /var/run/shinken/synchronizerd.pid Le chemin vers le fichier qui contient le numéro de PID du démon.
shinken_user
Texte--- shinken Utilisateur Unix qui sera utilisé par le démon.
shinken_group
Texte--- shinken Groupe Unix qui sera utilisé par le démon.
modules_dir
Texte--- /var/lib/shinken/modules Emplacement des modules Shinken.
share_dir
Texte--- /var/lib/shinken/share Emplacement du dossier des fichiers partagés ( contiens les icônes affichées dans les listes de l'interface de configuration ).

Configuration des adresses

NomTypeUnitéDéfautDescription
http_backend
Texte--- auto

Permet de définir le moteur HTTP à utiliser.

  • Pour le moment, seul le paramètre auto est géré.



bind_addr



Texte--- 0.0.0.0

Défini l'interface qui sera en écoute sur le réseau.

  • La valeur 0.0.0.0 ( par défaut ) permet d'écouter sur toutes les interfaces.
use_ssl
Booléen--- 0 Permets Permet de définir si les autres démons doivent communiquer en SSL lorsqu'ils s'adressent au Synchronizer ( actuellement, seul l'Arbiter communique avec le Synchronizer ).
Ne concerne pas l'interface de configuration.
ca_cert
Texte--- /etc/shinken/certs/ca.pem Chemin de l'autorité de certification qui a généré le certificat SSL.
server_cert
Texte--- /etc/shinken/certs/server.cert

Chemin du certificat SSL.

Par défaut, un certificat auto signé est livré afin de pouvoir mettre en place rapidement et facilement une sécurité sur les communications des démons.

Shinken conseille d'utiliser vos propres certificats surs du plus long terme.

server_key
Texte--- /etc/shinken/certs/server.key Chemin de la clé SSL.
hard_ssl_name_check
Booléen--- 0

Permet de forcer la vérification du nom du certificat avec le nom du serveur distant.

  • Cette option est désactivée par défaut, car le certificat livré dans l'installation est un certificat auto signé.



Configuration de la base de données

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ───────────────────────────────────────    MONGODB DATABASE CONNECTION    ─────────────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── Database type. currently only mongodb is managed.                                                               ───
    # ───                                                                                                                 ───
    data_backend=mongodb

    # ─── mongodb uri definition for connecting to the mongodb database. You can find the mongodb uri                     ───
    # ─── syntax at https://docs.mongodb.com/manual/reference/connection-string/                                          ───
    # ───                                                                                                                 ───
    mongodb_uri=mongodb://localhost/?safe=false

    # ─── Mongodb database to use for this daemon.                                                                        ───
    # ───                                                                                                                 ───
    mongodb_database=synchronizer       

	# ─── username/password to authenticate to MongoDB.                                                                   ───     
	# ─── Both parameters must be provided for authentication to function correctly.                                      ───
	# ───                                                                                                                 ───
    # synchronizer__database__username=

    # ───                                                                                                                 ───
    # synchronizer__database__password=
    
    # ─── Secure your mongodb connection                                                                                  ───
    # ─── enable the ssh that will                                                                                        ───
    # ─── allow all mongodb to be encrypted & authenticated with SSH                                                      ───
    #                                                                                                                     ───
    #           ...     : 1 => Enable                                                                                     ───
    #           Default : 0 => Disable                                                                                    ───
    # ───                                                                                                                 ───
    mongodb_use_ssh_tunnel=0

    # ─── If the SSH connection goes wrong,                                                                               ───
    # ─── then retry use_ssh_retry_failure time                                                                           ───
    #                                                                                                                     ───
    #           ...     : 0 => Disable                                                                                    ───
    #           Default : 1 => Enable                                                                                     ───
    # ───                                                                                                                 ───
    mongodb_use_ssh_retry_failure=1

    # ─── SSH user/keyfile in order to connect to the mongodb server                                                      ───
    # ───                                                                                                                 ───
    mongodb_ssh_user=shinken

    # ───                                                                                                                 ───
    mongodb_ssh_keyfile=~shinken/.ssh/id_rsa

    # ─── SSH Timeout used to test if the SSH tunnel is viable or not, in seconds                                         ───
    #                                                                                                                     ───
    #           Default : 2 (in seconds)                                                                                  ───
    # ───                                                                                                                 ───
    mongodb_ssh_tunnel_timeout=2

    # ─── By default bailout the synchronizer if cannot contact mongodb for more than 120s                                ───
    #                                                                                                                     ───
    #           Default : 120 (in seconds)                                                                                ───
    # ───                                                                                                                 ───
    mongodb_retry_timeout=120

    # ─── Each database request will be tried X times before considering it as an error and abort                         ───
    #                                                                                                                     ───
    #           Default : 15 (in seconds)                                                                                 ───
    # ───                                                                                                                 ───
    synchronizer__database__retry_connection_X_times_before_considering_an_error=15

    # ─── We will wait X seconds between each try or any database request                                                 ───
    #                                                                                                                     ───
    #           Default : 5 (in seconds)                                                                                  ───
    # ───                                                                                                                 ───
    synchronizer__database__wait_X_seconds_before_reconnect=5

    # ─── The time the history will be kept for synchronizations into database                                            ───
    #                                                                                                                     ───
    #           Default : 1440 (in minutes)                                                                               ───
    # ───                                                                                                                 ───
    sync_history_lifespan=1440     
NomTypeUnitéDéfautDescription
data_backend
Texte--- mongodb Moteur de base de données utilisé. Pour le moment, seule "mongodb" est gérée.
mongodb_uri
Texte--- mongodb://localhost/?safe=false Adresse de connexion à la base de données. La syntaxe est celle de mongo.
mongodb_database
Texte--- synchronizer Le nom de la base de données utilisée.
synchronizer__database__username
Texte---

Utilisateur pour l'authentification avec mot de passe à la base MongoDB.

Utile uniquement si l'activation par mot de passe a été activé ( voir la page MongoDB - activation de l'authentification par mot de passe )

synchronizer__database__password
Texte---



Mot de passe de l'utilisateur utilisé pour l'authentification avec mot de passe à la base MongoDB.

Utile uniquement si l'activation par mot de passe a été activé ( voir la page MongoDB - activation de l'authentification par mot de passe )

mongodb_use_ssh_tunnel
Booléen--- 0

Défini si la connexion à la base de données est directe ou doit être encapsulé dans un tunnel SSH.

valeur possible :

  • 1 ( activé ) 
  • 0 ( désactivé )
mongodb_use_ssh_retry_failure
Booléen--- 1

Défini le nombre d'essais à réaliser si la connexion à la base de données est perdue.

valeur possible :

  • 1 ( activé ) 
  • 0 ( désactivé )
mongodb_ssh_user
Texte--- shinken L'utilisateur qui sera utilisé si la connexion à la base de données est encapsulée dans un tunnel SSH.
mongodb_ssh_keyfile
Texte--- ~shinken/.ssh/id_rsa La clé SSH qui sera utilisée si la connexion à la base de données est encapsulée dans un tunnel SSH.
mongodb_ssh_tunnel_timeout
Entier positif---2Temps maximum avant de considérer que la connexion via le tunnel SSH ne soit considérée comme trop longue et échoue.
mongodb_retry_timeout
Entier positif--- 120 Temps de connexion maximum avant que la connexion ne soit considérée comme trop longue et cause un échec de connexion.
synchronizer__database__retry_connection_X_times_before_considering_an_error
Entier positif--- 15 Nombre de tentatives à effectuer avant de considérer une requête en base de donnée comme étant en erreur.
synchronizer__database__wait_X_seconds_before_reconnect
Entier positifSeconde 5 Temps d'attente entre chaque tentative de requête vers la base de données.
sync_history_lifespan
Entier positifMinute 1440 Le nombre de minutes durant lesquelles les derniers imports seront conservés dans la base de données. La valeur par défaut est de 1440 minutes soit 45 heures.

Si la base de données n'est pas hébergée sur le même serveur que le Synchronizer, il est préférable d'utiliser le tunnel SSH afin de ne pas exposer le port de la base de données sur le serveur distant.

Configuration de l'interface de configuration

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ──────────────────────────────────────────    ADDRESS AND SECURITY    ─────────────────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ────  Listening address (Configuration interface)  ────────────────────────────────────────────────────────────────── #

    # ─── Http(s) port to listen the Configuration interface.                                                             ───
    # ───                                                                                                                 ───
    http_port=7766

    # ─── set the Configuration interface into HTTPs or not (disabled by default).                                        ───
    #                                                                                                                     ───
    #           ...     : 1 => Use HTTPS                                                                                  ───
    #           Default : 0 => Use HTTP                                                                                   ───
    # ───                                                                                                                 ───
    http_use_ssl=0

    # ─── Mandatory is SSL is enabled: server key and certificate.                                                        ───
    # ───                                                                                                                 ───
    http_ssl_cert=/etc/shinken/certs/server.cert

    # ───                                                                                                                 ───
    http_ssl_key=/etc/shinken/certs/server.key

    # ────────────────────  Cypher keys  ────────────────────────────────────────────────────────────────────────────────── #

    # ─── Cookie secret password. Is used to crypt cookies.                                                               ───
    # ───                                                                                                                 ───
    auth_secret=THIS SHOULD BE CHANGED BEFORE PRODUCTION

    # ─── Master key for CLI access.                                                                                      ───
    # ───                                                                                                                 ───
    master_key=MASTERKEY-SHOULDBECHANGED

    # ─────────────────  SSO authentication  ────────────────────────────────────────────────────────────────────────────── #

    # ─── Remote application authentication.                                                                              ───
    #                                                                                                                     ───
    #           ...     : 1 => allow the user to be load from a HTTP Header                                               ───
    #           Default : 0 => Disable                                                                                    ───
    # ───                                                                                                                 ───
    http_remote_user_enable=0

    # ─── From which HTTP header get user name if remote_user_enable is 1.                                                ───
    # ───                                                                                                                 ───
    http_remote_user_variable=X-Remote-User

    # ─── Case sensitivity of login if remote_user_enable is 1.                                                           ───
    #                                                                                                                     ───
    #           ...     : 0 => disable case check on remote user login                                                    ───
    #           Default : 1 => enable case check on remote user login                                                     ───
    # ───                                                                                                                 ───
    http_remote_user_case_sensitive=1

    # ─────  Protected fields security ( Don't modify )  ────────────────────────────────────────────────────────────────── #

    # ─── Encryption for protected fields                                                                                 ───
    #                                                                                                                     ───
    #           ...     : 1 => Enable                                                                                     ───
    #           Default : 0 => Disable                                                                                    ───
    # ───                                                                                                                 ───
    protect_fields__activate_encryption=0

    # ─── File containing the encryption key                                                                              ───
    #                                                                                                                     ───
    #           ...     : 1 => Enable                                                                                     ───
    #           Default : 0 => Disable                                                                                    ───
    # ───                                                                                                                 ───
    protect_fields__encryption_keyfile=/etc/shinken/secrets/protected_fields_key

    # ─── List of words contained in protected fields names                                                               ───
    #                                                                                                                     ───
    #           Default : PASSWORD,PASSPHRASE,PASSE,DOMAINUSER,MSSQLUSER,MYSQLUSER,ORACLE_USER,SSH_USER,LOGIN             ───
    # ───                                                                                                                 ───
    protect_fields__substrings_matching_fields=PASSWORD,PASSPHRASE,PASSE,DOMAINUSER,MSSQLUSER,MYSQLUSER,ORACLE_USER,SSH_USER,LOGIN
   

Configuration interface

NomTypeUnitéDéfautDescription
http_port
Entier positif--- 7766 Le port utilisé par l'interface.
http_use_ssl
Booléen--- 0

Permet de définir si l'interface sera accessible

valeur possible :

  • 1 ( HTTPS ) 
  • 0 ( HTTP )
http_ssl_cert
Texte--- /etc/shinken/certs/server.cert Certificat SSL.
http_ssl_key
Texte--- /etc/shinken/certs/server.key Clé du certificat SSL.

Clés de chiffrement

NomTypeUnitéDéfautDescription
auth_secret
Texte--- générée lors de l'installation Clé générée à l'installation permettant de chiffrer les cookies.
master_key
Texte--- générée lors de l'installation Clé générée à l'installation permettant un accès CLI.

Authentification par SSO

NomTypeUnitéDéfautDescription
http_remote_user_enable
Booléen--- 0 Permet de s'authentifier par un en-tête.
Cette option permet de configurer un accès SSO ( Single-Sign-One ) aussi appelé authentification unique.
http_remote_user_variable
Texte---X-Remote-UserDétermine à partir de quel en-tête HTTP obtenir le nom d'utilisateur lorsque remote_user_enable est activé.
http_remote_user_case_sensitive
Booléen---1

Permet de spécifier si la sensibilité à la casse doit être appliquée lors de la connexion de l'utilisateur, lorsque remote_user_enable est activé.

valeur possible :

  • 1 ( activé ) 
  • 0 ( désactivé )

Protection des données sensibles ( à ne pas modifier )

NomTypeUnitéDéfautDescription
protect_fields__activate_encryption
Booléen--- 0

Définit si la protection est active
( à ne pas modifier ).

protect_fields__encryption_keyfile
Texte--- /etc/shinken/secrets/protected_fields_key

Chemin de la clé de protection
( à ne pas modifier ).

protect_fields__substrings_matching_fields
Texte---
  • PASSWORD,
  • PASSPHRASE,
  • PASSE,
  • DOMAINUSER,
  • MSSQLUSER,
  • MYSQLUSER,
  • ORACLE_USER,
  • SSH_USER,
  • LOGIN
Chaîne de caractère générant une protection des données ( à ne pas modifier ).



La définition de ces paramètres est volontairement peu détaillée, car ils sont modifiés par les commandes Shinken adéquates ( voir la page  Protection des données sensibles de l'UI de Configuration  ).

Configuration interface

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ───────────────────────────────────    INTERFACE CONFIGURATION PARAMETERS    ──────────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ──────────────────────  Language  ─────────────────────────────────────────────────────────────────────────────────── #

    # ─── Select the lang that will be used by default on the UIs.                                                        ───
    # ───       Currently managed:                                                                                        ───
    #                                                                                                                     ───
    #           ...     : en => (english)                                                                                 ───
    #           ...     : fr => (francais)                                                                                ───
    # ───                                                                                                                 ───
    lang=fr

    # ──────────────────────  Sources  ──────────────────────────────────────────────────────────────────────────────────── #

    # ─── On source page, some errors or warnings may concern many elements.                                              ───
    # ─── A summary is shown for this error and you can set the number                                                    ───
    # ─── of message who are in this summary.                                                                             ───
    # ───                                                                                                                 ───
    number_of_message_in_source_summary=5

    # ──────────────────  Production page  ──────────────────────────────────────────────────────────────────────────────── #

    # ─── Timeout for the Arbiter to load a new configuration                                                             ───
    # ───                                                                                                                 ───
    # synchronizer__production__apply_new_configuration_timeout=30   

Langue

NomTypeUnitéDéfautDescription
lang
Texte--- dépend de la version installé Langue de l'interface. La valeur par défaut est "fr" pour un installeur FR, "en" pour un installeur US.



Sources

NomTypeUnitéDéfautDescription
number_of_message_in_source_summary
Entier positif--- 5 Permet de configurer le nombre de messages d'erreur ou d'avertissements dans le résumé d'une source.

Page production

NomTypeUnitéDéfautDescription
synchronizer__production__apply_new_configuration_timeout
Entier positif--- 30 Permet de définir un temps d'attente avant que l'Arbiter soit considérer comme indisponible lors d'une action dans la page de Production ( Vérification de la configuration, Application de la configuration… ).

Paramètre d'utilisateurs ( à ne pas modifier )

Les paramètres suivants sont gérés par Shinken. Ils peuvent être modifiés par les commandes Shinken ou par l'installeur. Il est conseillé de ne pas modifier les valeurs. Les paramètres sont modifiables ( voir la page Surcharge des paramètres du démon ( synchronizer_cfg_overload.cfg )  ).

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ──────────────────────────────────    FOLDER CONFIGURATION ( DON'T MODIFY )    ────────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── When you need to customise element (host, check, ...) default properties value, set it in this directory        ───
    # ───                                                                                                                 ───
    cfg_dir=/etc/shinken-user/configuration/monitoring_policy

    # ─── For custom global DATA                                                                                          ───
    # ───                                                                                                                 ───
    cfg_dir=/etc/shinken-user/configuration/global-data

    # ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ──────────────────────────────    EXTENDED FILE CONFIGURATION ( DON'T MODIFY )    ─────────────────────────────── │ #
    # └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── When you need to customise a value for the Synchronizer, set it in this file                                    ───
    # ───                                                                                                                 ───
    cfg_file=/etc/shinken-user/configuration/daemons/synchronizers/synchronizer_cfg_overload.cfg