├── .cache └── plugin │ └── privacy │ └── assets │ └── external │ ├── blog.zabbix.com │ └── lld-filtering-with-macros │ │ └── 24959 │ ├── fonts.googleapis.com │ ├── css.af67bdb9 │ └── css.af67bdb9.css │ ├── fonts.gstatic.com │ └── s │ │ ├── nunito │ │ └── v26 │ │ │ ├── XRXV3I6Li01BKofIMeaBXso.woff2 │ │ │ ├── XRXV3I6Li01BKofINeaB.woff2 │ │ │ ├── XRXV3I6Li01BKofIO-aBXso.woff2 │ │ │ ├── XRXV3I6Li01BKofIOOaBXso.woff2 │ │ │ ├── XRXV3I6Li01BKofIOuaBXso.woff2 │ │ │ ├── XRXX3I6Li01BKofIMNaDRs4.woff2 │ │ │ ├── XRXX3I6Li01BKofIMNaHRs71cA.woff2 │ │ │ ├── XRXX3I6Li01BKofIMNaMRs71cA.woff2 │ │ │ ├── XRXX3I6Li01BKofIMNaNRs71cA.woff2 │ │ │ └── XRXX3I6Li01BKofIMNaORs71cA.woff2 │ │ └── roboto │ │ └── v47 │ │ ├── KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkAnkaWzU.woff2 │ │ ├── KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBXkaWzU.woff2 │ │ ├── KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBnka.woff2 │ │ ├── KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkC3kaWzU.woff2 │ │ ├── KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCHkaWzU.woff2 │ │ ├── KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCXkaWzU.woff2 │ │ ├── KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCnkaWzU.woff2 │ │ ├── KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkaHkaWzU.woff2 │ │ ├── KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkenkaWzU.woff2 │ │ ├── KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2 │ │ ├── KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2 │ │ ├── KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2 │ │ ├── KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2 │ │ ├── KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2 │ │ ├── KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2 │ │ ├── KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2 │ │ ├── KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2 │ │ └── KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2 │ ├── img.shields.io │ └── badge │ │ └── License-CC BY--NC--SA 4.0-lightgrey.svg │ ├── licensebuttons.net │ └── l │ │ └── by-nc-sa │ │ └── 4.0 │ │ └── 88x31.png │ ├── regex101.com │ ├── unpkg.com │ └── mermaid@11 │ │ └── dist │ │ └── mermaid.min.js │ ├── www.jsonquerytool.com │ └── www.zabbix.com │ └── documentation │ └── current │ └── en │ └── manual │ ├── appendix │ └── config │ │ └── zabbix_proxy │ └── discovery │ └── low_level_discovery ├── .github └── workflows │ └── main.yml ├── .gitignore ├── docs ├── CNAME ├── Guidelines.md ├── Supporters-Contributors.md ├── assets │ └── templates │ │ ├── custom_banner.tpl │ │ └── custom_cover_page.tpl ├── ch00-getting-started │ ├── Requirements.md │ └── initial-steps.md ├── ch01-zabbix-components │ ├── basic-installation.md │ ├── basic-installation │ │ ├── ch01-basic-installation-dbconnection.png │ │ ├── ch01-basic-installation-final.png │ │ ├── ch01-basic-installation-login.png │ │ ├── ch01-basic-installation-prerequisites.png │ │ ├── ch01-basic-installation-selectlanguage.png │ │ ├── ch01-basic-installation-settings.png │ │ ├── ch01-basic-installation-setup.png │ │ ├── ch01-basic-installation-setuplanguage.png │ │ ├── ch01-basic-installation-zabbixdownload.png │ │ └── ch01-basic-installation-zabbixserver.png │ ├── chapter.md │ ├── ha-setup.md │ ├── ha-setup │ │ ├── ch01-HA-check1.png │ │ ├── ch01-HA-check2.png │ │ └── ch01-HA-setup.png │ ├── partitioning-database.md │ └── securing-zabbix.md ├── ch02-zabbix-installation │ ├── chapter.md │ ├── external-auth │ │ ├── ch02-add-google-app.png │ │ ├── ch02-mfa_create_user.png │ │ ├── ch02-mfa_create_user_groups.png │ │ ├── ch02-mfa_duo_add_method.png │ │ ├── ch02-mfa_duo_another_method.png │ │ ├── ch02-mfa_duo_applications.png │ │ ├── ch02-mfa_duo_applications_list.png │ │ ├── ch02-mfa_duo_auth_method.png │ │ ├── ch02-mfa_duo_confirm_app_installed.png │ │ ├── ch02-mfa_duo_data.png │ │ ├── ch02-mfa_duo_duo_app.png │ │ ├── ch02-mfa_duo_enrollement_confirmation.png │ │ ├── ch02-mfa_duo_method_data.png │ │ ├── ch02-mfa_duo_phone_account_added.png │ │ ├── ch02-mfa_duo_phone_accounts.png │ │ ├── ch02-mfa_duo_phone_add_account.png │ │ ├── ch02-mfa_duo_phone_push_notification.png │ │ ├── ch02-mfa_duo_phone_welcome.png │ │ ├── ch02-mfa_duo_push_sent.png │ │ ├── ch02-mfa_duo_scan_qr.png │ │ ├── ch02-mfa_duo_setup_completed.png │ │ ├── ch02-mfa_duo_user_group.png │ │ ├── ch02-mfa_duo_users.png │ │ ├── ch02-mfa_duo_welcome.png │ │ ├── ch02-mfa_duo_welcome1.png │ │ ├── ch02-mfa_duo_welcome2.png │ │ ├── ch02-mfa_new_user.png │ │ ├── ch02-mfa_new_user_group.png │ │ ├── ch02-mfa_new_user_permissions.png │ │ ├── ch02-mfa_settings_TOTP_configured.png │ │ ├── ch02-mfa_settings_TOTP_new.png │ │ ├── ch02-mfa_settings_initial.png │ │ ├── ch02-mfa_totp_auth_app1.png │ │ ├── ch02-mfa_totp_auth_app2.png │ │ ├── ch02-mfa_totp_auth_app3.png │ │ ├── ch02-mfa_totp_qr_code.png │ │ ├── ch02-mfa_totp_reset_password.png │ │ ├── ch02-mfa_totp_second_login.png │ │ ├── ch02-saml-download.png │ │ ├── ch02-saml-mappings.png │ │ └── ch02-saml-zabbix-options.png │ ├── external-authentication.md │ ├── frontend.md │ ├── frontend │ │ ├── ch02-administration-menu.png │ │ ├── ch02-alerts-menu.png │ │ ├── ch02-datacollection-menu.png │ │ ├── ch02-edit-dashboard.png │ │ ├── ch02-frontend-collapse.png │ │ ├── ch02-frontend-expand.png │ │ ├── ch02-frontend-hide.png │ │ ├── ch02-frontend-overview.png │ │ ├── ch02-frontend-shrink.png │ │ ├── ch02-global-search-result.png │ │ ├── ch02-global-search.png │ │ ├── ch02-inventory-menu.png │ │ ├── ch02-main-menu.png │ │ ├── ch02-monitoring-menu.png │ │ ├── ch02-reports-menu.png │ │ ├── ch02-services-menu.png │ │ ├── ch02-system-information.png │ │ └── ch02-users-menu.png │ ├── host-groups.md │ └── user-groups.md ├── ch03-zabbix-proxies │ ├── active-passive-proxies.md │ ├── active-passive-proxies │ │ ├── ch03-active-communication.png │ │ ├── ch03-active-proxy-installed.png │ │ ├── ch03-add-active-proxy.png │ │ ├── ch03-new-active-proxy.png │ │ ├── ch03-new-passive-proxy.png │ │ ├── ch03-passive-communication.png │ │ ├── ch03-passive-not-working.png │ │ └── ch03-passive-working.png │ ├── chapter.md │ ├── proxy-basics.md │ ├── proxy-groups.md │ └── web-services.md ├── ch04-zabbix-collecting-data │ ├── browser.md │ ├── calculated.md │ ├── chapter.md │ ├── database-agent.md │ ├── database-odbc.md │ ├── datacollection │ │ ├── ch04.1-dataflow-basic.png │ │ ├── ch04.2-dataflow-detailed.png │ │ ├── ch04.3-empty-host-creation.png │ │ ├── ch04.4-host-creation-new-group.png │ │ ├── ch04.5-empty-item-creation.png │ │ ├── ch04.6-latest-data-memcpu-sorting.png │ │ ├── ch04.7-icmpping-item.png │ │ └── ch04.8-icmpping-item-tags.png │ ├── dataflow.md │ ├── dependent.md │ ├── external-checks.md │ ├── host-interfaces.md │ ├── hosts.md │ ├── http.md │ ├── ipmi.md │ ├── jmx.md │ ├── script.md │ ├── simple-checks.md │ ├── snmp-polling.md │ ├── snmp-trapping.md │ ├── ssh-telnet.md │ ├── zabbix-agent-active.md │ ├── zabbix-agent-passive.md │ ├── zabbix-internal.md │ └── zabbix-trapper.md ├── ch05-zabbix-triggers │ ├── advanced-triggers.md │ ├── chapter.md │ └── triggers.md ├── ch06-zabbix-templates │ └── chapter.md ├── ch07-zabbix-alerts │ └── chapter.md ├── ch08-zabbix-lld │ ├── chapter.md │ ├── custom-lld │ │ ├── lld-discovery-test.png │ │ ├── lld-item-create.png │ │ ├── lld-override-operation.png │ │ ├── lld-override.png │ │ ├── lld-test-item.png │ │ ├── lld-trigger.png │ │ ├── lld-user-root-loggedin.png │ │ ├── lld-users-override.png │ │ ├── template-discovery-rule.png │ │ └── template-lld-users.png │ ├── custom.md │ ├── dependent lld │ │ ├── ch08-dependent-lld-create-discovery.png │ │ ├── ch08-dependent-lld-create-filter-macro.png │ │ ├── ch08-dependent-lld-create-filters.png │ │ ├── ch08-dependent-lld-create-host.png │ │ ├── ch08-dependent-lld-create-latestdata-updated.png │ │ ├── ch08-dependent-lld-create-latestdata.png │ │ ├── ch08-dependent-lld-create-llditem.png │ │ ├── ch08-dependent-lld-create-llditempreprocessing.png │ │ ├── ch08-dependent-lld-create-lldmacro.png │ │ ├── ch08-dependent-lld-item.png │ │ └── ch08-dependent-lld-test-item.png │ └── lld-with-dependent-items.md ├── ch09-zabbix-extending │ ├── chapter.md │ ├── scripts.md │ └── scripts │ │ ├── ch09-Alert-scripts-menu.png │ │ ├── ch09-api-token-added.png │ │ ├── ch09-create-api.png │ │ ├── ch09-error-execute-script.png │ │ ├── ch09-host-testing-script.png │ │ ├── ch09-maintenance-created.png │ │ ├── ch09-new-api-token.png │ │ ├── ch09-ok-execute-script.png │ │ ├── ch09-script-form.png │ │ └── ch09-scripts-user.png ├── ch10-zabbix-discovery │ └── chapter.md ├── ch11-zabbix-visualisation │ └── chapter.md ├── ch12-zabbix-api │ └── chapter.md ├── ch13-zabbix-real-world-examples │ └── chapter.md ├── de │ ├── Guidelines.md │ ├── ch00-getting-started │ │ └── Requirements.md │ ├── ch01-zabbix-components │ │ └── chapter.md │ ├── ch03-zabbix-proxies │ │ └── chapter.md │ └── index.md ├── es │ ├── Guidelines.md │ ├── ch00-getting-started │ │ └── Requirements.md │ ├── ch01-zabbix-components │ │ └── chapter.md │ └── index.md ├── files │ └── form deed of transfer Book Zabbix.pdf ├── fr │ ├── Guidelines.md │ ├── ch00-getting-started │ │ └── Requirements.md │ ├── ch01-zabbix-components │ │ └── chapter.md │ ├── ch03-zabbix-proxies │ │ └── chapter.md │ └── index.md ├── index.md ├── it │ ├── Guidelines.md │ ├── ch00-getting-started │ │ └── Requirements.md │ ├── ch01-zabbix-components │ │ └── chapter.md │ ├── ch03-zabbix-proxies │ │ └── chapter.md │ └── index.md ├── known_words.txt ├── nl │ ├── Guidelines.md │ ├── ch00-getting-started │ │ └── Requirements.md │ ├── ch01-zabbix-components │ │ └── chapter.md │ ├── ch03-zabbix-proxies │ │ └── chapter.md │ └── index.md ├── overrides │ └── main.html ├── pt │ ├── Guidelines.md │ ├── ch00-getting-started │ │ └── Requirements.md │ ├── ch01-zabbix-components │ │ └── chapter.md │ └── index.md ├── ru │ ├── Guidelines.md │ └── ch00-getting-started │ │ └── Requirements.md ├── stylesheets │ ├── extra.css │ └── linewrap.css ├── th │ ├── Guidelines.md │ ├── ch00-getting-started │ │ └── Requirements.md │ ├── ch01-zabbix-components │ │ └── chapter.md │ └── index.md └── zh │ ├── ch01-zabbix-components │ └── chapter.md │ └── index.md ├── how-to-install-mkdocs.md ├── how-to-rules-for-writing.md ├── mkdocs.yml └── readme.md /.cache/plugin/privacy/assets/external/fonts.googleapis.com/css.af67bdb9: -------------------------------------------------------------------------------- 1 | css.af67bdb9.css -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXV3I6Li01BKofIMeaBXso.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXV3I6Li01BKofIMeaBXso.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXV3I6Li01BKofINeaB.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXV3I6Li01BKofINeaB.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXV3I6Li01BKofIO-aBXso.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXV3I6Li01BKofIO-aBXso.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXV3I6Li01BKofIOOaBXso.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXV3I6Li01BKofIOOaBXso.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXV3I6Li01BKofIOuaBXso.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXV3I6Li01BKofIOuaBXso.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXX3I6Li01BKofIMNaDRs4.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXX3I6Li01BKofIMNaDRs4.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXX3I6Li01BKofIMNaHRs71cA.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXX3I6Li01BKofIMNaHRs71cA.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXX3I6Li01BKofIMNaMRs71cA.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXX3I6Li01BKofIMNaMRs71cA.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXX3I6Li01BKofIMNaNRs71cA.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXX3I6Li01BKofIMNaNRs71cA.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXX3I6Li01BKofIMNaORs71cA.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/nunito/v26/XRXX3I6Li01BKofIMNaORs71cA.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkAnkaWzU.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkAnkaWzU.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBXkaWzU.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBXkaWzU.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBnka.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBnka.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkC3kaWzU.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkC3kaWzU.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCHkaWzU.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCHkaWzU.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCXkaWzU.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCXkaWzU.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCnkaWzU.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCnkaWzU.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkaHkaWzU.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkaHkaWzU.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkenkaWzU.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkenkaWzU.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/img.shields.io/badge/License-CC BY--NC--SA 4.0-lightgrey.svg: -------------------------------------------------------------------------------- 1 | License: CC BY-NC-SA 4.0LicenseCC BY-NC-SA 4.0 -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/licensebuttons.net/l/by-nc-sa/4.0/88x31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/.cache/plugin/privacy/assets/external/licensebuttons.net/l/by-nc-sa/4.0/88x31.png -------------------------------------------------------------------------------- /.cache/plugin/privacy/assets/external/www.jsonquerytool.com: -------------------------------------------------------------------------------- 1 | Online JSON Query Tester
LOADING...
-------------------------------------------------------------------------------- /.github/workflows/main.yml: -------------------------------------------------------------------------------- 1 | name: ci 2 | on: 3 | push: 4 | branches: 5 | - main 6 | - master 7 | jobs: 8 | deploy: 9 | runs-on: ubuntu-latest 10 | steps: 11 | - uses: actions/checkout@v4 12 | - uses: actions/setup-python@v5 13 | with: 14 | python-version: '3.12' 15 | - run: pip install idna mkdocs-material mkdocs-static-i18n mkdocs-print-site-plugin mkdocs-spellcheck[all] mkdocs-autolinks-plugin 16 | - run: mkdocs gh-deploy --force 17 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .obsidian/ 2 | site/ 3 | docs/.DS_Store 4 | .DS_Store 5 | libcairo.2.dylib 6 | .vscode/ 7 | .markdownlint.json 8 | mkdocs_spellcheck/ 9 | mkdocs_spellcheck-1.1.0.dist-info/ 10 | -------------------------------------------------------------------------------- /docs/CNAME: -------------------------------------------------------------------------------- 1 | www.thezabbixbook.com 2 | -------------------------------------------------------------------------------- /docs/Guidelines.md: -------------------------------------------------------------------------------- 1 | # Guidelines 2 | 3 | ## How to contribute 4 | 5 | 6 | - Sign the [deed of transfer](https://www.thezabbixbook.com/files/form%20deed%20of%20transfer%20Book%20Zabbix.pdf) preferable electronically 7 | - Clone this project to your Github account 8 | - Clone the repository to you pc 9 | 10 | - Install the needed software for Mkdocs to work, 11 | check the file in the root folder how-to-install-mkdocs.md 12 | - Create a new branch to make your changes 13 | - git branch "" 14 | - git checkout "" 15 | - Make the changes you want and commit them 16 | - git add "files you changed" 17 | - git commit -m "add useful commit info" 18 | - Return back to the main branch 19 | - git checkout main 20 | - Make sure you have the latest changes merged from main 21 | - git pull origin main 22 | - Merge your branch into the main branch 23 | - git merge "" 24 | - git push 25 | - cleanup your branch 26 | - git branch -d "" 27 | - Create a pull requests so that we can merge it :) 28 | - Follow these [guidelines](https://github.com/penmasters/zabbix-book/how-to-rules-for-writing.md) when you write a topic. 29 | -------------------------------------------------------------------------------- /docs/Supporters-Contributors.md: -------------------------------------------------------------------------------- 1 | # Supporters & Contributors 2 | 3 | This book would not have been possible without the dedication, generosity, and 4 | expertise of many individuals and organizations. We extend our heartfelt thanks 5 | to everyone who has supported this project, whether through financial contributions, 6 | technical expertise, content reviews, or community engagement. 7 | 8 | ## Our Sponsors 9 | 10 | We are deeply grateful to the sponsors who have provided financial or material 11 | support to help bring this book to life. Their contributions have enabled us to 12 | maintain high-quality content, support open-source initiatives, and ensure that 13 | this book remains accessible to as many people as possible. 14 | 15 | - **OICTS** : [https://oicts.com/](https://oicts.com/) 16 | - **ZABBIX** : [https://www.zabbix.com/](https://www.zabbix.com/) 17 | 18 | --- 19 | 20 | ## Our Contributors 21 | 22 | This book is a community effort, and we sincerely appreciate the time and knowledge 23 | shared by our contributors. From writing and reviewing content to providing feedback 24 | and sharing expertise, your efforts have helped shape this resource into something 25 | valuable for the monitoring and open-source communities. 26 | 27 | - **Patrik Uytterhoeven** : http://github.com/Trikke76 28 | - **Nathan Liefting** : https://github.com/larcorba 29 | 30 | --- 31 | 32 | ## Special Thanks to Our Board Members 33 | 34 | A special acknowledgment goes to the members of our board, whose vision, leadership, 35 | and dedication have guided this project from its inception. Their commitment to 36 | open-source principles and knowledge sharing has been instrumental in making this 37 | book a reality. 38 | 39 | - **Patrik Uytterhoeven** : http://github.com/Trikke76 40 | - **Nathan Liefting** : https://github.com/larcorba 41 | 42 | --- 43 | 44 | ## Every Contribution Matters 45 | Open-source thrives on collaboration, and even the smallest contributions help 46 | make a difference. Whether it was reporting a typo, suggesting an improvement, 47 | opening an issue, or simply sharing feedback, we appreciate everyone who took 48 | the time to help refine and improve this book. Your efforts, no matter how small, 49 | are a valuable part of this project. Check out [Everyone who created an issue](https://github.com/penmasters/zabbix-book/issues?q=is%3Aissue%20). 50 | 51 | --- 52 | 53 | ## Join the Community 54 | We welcome new contributors and supporters! If you'd like to get involved whether 55 | by contributing content, providing feedback, or supporting this initiative you can 56 | find more details on how to participate at [Guidelines](./Guidelines.md). 57 | 58 | Thank you for being part of this journey and helping us build a valuable resource 59 | for the open-source community! 60 | -------------------------------------------------------------------------------- /docs/assets/templates/custom_banner.tpl: -------------------------------------------------------------------------------- 1 |

2 | This box will disappear when printing 3 |

4 |

This page has combined all site pages into one. You can export to PDF using File > Print > Save as PDF.

5 | -------------------------------------------------------------------------------- /docs/assets/templates/custom_cover_page.tpl: -------------------------------------------------------------------------------- 1 |
2 | 3 |
4 | 5 | 6 | 7 | 8 | {% if config.site_description %} 9 | 10 | 11 | 12 | 13 | {% endif %} 14 | 15 | {% if config.site_author %} 16 | 17 | 18 | 19 | 20 | {% endif %} 21 | 22 | {% if config.repo_url %} 23 | 24 | 25 | 26 | 27 | {% endif %} 28 | 29 | {% if config.copyright %} 30 | 31 | 32 | 33 | 34 | {% endif %} 35 | 36 |
Description{{ config.site_description }}
Author(s){{ config.site_author }}
Repository{{ config.repo_url }}
Copyright{{ config.copyright }}
37 | -------------------------------------------------------------------------------- /docs/ch00-getting-started/initial-steps.md: -------------------------------------------------------------------------------- 1 | # Getting Started with Zabbix – Unlocking the Power of Monitoring 2 | 3 | Welcome to the world of **Zabbix**, a powerful open-source monitoring solution 4 | designed to give you comprehensive insights into your IT infrastructure. 5 | Whether you're managing a small network or overseeing a large-scale enterprise 6 | system, Zabbix provides the tools you need to monitor performance, detect issues, 7 | and ensure the smooth operation of your services. 8 | 9 | In this book, we focus on **Zabbix LTS 8.0**, the long-term support version that 10 | ensures stability and reliability for your monitoring needs. We'll explore its 11 | extensive feature set, including the newly introduced **reporting functionality** 12 | and **built-in web monitoring** based on the Selenium driver, which allows for 13 | sophisticated end-user experience monitoring through automated browser interactions. 14 | 15 | Zabbix is more than just a simple monitoring tool. It offers a wide range of 16 | features that allow you to: 17 | 18 | - **Monitor diverse environments**: Track the performance and availability of 19 | servers, virtual machines, network devices, databases, and applications. 20 | - **Create dynamic visualizations**: Use dashboards, graphs, maps, and screens 21 | to visualize data and get an overview of your system's health at a glance. 22 | - **Set up complex alerting mechanisms**: Define triggers and actions that notify 23 | you of potential issues before they become critical, using various channels 24 | like email, SMS, and integrations with external services. 25 | - **Automate monitoring tasks**: Leverage auto-discovery and auto-registration to 26 | keep up with changing environments without manual intervention. 27 | - **Customize and extend**: Build custom scripts, templates, and integrations to 28 | tailor Zabbix to your specific needs. 29 | -------------------------------------------------------------------------------- /docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-dbconnection.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-dbconnection.png -------------------------------------------------------------------------------- /docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-final.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-final.png -------------------------------------------------------------------------------- /docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-login.png -------------------------------------------------------------------------------- /docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-prerequisites.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-prerequisites.png -------------------------------------------------------------------------------- /docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-selectlanguage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-selectlanguage.png -------------------------------------------------------------------------------- /docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-settings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-settings.png -------------------------------------------------------------------------------- /docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-setup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-setup.png -------------------------------------------------------------------------------- /docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-setuplanguage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-setuplanguage.png -------------------------------------------------------------------------------- /docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-zabbixdownload.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-zabbixdownload.png -------------------------------------------------------------------------------- /docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-zabbixserver.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch01-zabbix-components/basic-installation/ch01-basic-installation-zabbixserver.png -------------------------------------------------------------------------------- /docs/ch01-zabbix-components/chapter.md: -------------------------------------------------------------------------------- 1 | # Zabbix components, basic functions and installation 2 | 3 | In this chapter, we expand on the foundational knowledge from the "Getting Started" 4 | section to provide a comprehensive guide for both beginners who are installing 5 | Zabbix for the first time and advanced users who seek to optimize their setup. 6 | We’ll not only cover the essential steps for a basic installation but also delve 7 | into the finer details of Zabbix architecture, components, and best practices. 8 | 9 | We’ll start by walking through the installation process, ensuring you have a solid 10 | foundation to build on. From there, we'll move into the core components of 11 | Zabbix, what each one does, how they interact, and why they are crucial to your 12 | monitoring solution. 13 | You'll learn about subprocesses, their roles, and how they contribute to Zabbix 14 | efficiency and reliability. 15 | 16 | Additionally, we’ll explore good architectural choices that can make or break 17 | your monitoring setup. Whether you're managing a small network or a large-scale 18 | infrastructure, making the right design decisions early on will pay dividends 19 | in scalability, performance, and maintenance. 20 | 21 | This chapter is designed to cater to a wide range of readers. 22 | If you're simply looking to get Zabbix up and running, you'll find clear, step-by-step 23 | instructions. For those wanting to dive deeper, we'll provide detailed insights into 24 | how Zabbix functions under the hood, helping you make informed choices that align 25 | with your needs and future growth plans. 26 | 27 | By the end of this chapter, you will have not only a working Zabbix installation 28 | but also a thorough understanding of its components and architecture, empowering 29 | you to leverage Zabbix to its fullest potential, regardless of the complexity of 30 | your environment. 31 | 32 | Let’s embark on this detailed journey into Zabbix and equip ourselves with the 33 | knowledge to both start and optimize a powerful monitoring solution. 34 | -------------------------------------------------------------------------------- /docs/ch01-zabbix-components/ha-setup/ch01-HA-check1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch01-zabbix-components/ha-setup/ch01-HA-check1.png -------------------------------------------------------------------------------- /docs/ch01-zabbix-components/ha-setup/ch01-HA-check2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch01-zabbix-components/ha-setup/ch01-HA-check2.png -------------------------------------------------------------------------------- /docs/ch01-zabbix-components/ha-setup/ch01-HA-setup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch01-zabbix-components/ha-setup/ch01-HA-setup.png -------------------------------------------------------------------------------- /docs/ch01-zabbix-components/securing-zabbix.md: -------------------------------------------------------------------------------- 1 | # Security 2 | 3 | 4 | In today's interconnected IT landscape, monitoring systems like Zabbix have become 5 | critical infrastructure components, offering visibility into the health and performance 6 | of entire networks. However, these powerful monitoring tools also represent potential 7 | security vulnerabilities if not properly secured. This chapter will explores the 8 | essential combination of SELinux and security best practices to harden your Zabbix 9 | deployment against modern threats. 10 | 11 | Security is not an optional feature but a fundamental requirement for any monitoring 12 | solution. Zabbix, with its extensive reach across your infrastructure, has access 13 | to sensitive system information and often operates with elevated privileges. 14 | Without proper security controls, a compromised monitoring system can become a 15 | launchpad for lateral movement across your network, potentially exposing critical 16 | business data and systems. 17 | 18 | We'll explore how SELinux's mandatory access control framework provides an additional 19 | security layer beyond traditional permissions, and how proper configuration can 20 | dramatically reduce your attack surface. You'll learn practical, implementable 21 | security measures that balance protection with functionality, ensuring your monitoring 22 | capabilities remain intact while defending against both external and internal threats. 23 | 24 | Whether you're a system administrator, security professional, or IT manager, understanding 25 | these security principles will help you transform your Zabbix deployment from a 26 | potential liability into a secure asset within your security architecture. 27 | 28 | 29 | ## SELinux and Zabbix 30 | 31 | SELinux (Security-Enhanced Linux) provides mandatory access control for Zabbix by 32 | enforcing security policies that restrict what the Zabbix processes can do, even 33 | when running as root. 34 | 35 | SELinux contexts are a core component of how SELinux implements security control. 36 | Think of contexts as labels that are assigned to every object in the system (files, processes, ports, etc.). 37 | These labels determine what can interact with what. 38 | 39 | ### SELinux Enforcement Mode 40 | For SELinux to actually provide security protection, it needs to be set to "enforcing" mode. There are three possible modes for SELinux: 41 | 42 | - **Enforcing** - SELinux security policy is enforced. Actions that violate policy are blocked and logged. 43 | - **Permissive** - SELinux security policy is not enforced but violations are logged. This is useful for debugging. 44 | - **Disabled** - SELinux is completely turned off. 45 | 46 | You can check the current SELinux mode with the getenforce command: 47 | ```yaml 48 | getenforce 49 | ``` 50 | This should return : Enforcing 51 | 52 | To properly secure Zabbix with SELinux, the system should be in `Enforcing` mode. If it's not, you can change it temporarily: 53 | 54 | ##### Set to enforcing immediately (until reboot) 55 | 56 | ```yaml 57 | sudo setenforce 1 58 | ``` 59 | For permanent configuration, edit /etc/selinux/config and set: 60 | ``` yaml 61 | SELINUX=Enforcing 62 | ``` 63 | 64 | ### Basic Structure of an SELinux Context 65 | 66 | An SELinux context typically consists of four parts: 67 | 68 | - **User**: The SELinux user identity (not the same as Linux users) 69 | - **Role**: What roles the user can enter 70 | - **Type**: The domain for processes or type for files (most important part) 71 | - **Level**: Optional MLS (Multi-Level Security) sensitivity level 72 | 73 | When displayed, these appear in the format: user:role:type:level 74 | 75 | ### How Contexts Work in Practice 76 | 77 | In the Zabbix SELinux configuration, several security types are defined to control access: 78 | 79 | - **zabbix_t**: The domain in which the Zabbix server process runs 80 | - **zabbix_port_t**: Type assigned to network ports that Zabbix uses 81 | - **zabbix_var_run_t**: Type for Zabbix runtime socket files 82 | - **httpd_t**: The domain for the Apache web server process 83 | 84 | The SELinux policy allows specific permissions between these types: 85 | 86 | Zabbix server can connect to its own Unix stream sockets 87 | Zabbix server can connect to network ports labeled as zabbix_port_t 88 | Zabbix server can create and remove socket files in directories labeled as zabbix_var_run_t 89 | 90 | The web server (httpd) can connect to Zabbix ports, allowing the web frontend to 91 | communicate with the Zabbix server. 92 | These permissions ensure Zabbix components can communicate properly while maintaining 93 | SELinux security boundaries. 94 | 95 | When Zabbix tries to access a file or network resource, SELinux checks if the context 96 | of the Zabbix process is allowed to access the context of that resource according to 97 | policy rules. 98 | 99 | ### Viewing Contexts 100 | 101 | !!! info "You can view the contexts of files using:" 102 | 103 | ```yaml 104 | ls -Z /path/to/zabbix/files 105 | ``` 106 | 107 | 108 | !!! info "And for the processes:" 109 | 110 | ```yaml 111 | ps -eZ | grep zabbix" 112 | ``` 113 | ``` yaml 114 | system_u:system_r:unconfined_service_t:s0 691 ? 00:02:20 zabbix_agent2 115 | system_u:system_r:zabbix_t:s0 707 ? 00:00:59 zabbix_server 116 | system_u:system_r:zabbix_t:s0 1203 ? 00:02:00 zabbix_server 117 | ``` 118 | 119 | !!! info "And for log files" 120 | 121 | ``` yaml 122 | ls -alZ /var/log/zabbix/zabbix_server.log 123 | ```yaml 124 | -rw-rw-r--. 1 zabbix zabbix system_u:object_r:zabbix_log_t:s0 11857 Apr 26 22:02 /var/log/zabbix/zabbix_server.log 125 | ``` 126 | 127 | ### Zabbix-selinux-policy Package 128 | 129 | The zabbix-selinux-policy package is a specialized SELinux policy module designed 130 | specifically for Zabbix deployments. It provides pre-configured SELinux policies 131 | that allow Zabbix components to function properly while running in an SELinux enforced 132 | environment. 133 | 134 | Key Functions of the Package: 135 | 136 | - **Pre-defined Contexts** : Contains proper SELinux context definitions for Zabbix 137 | binaries, configuration files, log directories, and other resources. 138 | - **Port Definitions** : Registers standard Zabbix ports (like 10050 for agent, 10051 for server) 139 | in the SELinux policy so they can be used without triggering denials. 140 | - **Access Rules**: Defines which operations Zabbix processes can perform, like writing 141 | to log files, connecting to databases, and communicating over networks. 142 | - **Boolean Toggles**: Provides SELinux boolean settings specific to Zabbix that can 143 | enable/disable certain functionalities without having to write custom policies. 144 | 145 | Benefits of Using the Package: 146 | 147 | - **Simplified Deployment** : Reduces the need for manual SELinux policy adjustments when 148 | installing Zabbix. 149 | - **Security by Default**: Ensures Zabbix operates with minimal required permissions rather than running in permissive mode. 150 | - **Maintained Compatibility**: The package is updated alongside Zabbix to ensure compatibility with new features. 151 | 152 | #### Installation and Usage 153 | 154 | The package is typically installed alongside other Zabbix components: 155 | ``` yaml 156 | dnf install zabbix-selinux-policy 157 | ``` 158 | After installation, the SELinux contexts are automatically applied to standard Zabbix 159 | paths and ports. If you use non-standard configurations, you may still need to make 160 | manual adjustments. 161 | This package essentially bridges the gap between Zabbix's operational requirements 162 | and SELinux's strict security controls, making it much easier to run Zabbix securely 163 | without compromising on monitoring capabilities. 164 | 165 | ### For Zabbix to function properly with SELinux enabled: 166 | 167 | Zabbix binaries and configuration files need appropriate SELinux labels (typically zabbix_t context) 168 | Network ports used by Zabbix must be properly defined in SELinux policy 169 | Database connections require defined policies for Zabbix to communicate with MySQL/PostgreSQL 170 | File paths for monitoring, logging, and temporary files need correct contexts 171 | 172 | When issues occur, they typically manifest as denied operations in SELinux audit logs. Administrators can either: 173 | 174 | Use audit2allow to create custom policy modules for legitimate Zabbix operations 175 | Apply proper context labels using semanage and restorecon commands 176 | Configure boolean settings to enable specific Zabbix functionality 177 | 178 | This combination creates defense-in-depth by ensuring that even if Zabbix is compromised, 179 | the attacker remains constrained by SELinux policies, limiting potential damage to 180 | your systems. 181 | 182 | #### Zabbix SELinux Boolean 183 | One of the most convenient aspects of the SELinux implementation for Zabbix is the 184 | use of "booleans". simple on/off switches that control specific permissions. These 185 | allow you to fine-tune SELinux policies without needing to understand complex policy 186 | writing. Key Zabbix booleans include: 187 | 188 | - **zabbix_can_network**: Controls whether Zabbix can initiate network connections 189 | - **httpd_can_connect_zabbix**: Controls whether the web server can connect to Zabbix 190 | - **zabbix_run_sudo**: Controls whether Zabbix can execute sudo commands 191 | 192 | !!! info "You can view these settings with:" 193 | ``` yaml 194 | getsebool -a | grep zabbix 195 | ``` 196 | And you can toggle them as needed with setsebool. 197 | 198 | ### Enable Zabbix network connections (persistent across reboots) 199 | ```yaml 200 | setsebool -P zabbix_can_network on 201 | ``` 202 | These booleans make it much easier to securely deploy Zabbix while maintaining SELinux 203 | protection, as you can enable only the specific capabilities that your Zabbix implementation 204 | needs without compromising overall system security. 205 | 206 | 207 | ### Creating custom rules 208 | 209 | When running Zabbix in environments with SELinux enabled, you may encounter permission 210 | issues when Zabbix attempts to execute certain utilities like fping. This occurs 211 | because fping uses setuid (SUID) permissions, and SELinux's default policies prevent 212 | Zabbix from executing such binaries for security reasons. 213 | 214 | There are different solutions to this problem: 215 | 216 | - **Method 1: Automated Policy Generation :** 217 | 218 | The most straightforward approach is to use the audit2allow utility to analyse 219 | SELinux denial messages and generate appropriate policies: 220 | 221 | First, capture the denial events from the audit log: 222 | ```yaml 223 | sudo grep zabbix /var/log/audit/audit.log | grep fping | audit2allow -M zabbix_fping 224 | ``` 225 | 226 | !!! info "Install the generated policy module:" 227 | 228 | ```yaml 229 | sudo semodule -i zabbix_fping.pp 230 | ``` 231 | 232 | !!! info "Apply the correct SELinux context to the fping binary:" 233 | 234 | ```yaml 235 | sudo chcon -t fping_exec_t /usr/sbin/fping 236 | ``` 237 | 238 | 239 | - **Method 2: Manual Policy Creation :** 240 | 241 | For more control or in situations where audit logs aren't available, you can manually 242 | create a custom policy: 243 | 244 | Create a policy file named zabbix_fping.te with the following content: 245 | ```yaml 246 | module zabbix_fping 1.0; 247 | 248 | require { 249 | type zabbix_t; 250 | type fping_t; 251 | type fping_exec_t; 252 | class file { execute execute_no_trans getattr open read }; 253 | class capability net_raw; 254 | } 255 | 256 | #============= zabbix_t ============== 257 | allow zabbix_t fping_exec_t:file { execute execute_no_trans getattr open read }; 258 | allow zabbix_t self:capability net_raw; 259 | ``` 260 | !!! info "Compile the policy module:" 261 | 262 | ```yaml 263 | checkmodule -M -m -o zabbix_fping.mod zabbix_fping.te 264 | ``` 265 | 266 | !!! info "Package the compiled module:" 267 | 268 | ```yaml 269 | semodule_package -o zabbix_fping.pp -m zabbix_fping.mod 270 | ``` 271 | 272 | !!! info "Install the policy module:" 273 | 274 | ```yaml 275 | semodule -i zabbix_fping.pp 276 | ``` 277 | 278 | 279 | ## Securing zabbix admin 280 | 281 | ## HTTPS 282 | 283 | ## DB certs 284 | 285 | 286 | 287 | 288 | 289 | 290 | ## Conclusion 291 | 292 | ## Questions 293 | 294 | - Why does SELinux prevent Zabbix from executing fping by default? 295 | - In what situations might you need to create custom SELinux policies for other Zabbix monitoring tools? 296 | - What are the key differences between using audit2allow and manually creating a custom policy module? 297 | 298 | 299 | ## Useful URLs 300 | 301 | - https://www.zabbix.com/documentation/7.2/en/manual/installation/install_from_packages/rhel?hl=SELinux#selinux-configuration 302 | - https://www.systutorials.com/docs/linux/man/8-zabbix_selinux/ 303 | - https://man.linuxreviews.org/man8/zabbix_agent_selinux.8.html 304 | - https://phoenixnap.com/kb/selinux 305 | -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/chapter.md: -------------------------------------------------------------------------------- 1 | # Getting started with the Zabbix installation 2 | 3 | We begin this chapter with a **deep dive into the Zabbix frontend**, the central hub 4 | where all monitoring and configuration tasks come together. Alongside the basic 5 | introduction to navigating the frontend, this chapter also covers **user and group 6 | setup**, focusing on creating a secure and efficient user management system. 7 | 8 | We'll walk through setting up **internal authentication** with best practices for 9 | security, including **dual-factor authentication**. For those needing advanced integration, 10 | we'll explore options like **SAML, LDAP**, and other external authentication methods. 11 | 12 | This chapter strikes a balance between a straightforward overview “this is the frontend” 13 | and a more in depth look at the **advanced choices** you can make to enhance your system's 14 | security and manageability. Whether you're just getting started or looking to implement 15 | robust security measures, there's something here for everyone. 16 | 17 | By the end, you'll be well equipped to navigate the Zabbix frontend with confidence 18 | and set up a secure, scalable user management system tailored to your organization's needs. 19 | -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-add-google-app.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-add-google-app.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_create_user.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_create_user.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_create_user_groups.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_create_user_groups.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_add_method.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_add_method.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_another_method.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_another_method.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_applications.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_applications.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_applications_list.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_applications_list.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_auth_method.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_auth_method.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_confirm_app_installed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_confirm_app_installed.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_data.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_data.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_duo_app.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_duo_app.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_enrollement_confirmation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_enrollement_confirmation.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_method_data.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_method_data.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_phone_account_added.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_phone_account_added.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_phone_accounts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_phone_accounts.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_phone_add_account.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_phone_add_account.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_phone_push_notification.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_phone_push_notification.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_phone_welcome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_phone_welcome.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_push_sent.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_push_sent.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_scan_qr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_scan_qr.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_setup_completed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_setup_completed.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_user_group.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_user_group.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_users.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_users.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_welcome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_welcome.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_welcome1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_welcome1.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_welcome2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_duo_welcome2.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_new_user.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_new_user.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_new_user_group.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_new_user_group.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_new_user_permissions.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_new_user_permissions.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_settings_TOTP_configured.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_settings_TOTP_configured.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_settings_TOTP_new.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_settings_TOTP_new.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_settings_initial.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_settings_initial.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_totp_auth_app1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_totp_auth_app1.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_totp_auth_app2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_totp_auth_app2.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_totp_auth_app3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_totp_auth_app3.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_totp_qr_code.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_totp_qr_code.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_totp_reset_password.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_totp_reset_password.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-mfa_totp_second_login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-mfa_totp_second_login.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-saml-download.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-saml-download.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-saml-mappings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-saml-mappings.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/external-auth/ch02-saml-zabbix-options.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/external-auth/ch02-saml-zabbix-options.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-administration-menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-administration-menu.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-alerts-menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-alerts-menu.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-datacollection-menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-datacollection-menu.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-edit-dashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-edit-dashboard.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-frontend-collapse.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-frontend-collapse.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-frontend-expand.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-frontend-expand.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-frontend-hide.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-frontend-hide.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-frontend-overview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-frontend-overview.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-frontend-shrink.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-frontend-shrink.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-global-search-result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-global-search-result.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-global-search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-global-search.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-inventory-menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-inventory-menu.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-main-menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-main-menu.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-monitoring-menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-monitoring-menu.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-reports-menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-reports-menu.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-services-menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-services-menu.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-system-information.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-system-information.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/frontend/ch02-users-menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch02-zabbix-installation/frontend/ch02-users-menu.png -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/host-groups.md: -------------------------------------------------------------------------------- 1 | # Host groups 2 | -------------------------------------------------------------------------------- /docs/ch02-zabbix-installation/user-groups.md: -------------------------------------------------------------------------------- 1 | # User groups 2 | -------------------------------------------------------------------------------- /docs/ch03-zabbix-proxies/active-passive-proxies/ch03-active-communication.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch03-zabbix-proxies/active-passive-proxies/ch03-active-communication.png -------------------------------------------------------------------------------- /docs/ch03-zabbix-proxies/active-passive-proxies/ch03-active-proxy-installed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch03-zabbix-proxies/active-passive-proxies/ch03-active-proxy-installed.png -------------------------------------------------------------------------------- /docs/ch03-zabbix-proxies/active-passive-proxies/ch03-add-active-proxy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch03-zabbix-proxies/active-passive-proxies/ch03-add-active-proxy.png -------------------------------------------------------------------------------- /docs/ch03-zabbix-proxies/active-passive-proxies/ch03-new-active-proxy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch03-zabbix-proxies/active-passive-proxies/ch03-new-active-proxy.png -------------------------------------------------------------------------------- /docs/ch03-zabbix-proxies/active-passive-proxies/ch03-new-passive-proxy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch03-zabbix-proxies/active-passive-proxies/ch03-new-passive-proxy.png -------------------------------------------------------------------------------- /docs/ch03-zabbix-proxies/active-passive-proxies/ch03-passive-communication.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch03-zabbix-proxies/active-passive-proxies/ch03-passive-communication.png -------------------------------------------------------------------------------- /docs/ch03-zabbix-proxies/active-passive-proxies/ch03-passive-not-working.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch03-zabbix-proxies/active-passive-proxies/ch03-passive-not-working.png -------------------------------------------------------------------------------- /docs/ch03-zabbix-proxies/active-passive-proxies/ch03-passive-working.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch03-zabbix-proxies/active-passive-proxies/ch03-passive-working.png -------------------------------------------------------------------------------- /docs/ch03-zabbix-proxies/chapter.md: -------------------------------------------------------------------------------- 1 | # Proxies and the Web services component 2 | 3 | Proxies are often regarded as an advanced topic in Zabbix, but in reality, 4 | they are a fundamental part of many installations and one of the first components 5 | we set up for numerous customers. In this chapter, we'll make proxies the third 6 | subject we cover, encouraging you to consider them from the very beginning of your 7 | Zabbix journey. 8 | 9 | We'll start with a basic proxy setup, providing straightforward steps to get you 10 | up and running quickly. Then, we'll take a deep dive into the mechanics of proxies 11 | how they operate within the Zabbix ecosystem, their benefits, and the critical 12 | role they play in distributing monitoring load and enhancing system scalability. 13 | 14 | Understanding proxies from the start can significantly improve your architecture, 15 | especially in distributed or large scale environments. Whether you're new to Zabbix 16 | or looking to refine your existing setup, this chapter will offer valuable insights 17 | into why proxies should be an integral part of your monitoring strategy from the start. 18 | 19 | By the end, you'll not only know how to set up a basic proxy but also have a clear 20 | understanding of their underlying workings and strategic advantages, 21 | ensuring you make informed decisions as you scale your Zabbix installation. 22 | -------------------------------------------------------------------------------- /docs/ch03-zabbix-proxies/proxy-basics.md: -------------------------------------------------------------------------------- 1 | # Proxy basics 2 | 3 | In this chapter we will cover the basic needs for our proxies. We won't pay 4 | attention to active or passive proxies yet this is something we cover later 5 | in the next chapters. 6 | 7 | ## Proxy requirements 8 | If you like to setup a few proxies for test or in your environment you will need 9 | a few Linux hosts to install the Proxies on. Proxies are also available in containers 10 | so a full VM is not needed. However here we will use a VM so we can show you how to 11 | install a proxy. Don't worry we will cover containers as well. When it comes to 12 | proxies they are very lightweight however since Zabbix 4.2 Proxies are able to 13 | do Item value preprocessing and this can use a lot of CPU power. So the number 14 | of CPUs and memory will depends on how many machines you will monitor and how many 15 | preprocessing rules you have on your hosts. 16 | 17 | So in short a Zabbix proxy can be used to: 18 | 19 | - Monitor remote locations 20 | - Monitor locations that have unreliable connections 21 | - Offload the Zabbix server when monitoring thousands of devices 22 | - Simplify the maintenance and management 23 | 24 | 25 | ???+ note 26 | Imagine that you need to restart your Zabbix server and that all proxies start 27 | to push the data they have gathered during the downtime of the Zabbix server. 28 | This would create a huge amount of data being sent at once to the Zabbix server 29 | and bring it to its knees in no time. Since Zabbix 6 Zabbix has added protection 30 | for overload. When Zabbix server history cache is full the history cache write 31 | access is being throttled. Zabbix server will stop accepting data from proxies 32 | when history cache usage reaches 80%. Instead those proxies will be put on a 33 | throttling list. This will continue until the cache usage falls down to 60%. 34 | Now server will start accepting data from proxies one by one, defined by the 35 | throttling list. This means the first proxy that attempted to upload data during 36 | the throttling period will be served first and until it's done the server will 37 | not accept data from other proxies. 38 | 39 | This table gives you an overview of how and when throttling works in Zabbix. 40 | 41 | |History write cache usage | Zabbix server mode | Zabbix server action | 42 | |---- |---- |---- | 43 | |Reaches 80% |Wait |Stops accepting proxy data, but maintains a throttling list (prioritized list of proxies to be contacted later).| 44 | |Drops to 60% |Throttled |Starts processing throttling list, but still not accepting proxy data. | 45 | |Drops to 20% |Normal |Drops the throttling list and starts accepting proxy data normally.| 46 | 47 | 48 | ### Active versus Passive proxy 49 | 50 | Zabbix proxies have been available since Zabbix 1.6, at that time they where available 51 | only as what we know today as `Active proxies`. Active means that the proxy will 52 | initiate the connection by itself to the Zabbix Server. Since version 1.8.3 passive 53 | proxies where introduced. This allowed the server to connect to the proxy. As mentioned 54 | before Zabbix agents can be both active and passive however proxies cannot be both 55 | so we have to choose the way of the communication when we install a proxy. Just 56 | remember that choosing the proxy mode `active` or `passive` has no impact on how 57 | Zabbix agents can communicate with our proxy. It's perfectly fine to have an `active proxy` 58 | and a `passive agent` working together. 59 | 60 | ### Active proxy 61 | 62 | A proxy in active mode will be the one in control of all the settings like the when it looks 63 | for new configuration changes and pushes new data to the server. 64 | In a standard setup the active proxy will sent it's data every second to the `Zabbix server` 65 | reload it's config every 10 seconds. 66 | 67 | The most important options for an active proxy that we need to remember are changed 68 | in the `Zabbix proxy` configuration file only. 69 | 70 | - **ProxyMode:** 0 71 | - **Server:** IP or DNS of the Zabbix server 72 | - **Hostname:** Proxy name this needs to be exact the same as configured in the 73 | frontend. 74 | - **ProxyOfflineBuffer:** How long we like to keep data in the DB (in hours) if 75 | we can' contact the `Zabbix server`. 76 | - **ProxyLocalBuffer:** How long we like to keep data in the DB (in hours) even 77 | we have sent it already to the `Zabbix server`. 78 | - **ProxyConfigFrequency:** Replaces ConfigFrequency and defines how often we 79 | request configuration updates (every 10 seconds) from the `Zabbix server`. 80 | - **DataSenderFrequency: How often data is sent to `Zabbix server` (every second)** 81 | 82 | When it comes to configuring the needed resources for the `Active proxy` we have 83 | to realise that the proxy can use up to 2 trapper items on the `Zabbix server` 84 | when it tries to connect. One will be used to sent the actual data and the other trapper 85 | will be used to retrieve new configuration changes. So it's best practice to configure 86 | 2 trappers per `Active proxy` on the server side. 87 | 88 | ![Active proxy communication](ch03-active-communication.png) 89 | 90 | *3.1 Active proxy communication* 91 | 92 | ???+ info 93 | Before Zabbix 7.0 a proxy would reload it's configuration once every 3600 94 | seconds. This has been changed since Zabbix 7.0 as they way proxies handle 95 | updates have been optimized. 96 | 97 | ???+ warning 98 | Before you continue with the setup of your active or passive proxy make sure 99 | your OS is properly configure like explained in our chapter `Getting Started` 100 | => `System Requirements`. As it's very important to have your firewall and 101 | time server properly configured. 102 | 103 | ### Passive proxy 104 | 105 | A proxy in passive mode will have all settings controlled by the `Zabbix server`. 106 | 107 | The most important options for a passive proxy that we need to remember are changed 108 | in the `Zabbix server` configuration file and the `Zabbix proxy` as it is the server 109 | that controls when and how proxy data is requested by making use of pollers. 110 | 111 | The most important setting we can find back in the `proxy` configuration file are : 112 | 113 | - **ProxyMode:**1 (passive) 114 | - **Server:** IP or DNS of the `Zabbix server` 115 | - **ProxyLocalBuffer:** How long we like to keep data in the DB (in hours) even 116 | we have sent it already to the `Zabbix server`. 117 | - **ProxyLocalBuffer:** How long we like to keep data in the DB (in hours) even 118 | we have sent it already to the `Zabbix server`. 119 | 120 | And finally the config settings we need to change on our `Zabbix server`: 121 | 122 | - **StartProxyPollers:** The number of pollers to contact proxies 123 | - **ProxyConfigFrequency:** Replaces ConfigFrequency and defines how often `Zabbix server` 124 | will sent configuration changes to our proxies. 125 | - **ProxyDataFrequency:** How often `Zabbix server` will request data from our proxies. 126 | 127 | ![Passive proxy communication](ch03-passive-communication.png) 128 | 129 | *3.2 Passive proxy communication* 130 | 131 | ### Proxy configuration changes 132 | 133 | Before Zabbix 7.0, a full configuration synchronization was performed by proxies every 134 | 3600 seconds (1 hour) by default. With the introduction of Zabbix 7.0, this behavior 135 | changed significantly. Now, configuration synchronization occurs much more frequently, 136 | every 10 seconds by default, but it's an incremental update. This means that instead 137 | of transferring the entire configuration, only the modified entities are synchronized, 138 | greatly improving efficiency and reducing network overhead. 139 | 140 | Upon initial proxy startup, a full configuration synchronization is still performed. 141 | Subsequently, both the server and the proxy maintain a revision of the configuration. 142 | When a change is made on the server, only the differences, based on these revision 143 | numbers, are applied to the proxy's configuration, rather than a complete replacement 144 | of the entire configuration as in older versions. This incremental approach allows 145 | for near real-time propagation of configuration changes while minimizing resource 146 | consumption. 147 | 148 | ### Proxy runtime control options 149 | 150 | Just like the `Zabbix server` our proxy supports runtime control options always 151 | check latest options with the --help option. But here is a short overview of 152 | options available to use. 153 | 154 | - zabbix_proxy --runtime-control housekeeper_execute 155 | - zabbix_proxy --runtime-control log_level_increase=target 156 | - zabbix_proxy --runtime-control log_level_decrease=target 157 | - zabbix_proxy --runtime-control snmp_cache_reload 158 | - zabbix_proxy --runtime-control diaginfo=section 159 | 160 | ### Proxy firewall 161 | 162 | Our proxies work like small `Zabbix servers` so when it comes to the ports to connect to 163 | agents, SNMP, ... nothing changes all ports need to be configured same as on your server. 164 | 165 | When it comes to port for the proxy it depends on our proxy being `active` or `passive`. 166 | 167 | - **Active Proxy:** Zabbix server needs to have port `10051/tcp` open so proxy can connect. 168 | - **Passive Proxy:** Needs to have port `10051/tcp` open on the proxy so that the 169 | `server` can connect to the proxy. 170 | 171 | 172 | -------------------------------------------------------------------------------- /docs/ch03-zabbix-proxies/proxy-groups.md: -------------------------------------------------------------------------------- 1 | # proxy groups 2 | -------------------------------------------------------------------------------- /docs/ch03-zabbix-proxies/web-services.md: -------------------------------------------------------------------------------- 1 | # Web services 2 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/browser.md: -------------------------------------------------------------------------------- 1 | # Browser item 2 | 3 | ## Conclusion 4 | 5 | ## Questions 6 | 7 | ## Useful URLs 8 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/calculated.md: -------------------------------------------------------------------------------- 1 | # Calculated items 2 | 3 | ## Conclusion 4 | 5 | ## Questions 6 | 7 | ## Useful URLs 8 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/chapter.md: -------------------------------------------------------------------------------- 1 | # Collecting data with your Zabbix environment 2 | 3 | In this chapter, we'll take a **detailed journey through Zabbix data flow**, 4 | showing how to progress from an empty setup to a fully functioning system capable 5 | of sending timely notifications. We’ll break down each step, giving you a clear 6 | understanding of how data moves through Zabbix. 7 | 8 | We'll then explore the **various protocols** used in Zabbix, how they function, 9 | their compatibility with different components, and how to configure them effectively. 10 | This will provide you with a comprehensive overview of the communication backbone 11 | that powers Zabbix monitoring capabilities. 12 | 13 | Next, we'll cover the essentials like **hosts, host groups, host interfaces**, 14 | and **items**, ensuring you understand their roles and how to set them up correctly. 15 | 16 | For now, we'll hold off on **custom scripts and external check items**, focusing 17 | instead on the core elements. When we touch on **active agents**, we'll reference 18 | the chapter on auto-registration, guiding you to more detailed discussions on 19 | that topic later. 20 | 21 | By the end of this chapter, you'll have a strong grasp of Zabbix data flow and 22 | the protocols that enable seamless monitoring and notifications, preparing you 23 | for more advanced configurations and integrations. 24 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/database-agent.md: -------------------------------------------------------------------------------- 1 | # Database checks via agent 2 | 3 | ## Conclusion 4 | 5 | ## Questions 6 | 7 | ## Useful URLs 8 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/database-odbc.md: -------------------------------------------------------------------------------- 1 | # Database checks via odbc 2 | 3 | ## Conclusion 4 | 5 | ## Questions 6 | 7 | ## Useful URLs 8 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/datacollection/ch04.1-dataflow-basic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch04-zabbix-collecting-data/datacollection/ch04.1-dataflow-basic.png -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/datacollection/ch04.2-dataflow-detailed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch04-zabbix-collecting-data/datacollection/ch04.2-dataflow-detailed.png -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/datacollection/ch04.3-empty-host-creation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch04-zabbix-collecting-data/datacollection/ch04.3-empty-host-creation.png -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/datacollection/ch04.4-host-creation-new-group.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch04-zabbix-collecting-data/datacollection/ch04.4-host-creation-new-group.png -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/datacollection/ch04.5-empty-item-creation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch04-zabbix-collecting-data/datacollection/ch04.5-empty-item-creation.png -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/datacollection/ch04.6-latest-data-memcpu-sorting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch04-zabbix-collecting-data/datacollection/ch04.6-latest-data-memcpu-sorting.png -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/datacollection/ch04.7-icmpping-item.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch04-zabbix-collecting-data/datacollection/ch04.7-icmpping-item.png -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/datacollection/ch04.8-icmpping-item-tags.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch04-zabbix-collecting-data/datacollection/ch04.8-icmpping-item-tags.png -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/dataflow.md: -------------------------------------------------------------------------------- 1 | # Dataflow 2 | The Zabbix dataflow is a concept that is meant to guide us through the various different 3 | stages of building up our monitoring system. In the end, when building a Zabbix 4 | environment we want to achieve a few things: 5 | 6 | - **Collected metrics** are stored, can be easily found and are visualised 7 | - **Problems** are created from our data and shown in the frontend 8 | - **We take action** on important problems by sending a message or executing commands 9 | 10 | Those three parts of the Zabbix dataflow in our Zabbix environment can be easily 11 | identified as: 12 | 13 | - **Items** 14 | - **Triggers** 15 | - **Actions** 16 | 17 | But when we look at `Items` specifically, it's also possible to alter our data before 18 | storing the metrics in Zabbix. This is something we do with a process called pre-processing, 19 | which will take the collected data and change it before storing it in the Zabbix database. 20 | Our dataflow in the end then looks as such: 21 | 22 | ![Basic dataflow](ch04.1-dataflow-basic.png){ align=left } 23 | *4.1 Zabbix basic dataflow* 24 | 25 | This gives us a very basic understanding of what steps we have to go through in 26 | Zabbix to get from data being collected to alerts being sent out. Very important 27 | to us Zabbix administrators, as we need to go through these steps each time we want 28 | to end up with a certain type of monitoring. 29 | 30 | But, now that we have identified what parts to look at, let's dive a bit deeper 31 | into what each of those parts does. Logically, that would start with `Items` looking 32 | at the image above. But before we can start discussing `Items` there is another 33 | concept we need to understand. 34 | 35 | ## Hosts 36 | To create `Items` in Zabbix, we first need to create `Hosts`. A `host` is nothing 37 | more than a container (not the Docker kind), it's something that contains `Items`, 38 | `Triggers`, `graphs`, `Low Level Discovery` rules and `Web scenarios`. All of these 39 | various different entities are contained within our **Hosts**. 40 | 41 | Often times, Zabbix users and administrators make the misconception here that a 42 | *`host`* always represents a physical or virtualised host. But in the end, hosts 43 | are nothing more than a representation of a `monitoring target`. A monitoring 44 | target is something we want to monitor. This can be a server in your datacenter, 45 | a virtual machine on your hypervisor, a Docker container or even just a website. 46 | Everything you want to monitor in Zabbix will need a host and the host will then 47 | contain your monitoring configuration on its entities. 48 | 49 | ## Items 50 | `Items` in Zabbix are Metrics. One `Item` is usually a single metric we'd like to 51 | collect, with the exception being bulk metric collection which we will discuss 52 | later on in the book. When we want to create our `Items` we can do this on a host 53 | and we can actually create an unlimited amount of `Items` on a host. 54 | 55 | ### Preprocessing 56 | But we cannot stop there with `Items` just yet, as we also mentioned an additional 57 | part of our dataflow. It is possible to change the collected metric on an item before 58 | storing it into the Zabbix database. We do this with a process called preprocessing. 59 | 60 | Preprocessing is something we add onto our items when creating the configuration 61 | of such items. It is a part of the item, but not mandatory on every single item. 62 | 63 | General rule: 64 | 65 | - Collect metric and store as-is in the database? **No preprocessing** 66 | - Collect metric and change before storing in the database? **Add preprocessing** 67 | 68 | We will discuss this in more detail later on in the book as well. 69 | 70 | ## Triggers 71 | With all of the collected metrics, we can now also start to create triggers if we 72 | would want to. A trigger is Zabbix is nothing more than a bit of configuration on 73 | our host, which we will use to define thresholds using metrics collected on items. 74 | 75 | A trigger can be setup to use the data collected on an item in a logical expression. 76 | This logical expression will define the threshold and when data is received on the 77 | item(s) used in the logical expression the trigger can go or stay in on of two states: 78 | 79 | - **PROBLEM**: When the logical expression is TRUE 80 | - **OK**: When the logical expression is FALSE 81 | 82 | This is how we define if our data is in a good or a bad state. 83 | 84 | ### Events 85 | When we discuss triggers however, we cannot skip past the Events. Whenever a trigger 86 | changes state, for example it was in OK state and goes into the PROBLEM state, then 87 | Zabbix will create a new Event. There's three types of these events created by our 88 | triggers: 89 | 90 | - **Problem event**: When the trigger goes from OK to PROBLEM 91 | - **Problem resolution event**: When the trigger goes from PROBLEM to OK 92 | - **Problem update event**: When someone manually updates a problem 93 | 94 | These problem events are what you will see in the frontend when you navigate to 95 | `Monitoring` | `Problems`, but they are also very important in the next step in 96 | the Zabbix dataflow `Actions`. 97 | 98 | ## Actions 99 | Actions are the last step in our Zabbix dataflow and they are kind of split into 100 | two parts. An action consists of `Conditions` and `Operations`. This is going to 101 | be important in making sure the action executes on the right time (conditions) 102 | and executes the right activity (operations). 103 | 104 | What happens is, whenever a problem event in Zabbix is created it is sent to every 105 | single problem action in our Zabbix environment. All of these action will then 106 | check the event details like what host did it come from, with which severity, when 107 | did it start, which tags are present. These event details are then checked against 108 | the action conditions and only when the conditions match will the operations be executed. 109 | The operation can then be something like, send a message to Microsoft Teams or 110 | Telegram. But an operation could also be, execute the reboot command on this host. 111 | 112 | As you can imagine, the conditions will be very important to make sure that operation 113 | on that action are only executed when we specifically want it to. We do not want to 114 | for example reboot a host without the right problem being first detected. 115 | 116 | ## Conclusion 117 | 118 | To summarize, all the steps in the dataflow work together to make sure that you can 119 | build the perfect Zabbix environment. When we put the entire dataflow together it 120 | looks like the image below. 121 | 122 | ![Detailed dataflow](ch04.2-dataflow-detailed.png){ align=left } 123 | *4.2 Zabbix detailed dataflow* 124 | 125 | Here we can see the various steps coming together. 126 | 127 | - We have our `Hosts` container our `Items` and `Triggers`. 128 | - Our `Items` are collecting metrics 129 | - The `Triggers` are using data from `Items` to detected problems and create problem `Events`. 130 | - If a problem `Event` matches the *Conditions* on an `Action` the *Operations* can be executed 131 | 132 | Important to note here is that if an item is collecting metrics, it doesn't necessarily 133 | need to have a trigger attached to it. The trigger expression is a separate configuration 134 | where we can choose which items we want to define thresholds on. In the end, not 135 | ever item needs to start creating problems. We can also see that we can use several 136 | items or event several items from different hosts in a single trigger. 137 | 138 | The same is the case for our events. Not every event will match the conditions on 139 | an action. In practice, this means that some problems will only show up in your 140 | Zabbix frontend, while other might go on to send you an alert message or even execute 141 | commands or scripts. A single event can also match the conditions on multiple actions, 142 | since we mentioned that all events are always send to all action for evaluation. 143 | This can be useful, for example if you want to split you messaging and your script 144 | execution in different action to keep things organised. 145 | 146 | Now that we understand the various parts of our Zabbix dataflow we can dive deeper into creating the configuration for the steps in the dataflow. 147 | 148 | 149 | ## Questions 150 | 151 | ## Useful URLs 152 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/dependent.md: -------------------------------------------------------------------------------- 1 | # Dependent items 2 | 3 | ## Conclusion 4 | 5 | ## Questions 6 | 7 | ## Useful URLs 8 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/external-checks.md: -------------------------------------------------------------------------------- 1 | # External checks 2 | 3 | ## Conclusion 4 | 5 | ## Questions 6 | 7 | ## Useful URLs 8 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/host-interfaces.md: -------------------------------------------------------------------------------- 1 | # Host Interfaces 2 | As you might have noticed in the host creation window, there are also various other 3 | 4 | ### ZBX 5 | 6 | ### SNMP 7 | 8 | ### IPMI 9 | 10 | ### JMX 11 | 12 | ## Conclusion 13 | 14 | ## Questions 15 | 16 | ## Useful URLs 17 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/hosts.md: -------------------------------------------------------------------------------- 1 | # Hosts 2 | After reading the previous dataflow section, it is now clear we have to go through the 3 | dataflow steps to get from collecting data to sending out alerts. 4 | The first part of the dataflow is to create a host, so that is what we are now going to tackle 5 | in this part. 6 | 7 | ## Creating a host 8 | As we mentioned, Hosts in Zabbix are nothing more than a container (not the Docker kind). 9 | They contain our `Items`, `Triggers`, `graphs`, `Low Level Discovery` rules and `Web scenarios`. 10 | 11 | At this point, we should create our first monitoring host in Zabbix. Navigate to `Data collection` | `Hosts` 12 | and in the top right corner click on the `Create host` button. This will open up the following modal window: 13 | 14 | ![Host creation empty](ch04.3-empty-host-creation.png){ align=left } 15 | *4.3 Empty host creation window* 16 | 17 | There are a lot of fields we can fill in, but few are important to note here specifically. 18 | 19 | - **Host name** 20 | - **Host groups** 21 | 22 | These are the only two mandatory fields in the host creation window. If we fill these two, 23 | we can create our host. 24 | 25 | ### Host name 26 | The `Host name` is very important. It functions as both the technical name of the host we will 27 | use in various different locations, but it is also used as the `Visible name` by default. This 28 | means that we will work with this name to find through filters this host with its associated data. 29 | 30 | Make sure to select a host name that is short and descriptive. For example: 31 | 32 | - linux-srv01-prd 33 | - www.thezabbixbook.com 34 | - docker-container-42 35 | - db-srv10 - Website database 36 | 37 | The best practise is to keep the host name the same in Zabbix as it is configured on your 38 | monitoring target. The monitoring target, being whatever you are trying to monitor. 39 | Whether that is a physical or virtual server, a website, a database server or 40 | a specific database on that database server. Every host in Zabbix is a monitoring target, 41 | i.e. something you are trying to monitor. 42 | 43 | ### Visible name 44 | Now, we didn't mention it as it is not a mandatory field. Nevertheless, we need to discuss 45 | the `Visible name` field before we continue with the `Host groups`. Although not mandatory, 46 | as I mentioned, the `Host name` is automatically used as the visible name when not filled in. 47 | 48 | Many of us see a form style list and have the need to fill out everything there is to fill out. This 49 | should not be the case with forms like the host creation window in Zabbix. We are only trying to 50 | fill out everything we should be configuring. As such, since the visible name is not mandatory, I 51 | do not fill it out. Unless, there is an actual need to use the field. 52 | 53 | The visible name was added in Zabbix as the host name and visible name fields in Zabbix use 54 | different character encoding in the Zabbix database. 55 | 56 | `Host name` = `UTF8` and supports alphanumeric, dashes, underscores and spaces (not leading or trailing). 57 | `Visible name` = `UTF8_MB4` and supports special characters like `ç` and even emojis like `👀`. 58 | 59 | This is the main difference. When you want to use a local language for example you could do: 60 | 61 | `Host name` = `sherbimi-central` 62 | `Visible name` = `shërbimi-çentral` 63 | 64 | That way you keep your local language in the frontend, but the technical name doesn't include the 65 | special character. Keep in mind however, that this can create confusion. You now need to remember 66 | two different names for the same host. As such, visible names are only recommended when you really need 67 | them or if you are trying to work around something. Otherwise, there is not need to use them. 68 | 69 | ### Host groups 70 | In Chapter 02 of the book, we had a deep dive into setting up various different host groups to keep 71 | our Zabbix environment structured. When we create a host, we can now start using on of 72 | our created host groups. Keep in mind, to only add the host to the lowest level of the subgroups. For 73 | example when we have `Servers` and `Servers/Linux`, we will only add our host to `Servers/Linux`. 74 | 75 | It's also possible to create a host straight from the host creation window. To do so, 76 | simply start typing the host group name into the `Host groups` field and it will ask you if 77 | you want to create the host group. 78 | 79 | ![Host creation - new host group](ch04.4-host-creation-new-group.png){ align=center } 80 | 81 | *4.4 Host creation - new host group* 82 | 83 | Let's add the host `simple-checks` in the `Linux/Servers` host group. 84 | 85 | 86 | ???+ note 87 | 88 | It's recommended to read the simple checks recipe from here, as it 89 | contains useful tips on creating good items. 90 | 91 | 92 | 93 | ## Conclusion 94 | 95 | ## Questions 96 | 97 | ## Useful URLs 98 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/http.md: -------------------------------------------------------------------------------- 1 | # Http 2 | 3 | 4 | ## Conclusion 5 | 6 | ## Questions 7 | 8 | ## Useful URLs 9 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/ipmi.md: -------------------------------------------------------------------------------- 1 | # IPMI 2 | 3 | ## Conclusion 4 | 5 | ## Questions 6 | 7 | ## Useful URLs 8 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/jmx.md: -------------------------------------------------------------------------------- 1 | # JMX 2 | 3 | ## Conclusion 4 | 5 | ## Questions 6 | 7 | ## Useful URLs 8 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/script.md: -------------------------------------------------------------------------------- 1 | # Script 2 | 3 | ## Conclusion 4 | 5 | ## Questions 6 | 7 | ## Useful URLs 8 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/simple-checks.md: -------------------------------------------------------------------------------- 1 | # Simple checks 2 | What would a Zabbix book be without setting up the actual monitoring itself, because in 3 | the end a monitoring system is all about collecting data through various different protocols. 4 | 5 | Simple checks are one (or actually several) of such protocols. Zabbix has a bunch of built-in 6 | checks we can do, executed from the Zabbix server or proxy towards our monitoring targets. The simple 7 | checks contain protocol checks such as `ICMP Ping`, `TCP/UDP` but also built in `VMware` monitoring. 8 | 9 | Without further ado, let's set up our first items. Please keep in mind that we will be building 10 | everything on a host level for now. Check out Chapter 06 to learn how to do this properly on a template. 11 | 12 | ## Building the item 13 | We shall start with a simple ICMP Ping check. If you haven't already, at `Data collection` | `Hosts` 14 | let's create the host `simple-checks` in the host group `Servers/Linux`. Then, for this 15 | new host navigate to `Items`. You should see a `Create item` button in the top right corner. Click 16 | on this button and lets have a look at the item creation modal popup window: 17 | 18 | ![Empty Item creation](ch04.5-empty-item-creation.png){ align=left } 19 | 20 | *4.5 Empty Item creation window* 21 | 22 | Make sure to change the `Type` to `Simple check` to get a similar result. We can see there are 23 | only two fields (that aren't selectors) mandatory. These, we have to fill in to make our 24 | item work. 25 | 26 | - **Name** 27 | - **Key** 28 | 29 | ### Item Name 30 | The `Item name` in Zabbix is a very important field for all of our items. This is going 31 | to be the first thing you see when looking for you configuration, but also the main identifier 32 | when you'll search the visualisation pages (like `Latest data`) for this item. 33 | 34 | Item names do not have to be unique (although it is recommended), as it will be 35 | the `Item key` that will make sure this item is distinguishable as a unique entity. So what is 36 | the best practise here? 37 | 38 | - **Item names should be short and descriptive** 39 | - **Item names should contain prefixes where useful** 40 | - **Item names should contain suffixes where useful** 41 | 42 | Some examples of good item names: 43 | - Use `Memory utilization` not `The memory util of this host`. Keep it short and descriptive 44 | - Use `CPU load` or if you have multiple use a suffix `CPU load 1m` and 45 | `CPU load 5m` for example 46 | - Use prefixes like `Interface eth0: Bits incoming` and 47 | `Interface eth1: Bits incoming` for similar items on different entities 48 | 49 | Using those techniques, we can create items that are easy to find and most importantly that 50 | your Zabbix users will want to read. After all, you can count on IT engineers to not read well, 51 | especially in a troubleshooting while everything is down scenario. Keeping things simple will 52 | also make sure your monitoring system will be a pleasure to be used or at least people won't 53 | avoid using your monitoring. 54 | 55 | My final and favourite tip is: **Remember: Zabbix uses alphabetical sorting in a lot of places**. Why 56 | is this important, well let's look at the `Monitoring` | `Latest data` page with a host using a 57 | default template: 58 | 59 | ![MEM-CPU sorting](ch04.6-latest-data-memcpu-sorting.png){ align=left } 60 | *4.5 Latest data Memory and CPU items sorting* 61 | 62 | If this template had used CPU and Memory as a prefix for all respective items. Then this page 63 | would have nicely sorted them together. While right now, there are CPU items right between the 64 | memory related items. It creates a bit of a mess, making Zabbix harder to read. 65 | 66 | If you want to spend (waste?) 30 minutes of your time hearing all about sorting data in various 67 | different places in Zabbix. The following video is highly recommended: https://www.youtube.com/watch?v=5etxbNPrygU 68 | 69 | 70 | ### Item Key 71 | Next up is the item key, an important part of setting up your Zabbix item as it will serve as 72 | the uniqueness criteria for the creation of this entity. There are two types of item keys: 73 | 74 | - **Built in** 75 | - **User defined** 76 | 77 | The built in item keys is what we will use to create our simple check in a while. The user defined 78 | item key is what we will use on items types like `SNMP` and `Script`. The main difference is that 79 | built in item keys are defined by Zabbix and attach to a specific monitoring function. The user defined 80 | item keys are just there to serve as the uniqueness criteria, while a different field in the item form 81 | will determine the monitoring function. 82 | 83 | Item keys can also be of a `Flexible` or `Non-flexible` kind. Flexible meaning the item key accepts 84 | parameters. These parameters change the function of the built-in item keys and also count as part 85 | of the uniqueness of the item keys. For example: 86 | 87 | - **agent.version** a `Zabbix agent` item key doesn't accept parameters and only serves one purpose. To 88 | get the version of the Zabbix agent installed. 89 | - **net.tcp.service[service,,]** a `Simple check` item key that accepts 3 parameters, 90 | each parameter divided by a comma(`,`). Optional parameters are marked by the `<>` signs, whereas 91 | mandatory parameters have no pre/suffix. 92 | 93 | 94 | ### ICMP Ping 95 | With all of this in mind, let's finish the creation our ICMP Ping item. First, we will give our 96 | new item a name. Since this is a simple ICMP Ping to the host lets go for: 97 | 98 | - **Name** = `ICMP Ping` 99 | 100 | For the key, we will have to use the built-in key 101 | `icmpping[,,,,,]`. This key accepts 6 parameters, all 102 | of which are optional. However, when we do not select an interface on an `icmpping` item, we 103 | need to fill in at least `icmpping[]` for it to work. Normally `imcpping` can use the interface 104 | IP or DNS, but since we will discuss the `Host interfaces` later in this chapter, let's use 105 | the parameter instead. 106 | 107 | - **Key** = `icmpping[127.0.0.1]` 108 | 109 | The item will now look like this: 110 | 111 | ![ICMP Ping item](ch04.7-icmpping-item.png){ align=center } 112 | *4.7 ICMP Ping item* 113 | 114 | It's also best practise to add a tag with the name `component` to every item we create. Let's switch 115 | to the `Tags` tab on the item creation window, and create the tag `component:system`. 116 | 117 | ![ICMP Ping item tags](ch04.8-icmpping-item-tags.png){ align=center } 118 | *4.8 ICMP Ping item tags* 119 | 120 | Zabbix utilises the fping utility, installed on the Zabbix server and/or proxy, to execute 121 | ICMP Ping checks. By default, Zabbix adds a repository containing the tool and installs 122 | the dependency. If you have a slightly different setup, make sure this utility is installed 123 | on your system and that the following two parameters are configured in the 124 | Zabbix server/proxy configuration file: 125 | 126 | !!! info "create mariadb repository" 127 | 128 | 129 | ``` FpingLocation=/usr/sbin/fping 130 | 131 | Fping6Location=/usr/sbin/fping6 132 | ``` 133 | 134 | ## TCP/UDP Ports 135 | Another useful simple check you can create is the TCP (and UDP) port check. With these 4 item keys 136 | we can monitor the availability and performance of TCP and UDP ports. There are 4 built-in keys 137 | available for these checks: 138 | 139 | - **net.tcp.service[service,,]** 140 | - **net.tcp.service.perf[service,,]** 141 | - **net.udp.service[service,,]** 142 | - **net.udp.service.perf[service,,]** 143 | 144 | Granted, the `net.udp.service` item keys only monitor the availability and performance of the NTP 145 | protocol due to the "take it our leave it" nature of UDP. But, the `net.tcp.service` item keys are 146 | useful for monitoring every single TCP port available. 147 | 148 | We fill in the `service` parameter with `tcp` and the we use `ip` (or a host interface) and `port` 149 | to define which TCP port to check. Zabbix will connect to the port and tell us the up/down status 150 | or the connection speed if we use `net.tcp.service.perf`. If we fill in the `service` parameter with 151 | `ssh, ldap, smtp, ftp, pop, nntp, imap, tcp, https, telnet` it will use the correct (default) port 152 | automatically, as well as do an additional check to make sure the port is actually being used by that service. -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/snmp-polling.md: -------------------------------------------------------------------------------- 1 | # SNMP Polling 2 | 3 | ## Conclusion 4 | 5 | ## Questions 6 | 7 | ## Useful URLs 8 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/snmp-trapping.md: -------------------------------------------------------------------------------- 1 | # SNMP Trapping 2 | 3 | ## Conclusion 4 | 5 | ## Questions 6 | 7 | ## Useful URLs 8 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/ssh-telnet.md: -------------------------------------------------------------------------------- 1 | # SSH Telnet 2 | 3 | ## Conclusion 4 | 5 | ## Questions 6 | 7 | ## Useful URLs 8 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/zabbix-agent-active.md: -------------------------------------------------------------------------------- 1 | # Zabbix Agent Active 2 | 3 | ## Conclusion 4 | 5 | ## Questions 6 | 7 | ## Useful URLs 8 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/zabbix-agent-passive.md: -------------------------------------------------------------------------------- 1 | # Zabbix Agent Passive 2 | 3 | ## Conclusion 4 | 5 | ## Questions 6 | 7 | ## Useful URLs 8 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/zabbix-internal.md: -------------------------------------------------------------------------------- 1 | # Zabbix Internals 2 | 3 | ## Conclusion 4 | 5 | ## Questions 6 | 7 | ## Useful URLs 8 | -------------------------------------------------------------------------------- /docs/ch04-zabbix-collecting-data/zabbix-trapper.md: -------------------------------------------------------------------------------- 1 | # Zabbix trapper 2 | 3 | ## Conclusion 4 | 5 | ## Questions 6 | 7 | ## Useful URLs 8 | -------------------------------------------------------------------------------- /docs/ch05-zabbix-triggers/advanced-triggers.md: -------------------------------------------------------------------------------- 1 | # Advanced triggers 2 | -------------------------------------------------------------------------------- /docs/ch05-zabbix-triggers/chapter.md: -------------------------------------------------------------------------------- 1 | # Setting up triggers 2 | 3 | In this chapter, we'll **explore triggers in depth**, starting with the basics 4 | of setting up step triggers and progressively moving into **advanced trigger configurations**. 5 | You'll gain a thorough understanding of how triggers work, ensuring you can leverage 6 | them effectively to monitor your infrastructure. 7 | 8 | We'll take a **deep dive into the mechanics of triggers**, examining how they evaluate 9 | conditions and generate alerts. This section will also address the important topic 10 | of **monitoring and alerting fatigue**, providing strategies to fine-tune your triggers 11 | to reduce unnecessary alerts while maintaining optimal system oversight. 12 | 13 | By the end, you'll have the knowledge to set up both simple and complex triggers, 14 | helping you maintain a well balanced monitoring system that minimizes noise and 15 | focuses on what truly matters. 16 | -------------------------------------------------------------------------------- /docs/ch05-zabbix-triggers/triggers.md: -------------------------------------------------------------------------------- 1 | # Triggers 2 | -------------------------------------------------------------------------------- /docs/ch06-zabbix-templates/chapter.md: -------------------------------------------------------------------------------- 1 | # Building and using templates 2 | 3 | A great way to guide users towards a **deeper understanding of Zabbix** is by 4 | initially holding off on templates and gradually introducing them much like in 5 | formal training. In this chapter, we'll start by explaining the **basic usage 6 | of default templates** and how to find new ones, helping you get up and running 7 | with minimal effort. 8 | 9 | Once you're comfortable with default templates, we’ll dive into **building your 10 | own templates**, offering detailed instructions on customization and best practices. 11 | We’ll also cover how to **share your templates** within the Zabbix community, 12 | fostering collaboration and knowledge exchange. 13 | 14 | To round off, we'll feature **Tags and Macros**, explaining their roles within 15 | templates and why they're most effective when understood in the context of 16 | template usage. This structured approach will ensure you grasp the full potential 17 | of templates and their associated features in Zabbix. 18 | 19 | By the end of this chapter, you'll be well versed in both using and creating templates, 20 | equipped to enhance your monitoring setup and contribute to the broader Zabbix ecosystem. 21 | -------------------------------------------------------------------------------- /docs/ch07-zabbix-alerts/chapter.md: -------------------------------------------------------------------------------- 1 | # Sending out alerts with Zabbix 2 | 3 | After delving into templates, it's time to **return to the data flow** and bring 4 | everything together by exploring integrations with powerful external services. 5 | In this chapter, we’ll **complete the data flow journey**, showing how to extend 6 | Zabbix capabilities through seamless connections with third-party tools 7 | and platforms. 8 | 9 | We'll guide you through setting up **integrations** that enhance your monitoring 10 | system, covering various use cases from alerting to data visualization and 11 | automation. By integrating Zabbix with external services, you'll unlock new 12 | levels of functionality, making your monitoring setup more dynamic and adaptable. 13 | 14 | By the end, you'll have a well-rounded understanding of how to fully utilize 15 | Zabbix data flow, augmented by strategic integrations that add value to your 16 | infrastructure management. 17 | -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/chapter.md: -------------------------------------------------------------------------------- 1 | # Using Low level discovery to automate 2 | 3 | In this chapter, we'll dive into **Low-Level Discovery (LLD)**, covering everything 4 | there is to know about this powerful feature in Zabbix. LLD automates the creation 5 | of hosts, items, triggers, and more, simplifying the management of large and 6 | dynamic environments. 7 | 8 | We'll also explain how to work with **custom JSON** in the context of LLD, showing 9 | you how to tailor discovery rules to fit your unique needs. By mastering these 10 | techniques, you'll be able to create highly adaptable monitoring setups that 11 | respond to changes in your infrastructure with minimal manual intervention. 12 | 13 | By the end of this chapter, you'll have a deep understanding of LLD, from basic 14 | concepts to advanced customization, enabling you to leverage its full potential 15 | in your Zabbix deployment. 16 | -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/custom-lld/lld-discovery-test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/custom-lld/lld-discovery-test.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/custom-lld/lld-item-create.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/custom-lld/lld-item-create.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/custom-lld/lld-override-operation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/custom-lld/lld-override-operation.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/custom-lld/lld-override.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/custom-lld/lld-override.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/custom-lld/lld-test-item.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/custom-lld/lld-test-item.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/custom-lld/lld-trigger.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/custom-lld/lld-trigger.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/custom-lld/lld-user-root-loggedin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/custom-lld/lld-user-root-loggedin.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/custom-lld/lld-users-override.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/custom-lld/lld-users-override.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/custom-lld/template-discovery-rule.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/custom-lld/template-discovery-rule.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/custom-lld/template-lld-users.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/custom-lld/template-lld-users.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-discovery.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-discovery.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-filter-macro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-filter-macro.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-filters.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-filters.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-host.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-host.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-latestdata-updated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-latestdata-updated.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-latestdata.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-latestdata.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-llditem.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-llditem.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-llditempreprocessing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-llditempreprocessing.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-lldmacro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-create-lldmacro.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-item.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-item.png -------------------------------------------------------------------------------- /docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-test-item.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch08-zabbix-lld/dependent lld/ch08-dependent-lld-test-item.png -------------------------------------------------------------------------------- /docs/ch09-zabbix-extending/chapter.md: -------------------------------------------------------------------------------- 1 | # Leveraging custom items for extending the Zabbix environment 2 | 3 | In this chapter, we'll take a **deep dive into extending Zabbix functionality** 4 | beyond its default item options. We'll cover the **script item**, **external checks**, 5 | **remote commands**, **user parameters**, and other advanced features that allow 6 | you to customize and expand your monitoring capabilities. 7 | 8 | You'll learn how to use these tools to **integrate custom logic**, monitor external 9 | applications, and automate tasks, making Zabbix an even more powerful and flexible 10 | solution tailored to your specific needs. 11 | 12 | By the end, you'll have the skills to push Zabbix beyond its default configuration, 13 | unlocking new possibilities for complex and unique monitoring scenarios. 14 | -------------------------------------------------------------------------------- /docs/ch09-zabbix-extending/scripts.md: -------------------------------------------------------------------------------- 1 | # Frontend Scripts 2 | 3 | So, you're diving into the world of Zabbix frontend scripts, and you're in for 4 | a treat! These little powerhouses unlock a whole new level of flexibility within 5 | your Zabbix environment. Imagine being able to trigger custom actions directly from 6 | your Zabbix interface – whether it's as an action operation responding to an alert, 7 | a manual intervention on a host, or a targeted response to a specific event. 8 | 9 | What's truly exciting is *where* you can weave these scripts into your daily Zabbix 10 | workflow. Picture adding custom menu items right within your **Hosts**, **Problems**, 11 | **Dashboards**, and even your **Maps** sections. This means the information and 12 | tools you need are always at your fingertips. 13 | 14 | Ultimately, frontend scripts empower you to extend Zabbix far beyond it's out-of-the-box 15 | capabilities. They provide that crucial extra layer of customization, allowing you 16 | to seamlessly integrate your own scripts and workflows directly into the Zabbix 17 | frontend. Get ready to harness this power and tailor Zabbix precisely to your needs! 18 | 19 | ## Creating a frontend scripts 20 | 21 | For this example, we'll work with a frontend script I developed that lets you put 22 | hosts in maintenance mode. This script makes it possible to add a convenient option 23 | in your GUI, allowing you to place hosts in maintenance with just a few clicks. 24 | You can download the script from my GitHub repository : 25 | 26 | [https://github.com/Trikke76/Zabbix/blob/master/maintenance/zabbix-maintenance.py](https://github.com/Trikke76/Zabbix/blob/master/maintenance/zabbix-maintenance.py) 27 | 28 | !!! info "Download this script and place it in `/usr/bin/` " 29 | ``` 30 | cd /usr/bin/ 31 | sudo dnf install wget -y 32 | wget https://raw.githubusercontent.com/Trikke76/Zabbix/refs/heads/master/maintenance/zabbix-maintenance.py -P /usr/bin/ 33 | chmod +x /usr/bin/zabbix-maintenance.py 34 | ``` 35 | Our Python script relies on an additional package that needs to be installed before 36 | running. Make sure you have this dependency set up on your system before executing the script. 37 | 38 | !!! info "install python3-requests" 39 | Red Hat 40 | ``` 41 | dnf install python3-requests 42 | ``` 43 | Ubuntu 44 | ``` 45 | sudo apt install python3-requests 46 | ``` 47 | 48 | ???+ note 49 | For the user you can use the user `Admin` or you can create a new user. but 50 | make sure this user has enough permissions to create a maintenance mode. 51 | It's best practice to create a dedicated user for this in production. 52 | 53 | Starting with Zabbix 7.2, token-based authentication is required when working with 54 | the API. Each user can create their own tokens, while the `Super admin` has management 55 | privileges over all tokens. 56 | 57 | To create a token for your Admin user: 58 | 59 | - Navigate to `User settings` 60 | - Select the `API tokens` sections 61 | 62 | ![User API](ch09-scripts-user.png) 63 | 64 | *9.1 User API* 65 | 66 | After selecting `API tokens` from the menu, you'll land on the `API tokens` page. 67 | Look for the `Create API` token button in the top right corner and click it to 68 | begin the creation process. 69 | 70 | ![Create API](ch09-create-api.png) 71 | 72 | *9.2 Create API page* 73 | 74 | A popup window will appear for creating your new API token. You'll need to provide 75 | a unique `Name` for your token. While there's an option to set an expiration date, 76 | we'll keep our token active indefinitely by leaving the time limit settings unchanged. 77 | 78 | ![New API token](ch09-new-api-token.png) 79 | 80 | *9.3 Create new API token* 81 | 82 | A confirmation popup will display your newly created API token, showing the `Auth token` 83 | string generated by Zabbix. Be sure to copy or write down this token immediately, 84 | as it will no longer be visible once you click `Close`. If you lose this token, 85 | you'll need to delete it and create a new one. There's no way to retrieve or view 86 | the token again through the interface. 87 | 88 | ![API Token Created](ch09-api-token-added.png) 89 | 90 | *9.4 Added API token* 91 | 92 | The next step is updating our script with the proper connection details. Edit the 93 | script and modify the variables to include your Zabbix server's correct URL and 94 | the token you just created. Pay attention to whether your server uses HTTP or HTTPS 95 | protocol. Be sure the URL in your script matches your actual server configuration. 96 | 97 | !!! info "Replace variables" 98 | ``` 99 | sudo vi /usr/bin/zabbix-maintenance.py 100 | ``` 101 | ``` 102 | ZABBIX_API_URL = "https://zabbix-url.be/api_jsonrpc.php" 103 | ZABBIX_API_TOKEN = "API TOKEN" 104 | ``` 105 | 106 | Now that our script is properly configured, we need to set it up in the Zabbix 107 | interface. From the main Zabbix menu, navigate to `Alerts` and then select `Scripts` 108 | from the dropdown to access the scripts configuration area. 109 | 110 | ![Alerts scripts menu](ch09-Alert-scripts-menu.png) 111 | 112 | *9.5 Scripts menu* 113 | 114 | You should already see a few existing script like `Ping`, `Traceroute`, .... that's 115 | normal those where created with the installation of Zabbix. Press the button `Create scripts` 116 | on the top right corner. A now form will popup where we will configure our maintenance 117 | script. Fill out the following fields: 118 | 119 | - *Name:* Create maintenance no data collection 120 | - *Scope* : Manual host action 121 | - *Menu path* : Maintenance 122 | - *Type* : Script 123 | - *Execute on* : Zabbix proxy or server 124 | - *Commands* : `/usr/bin/zabbix-maintenance.py create "{HOST.HOST}" {MANUALINPUT} no` 125 | 126 | At the bottom we have a tab `Advanced configuration` Click on this and extra configuration 127 | options will appear. 128 | 129 | As you probably noticed we used in our `Command` the macro `{MANUALINPUT}` this 130 | will be used to gather information from a user prompt. This allows us to ask 131 | the user to fill in the time he wants to place the host in maintenance. 132 | 133 | - *Enable user input* : yes 134 | - *Input prompt* : How many minutes do you want to place the host in maintenance ? 135 | - *Input type* : String (A dropdown box can also be used in case you have a list of options) 136 | - *Default string* : 60 (but we can use anything this will just be the default answer) 137 | - *Input validation rule* : `(\d+)` (our regex in perl to only allow digits) 138 | - *Enable confirmation* : yes 139 | - *Confirmation text* : Are you sure ? 140 | 141 | If everything went well you should end up with a similar looking page : 142 | 143 | ![Script form](ch09-script-form.png) 144 | 145 | *9.6 Script form* 146 | 147 | When your are ready press `Add` at the bottom of the form. Let's test our script 148 | to see if it works. 149 | 150 | ### Testing the frontend script 151 | 152 | In Zabbix go to the menu `Monitoring` => `Hosts` and click on the host `Zabbix server` 153 | and from the `scripts` menu select `Maintenance` and click on the sub Menu 154 | `Create maintenance no data collection`. You should see a popup asking you how 155 | many minutes you like to place the host in maintenance. 156 | 157 | ![Monitoring host](ch09-host-testing-script.png) 158 | 159 | *9.7 Create maintenance* 160 | 161 | When we click continue however we get a popup telling us that Zabbix cannot execute the script. 162 | 163 | ![error execute](ch09-error-execute-script.png) 164 | 165 | *9.8 Error executing script* 166 | 167 | This error is normal Zabbix has an option in the configuration file of the `Zabbix server` 168 | and the proxy that blocks the execution of global scripts. 169 | 170 | We get a notification that `Zabbix` cannot execute the script. The config file 171 | has an option to block global executions by default in the server or proxy config 172 | activate the option "EnableGlobalScripts=1". Go to the `Zabbix server` configuration 173 | file with you favourite editor and enable the parameter and restart the server service. 174 | 175 | 176 | If all goes well this time you will see a popup telling you it was successful this time. 177 | 178 | ![Maintenance ok](ch09-ok-execute-script.png) 179 | 180 | *9.9 Maintenance successful* 181 | 182 | When we look in our Zabbix menu under `Data collection` => `Maintenance` we can see 183 | that a new maintenance was created for our host with the time we had specified. 184 | This will allow us to create Maintenance windows for hosts from the frontend with 185 | only a few clicks. 186 | 187 | Even better we are now able to allow certain non `Admin` users to create `maintenance periods` 188 | for hosts without the need to give special access rights or create special profiles. 189 | We have in our config of our script the option to limit the use of this `frontend script` 190 | to certain `Host groups` and `User groups`. 191 | 192 | ???+ Tip 193 | You can now create the same script but add the option `yes` instead of `no` 194 | when it comes to data collection and you can also create a script to delete 195 | the maintenance period by just replacing `create` with `delete` and remove 196 | all options after "{HOST.HOST}". This way you are able to create `maintenance periods` 197 | and delete them when not needed anymore per host. 198 | 199 | 200 | 201 | 202 | 203 | ## Conclusion 204 | 205 | Congratulations! You've reached the end of this journey into Zabbix frontend scripts. 206 | By now, you should have a solid understanding of how to create, implement, and manage 207 | these tools to extend Zabbix's functionality. 208 | 209 | We've covered a lot of ground, from the initial steps of crafting your own scripts 210 | to seamlessly integrating them into the Zabbix frontend. You've learned how to gather 211 | user input to make your scripts more dynamic and versatile, and, crucially, how to 212 | configure user and host permissions to maintain a secure and controlled Zabbix environment. 213 | 214 | The ability to tailor Zabbix to your specific needs with frontend scripts is a 215 | significant advantage. It allows you to automate repetitive tasks, streamline workflows, 216 | and gain deeper insights into your infrastructure. Whether you're automating routine 217 | checks, creating custom dashboards, or integrating with external systems, the 218 | knowledge you've gained here will enable you to effectively leverage Zabbix. 219 | 220 | Remember, the examples and techniques presented in this book provide a foundation. 221 | The true power of Zabbix frontend scripts lies in their flexibility and your ability 222 | to adapt them to your specific needs. As you continue to explore and experiment, 223 | you'll discover new ways to enhance your monitoring capabilities and optimize 224 | your Zabbix setup. 225 | 226 | ## Questions 227 | 228 | - Why are Zabbix frontend scripts useful? 229 | - What are some ways Zabbix frontend scripts can help automate tasks? 230 | - Why is it important to configure user and host permissions when using Zabbix frontend scripts? 231 | 232 | ## Useful URLs 233 | 234 | - https://blog.zabbix.com/setting-up-manual-ticket-creation-using-zabbix-frontend-scripts/15550/ 235 | - https://www.zabbix.com/documentation/current/en/manual/web_interface/frontend_sections/administration/scripts 236 | - https://github.com/Trikke76/Zabbix/tree/master/maintenance 237 | 238 | 239 | -------------------------------------------------------------------------------- /docs/ch09-zabbix-extending/scripts/ch09-Alert-scripts-menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch09-zabbix-extending/scripts/ch09-Alert-scripts-menu.png -------------------------------------------------------------------------------- /docs/ch09-zabbix-extending/scripts/ch09-api-token-added.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch09-zabbix-extending/scripts/ch09-api-token-added.png -------------------------------------------------------------------------------- /docs/ch09-zabbix-extending/scripts/ch09-create-api.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch09-zabbix-extending/scripts/ch09-create-api.png -------------------------------------------------------------------------------- /docs/ch09-zabbix-extending/scripts/ch09-error-execute-script.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch09-zabbix-extending/scripts/ch09-error-execute-script.png -------------------------------------------------------------------------------- /docs/ch09-zabbix-extending/scripts/ch09-host-testing-script.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch09-zabbix-extending/scripts/ch09-host-testing-script.png -------------------------------------------------------------------------------- /docs/ch09-zabbix-extending/scripts/ch09-maintenance-created.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch09-zabbix-extending/scripts/ch09-maintenance-created.png -------------------------------------------------------------------------------- /docs/ch09-zabbix-extending/scripts/ch09-new-api-token.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch09-zabbix-extending/scripts/ch09-new-api-token.png -------------------------------------------------------------------------------- /docs/ch09-zabbix-extending/scripts/ch09-ok-execute-script.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch09-zabbix-extending/scripts/ch09-ok-execute-script.png -------------------------------------------------------------------------------- /docs/ch09-zabbix-extending/scripts/ch09-script-form.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch09-zabbix-extending/scripts/ch09-script-form.png -------------------------------------------------------------------------------- /docs/ch09-zabbix-extending/scripts/ch09-scripts-user.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/ch09-zabbix-extending/scripts/ch09-scripts-user.png -------------------------------------------------------------------------------- /docs/ch10-zabbix-discovery/chapter.md: -------------------------------------------------------------------------------- 1 | # Automating Your Monitoring with Auto Discovery and Active Agent Auto Registration 2 | 3 | In this chapter, we'll explore two powerful automation features in Zabbix: 4 | **auto discovery** and **active agent auto-registration**. These tools are essential 5 | for scaling your monitoring efforts by minimizing manual configuration and 6 | ensuring new devices and services are seamlessly integrated into your Zabbix 7 | environment. 8 | 9 | We'll begin with **auto discovery**, which enables Zabbix to automatically detect 10 | and monitor new hosts and services within your network. You'll learn how to 11 | configure discovery rules, actions, and conditions to automate the onboarding 12 | process, making your monitoring more dynamic and adaptive to changes in your 13 | infrastructure. 14 | 15 | Next, we'll dive into **active agent auto registration**, which simplifies the 16 | management of Zabbix agents, especially in large or rapidly changing environments. 17 | We'll cover how to set up auto-registration rules that allow agents to register 18 | themselves with the Zabbix server, reducing administrative overhead and ensuring 19 | all relevant data is captured efficiently. 20 | 21 | By the end of this chapter, you'll have a thorough understanding of how to leverage 22 | auto-discovery and auto-registration to create a more automated, scalable, and 23 | efficient monitoring system. 24 | -------------------------------------------------------------------------------- /docs/ch11-zabbix-visualisation/chapter.md: -------------------------------------------------------------------------------- 1 | # Graphs, Dashboards, Reports, Maps and other visualisation 2 | 3 | In this chapter, we delve into the heart of Zabbix's visualization capabilities, 4 | where data comes to life through intuitive and powerful visual tools. 5 | From dynamic graphs that track your system's performance to comprehensive dashboards 6 | that provide at-a-glance insights, Zabbix offers a rich set of visualization features 7 | to help you understand and manage your infrastructure. 8 | 9 | We'll start by exploring **graphs**, which allow you to monitor metrics over time, 10 | helping you spot trends and anomalies with ease. Next, we'll move on to **dashboards**, 11 | where you can aggregate multiple widgets into a single view for a more holistic 12 | understanding of your network's health. 13 | 14 | Then, we'll discuss **reports** an essential feature for summarizing and sharing 15 | insights with your team or stakeholders. 16 | Finally, we'll cover **maps**, a unique visualization tool that lets you create 17 | interactive representations of your network topology, making it easier to 18 | pinpoint issues and understand relationships between different components. 19 | 20 | By the end of this chapter, you'll have a comprehensive understanding of how to 21 | leverage Zabbix's visualization tools to monitor, analyse, and communicate the 22 | state of your IT environment effectively. 23 | Whether you're a seasoned administrator or just starting with Zabbix, mastering 24 | these visual tools will enhance your ability to manage complex infrastructures 25 | and ensure optimal performance. 26 | 27 | Let's dive into the world of Zabbix visualizations and unlock the full potential 28 | of your monitoring setup. 29 | -------------------------------------------------------------------------------- /docs/ch12-zabbix-api/chapter.md: -------------------------------------------------------------------------------- 1 | # Zabbix API 2 | 3 | The Zabbix API is a crucial part for anyone looking to expand the capabilities of their Zabbix environment, automate time-consuming tasks and get information for usage in other systems. In this chapter we will go over various of these capabilities to expand our knowledge of the Zabbix API. -------------------------------------------------------------------------------- /docs/ch13-zabbix-real-world-examples/chapter.md: -------------------------------------------------------------------------------- 1 | # Zabbix real world examples 2 | 3 | In this book we have learned a lot about our Zabbix environment, but most of it is building the foundation to start doing it on your own. From time to time you will encounter an implementation in a Zabbix environment that uses out of the box thinking or is just so simple you can't believe you never thought of it. 4 | 5 | This chapter aims to provide you a collection of interesting things people have built and things you absolutely have to know exist. -------------------------------------------------------------------------------- /docs/de/Guidelines.md: -------------------------------------------------------------------------------- 1 | # Guidelines 2 | 3 | ## How to contribute 4 | 5 | 6 | - Sign the [deed of 7 | transfer](https://www.thezabbixbook.com/files/form%20deed%20of%20transfer%20Book%20Zabbix.pdf) 8 | preferable electronically 9 | - Clone this project to your Github account 10 | - Clone the repository to you pc 11 | 12 | - Install the needed software for Mkdocs to work, check the file in the root 13 | folder how-to-install-mkdocs.md 14 | - Create a new branch to make your changes 15 | - git branch "" 16 | - git checkout "" 17 | - Make the changes you want and commit them 18 | - git add "files you changed" 19 | - git commit -m "add useful commit info" 20 | - Return back to the main branch 21 | - git checkout main 22 | - Make sure you have the latest changes merged from main 23 | - git pull origin main 24 | - Merge your branch into the main branch 25 | - git merge "" 26 | - git push 27 | - cleanup your branch 28 | - git branch -d "" 29 | - Create a pull requests so that we can merge it :) 30 | - Follow these 31 | [guidelines](https://github.com/penmasters/zabbix-book/how-to-rules-for-writing.md) 32 | when you write a topic. 33 | -------------------------------------------------------------------------------- /docs/de/ch01-zabbix-components/chapter.md: -------------------------------------------------------------------------------- 1 | # About us German 2 | -------------------------------------------------------------------------------- /docs/de/ch03-zabbix-proxies/chapter.md: -------------------------------------------------------------------------------- 1 | # proxies 2 | -------------------------------------------------------------------------------- /docs/de/index.md: -------------------------------------------------------------------------------- 1 | # Welcome 2 | 3 | This book is born from a simple desire: **to give back**. After years of working 4 | with Zabbix, and authoring previous many other publications about the platform, 5 | Patrik and Nathan felt a strong pull to share their knowledge in a way that was 6 | accessible to everyone. That's how the initial idea of a free, online Zabbix 7 | resource was conceived – **a community-driven project dedicated to empowering 8 | users**. 9 | 10 | As the online resource grew, so did the vision. We recognized the potential to 11 | create something even more impactful. This led to the formation of a foundation, 12 | dedicated to ensuring the long-term sustainability and growth of this community 13 | effort. This book, a tangible culmination of that vision, represents the next 14 | step. All profits generated from its sales will be reinvested back into the 15 | community, enabling us to further expand and enhance the resources and support 16 | we offer. This is more than just a book; it's a testament to the power of shared 17 | knowledge and a commitment to fostering a thriving Zabbix community." 18 | 19 | ## License 20 | 21 | Please note: The english version is the primary source document. Translations 22 | are provided for convenience, but this version is considered the most accurate. 23 | 24 | 25 | Please before you start take a look at our most updated license : 26 | [License](https://github.com/penmasters/zabbix-book/blob/main/readme.md) on 27 | Github. 28 | 29 | *The Zabbix Book* is a freely accessible resource designed to help users 30 | understand and master Zabbix. Contributions are highly encouraged to improve and 31 | expand its content. However, the book is distributed under the **Creative 32 | Commons Attribution-NonCommercial-ShareAlike 4.0 (CC BY-NC-SA 4.0)** license, 33 | meaning it is free for non-commercial use only. 34 | 35 | Contributors should be aware that: 36 | 37 | - By contributing to this work, you irrevocably assign and transfer all rights, 38 | title, and interest in your contributions to **The Monitoring Penmasters 39 | Foundation**, including any associated intellectual property rights, to the 40 | fullest extent permitted by law. 41 | - **The Monitoring Penmasters Foundation** reserves the right to use, reproduce, 42 | modify, distribute, and commercially exploit any contributed material in any 43 | form, including but not limited to the publication of physical and digital 44 | books. 45 | - All contributors must sign a **Deed of Transfer of Intellectual Property 46 | Rights** before making any contributions, ensuring the proper transfer of 47 | rights and handling of the content by **The Monitoring Penmasters 48 | Foundation**. Any contributions without a signed **Deed of Transfer of 49 | Intellectual Property Rights** cannot be accepted. 50 | - All profits generated will be used by The Monitoring Penmasters Foundation to 51 | cover operational expenses and to sponsor other open-source projects, as 52 | determined by the foundation. 53 | 54 | Your contributions are invaluable and will help make *The Zabbix Book* an even 55 | greater resource for the entire community! 56 | 57 | Shield: [![CC BY-NC-SA 4.0][cc-by-nc-sa-shield]][cc-by-nc-sa] 58 | 59 | [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International 60 | License][cc-by-nc-sa]. 61 | 62 | [![CC BY-NC-SA 4.0][cc-by-nc-sa-image]][cc-by-nc-sa] 63 | 64 | [cc-by-nc-sa]: http://creativecommons.org/licenses/by-nc-sa/4.0/ 65 | [cc-by-nc-sa-image]: https://licensebuttons.net/l/by-nc-sa/4.0/88x31.png 66 | [cc-by-nc-sa-shield]: 67 | https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg 68 | -------------------------------------------------------------------------------- /docs/es/Guidelines.md: -------------------------------------------------------------------------------- 1 | # Guidelines 2 | 3 | ## How to contribute 4 | 5 | 6 | - Sign the [deed of 7 | transfer](https://www.thezabbixbook.com/files/form%20deed%20of%20transfer%20Book%20Zabbix.pdf) 8 | preferable electronically 9 | - Clone this project to your Github account 10 | - Clone the repository to you pc 11 | 12 | - Install the needed software for Mkdocs to work, check the file in the root 13 | folder how-to-install-mkdocs.md 14 | - Create a new branch to make your changes 15 | - git branch "" 16 | - git checkout "" 17 | - Make the changes you want and commit them 18 | - git add "files you changed" 19 | - git commit -m "add useful commit info" 20 | - Return back to the main branch 21 | - git checkout main 22 | - Make sure you have the latest changes merged from main 23 | - git pull origin main 24 | - Merge your branch into the main branch 25 | - git merge "" 26 | - git push 27 | - cleanup your branch 28 | - git branch -d "" 29 | - Create a pull requests so that we can merge it :) 30 | - Follow these 31 | [guidelines](https://github.com/penmasters/zabbix-book/how-to-rules-for-writing.md) 32 | when you write a topic. 33 | -------------------------------------------------------------------------------- /docs/es/ch01-zabbix-components/chapter.md: -------------------------------------------------------------------------------- 1 | # About Us Spanish 2 | -------------------------------------------------------------------------------- /docs/es/index.md: -------------------------------------------------------------------------------- 1 | # Welcome 2 | 3 | This book is born from a simple desire: **to give back**. After years of working 4 | with Zabbix, and authoring previous many other publications about the platform, 5 | Patrik and Nathan felt a strong pull to share their knowledge in a way that was 6 | accessible to everyone. That's how the initial idea of a free, online Zabbix 7 | resource was conceived – **a community-driven project dedicated to empowering 8 | users**. 9 | 10 | As the online resource grew, so did the vision. We recognized the potential to 11 | create something even more impactful. This led to the formation of a foundation, 12 | dedicated to ensuring the long-term sustainability and growth of this community 13 | effort. This book, a tangible culmination of that vision, represents the next 14 | step. All profits generated from its sales will be reinvested back into the 15 | community, enabling us to further expand and enhance the resources and support 16 | we offer. This is more than just a book; it's a testament to the power of shared 17 | knowledge and a commitment to fostering a thriving Zabbix community." 18 | 19 | ## License 20 | 21 | Please note: The english version is the primary source document. Translations 22 | are provided for convenience, but this version is considered the most accurate. 23 | 24 | 25 | Please before you start take a look at our most updated license : 26 | [License](https://github.com/penmasters/zabbix-book/blob/main/readme.md) on 27 | Github. 28 | 29 | *The Zabbix Book* is a freely accessible resource designed to help users 30 | understand and master Zabbix. Contributions are highly encouraged to improve and 31 | expand its content. However, the book is distributed under the **Creative 32 | Commons Attribution-NonCommercial-ShareAlike 4.0 (CC BY-NC-SA 4.0)** license, 33 | meaning it is free for non-commercial use only. 34 | 35 | Contributors should be aware that: 36 | 37 | - By contributing to this work, you irrevocably assign and transfer all rights, 38 | title, and interest in your contributions to **The Monitoring Penmasters 39 | Foundation**, including any associated intellectual property rights, to the 40 | fullest extent permitted by law. 41 | - **The Monitoring Penmasters Foundation** reserves the right to use, reproduce, 42 | modify, distribute, and commercially exploit any contributed material in any 43 | form, including but not limited to the publication of physical and digital 44 | books. 45 | - All contributors must sign a **Deed of Transfer of Intellectual Property 46 | Rights** before making any contributions, ensuring the proper transfer of 47 | rights and handling of the content by **The Monitoring Penmasters 48 | Foundation**. Any contributions without a signed **Deed of Transfer of 49 | Intellectual Property Rights** cannot be accepted. 50 | - All profits generated will be used by The Monitoring Penmasters Foundation to 51 | cover operational expenses and to sponsor other open-source projects, as 52 | determined by the foundation. 53 | 54 | Your contributions are invaluable and will help make *The Zabbix Book* an even 55 | greater resource for the entire community! 56 | 57 | Shield: [![CC BY-NC-SA 4.0][cc-by-nc-sa-shield]][cc-by-nc-sa] 58 | 59 | [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International 60 | License][cc-by-nc-sa]. 61 | 62 | [![CC BY-NC-SA 4.0][cc-by-nc-sa-image]][cc-by-nc-sa] 63 | 64 | [cc-by-nc-sa]: http://creativecommons.org/licenses/by-nc-sa/4.0/ 65 | [cc-by-nc-sa-image]: https://licensebuttons.net/l/by-nc-sa/4.0/88x31.png 66 | [cc-by-nc-sa-shield]: 67 | https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg 68 | -------------------------------------------------------------------------------- /docs/files/form deed of transfer Book Zabbix.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/penmasters/zabbix-book/54f2cc44720bb5894c193248dfd574049bcfa263/docs/files/form deed of transfer Book Zabbix.pdf -------------------------------------------------------------------------------- /docs/fr/Guidelines.md: -------------------------------------------------------------------------------- 1 | # Guidelines 2 | 3 | ## How to contribute 4 | 5 | 6 | - Sign the [deed of 7 | transfer](https://www.thezabbixbook.com/files/form%20deed%20of%20transfer%20Book%20Zabbix.pdf) 8 | preferable electronically 9 | - Clone this project to your Github account 10 | - Clone the repository to you pc 11 | 12 | - Install the needed software for Mkdocs to work, check the file in the root 13 | folder how-to-install-mkdocs.md 14 | - Create a new branch to make your changes 15 | - git branch "" 16 | - git checkout "" 17 | - Make the changes you want and commit them 18 | - git add "files you changed" 19 | - git commit -m "add useful commit info" 20 | - Return back to the main branch 21 | - git checkout main 22 | - Make sure you have the latest changes merged from main 23 | - git pull origin main 24 | - Merge your branch into the main branch 25 | - git merge "" 26 | - git push 27 | - cleanup your branch 28 | - git branch -d "" 29 | - Create a pull requests so that we can merge it :) 30 | - Follow these 31 | [guidelines](https://github.com/penmasters/zabbix-book/how-to-rules-for-writing.md) 32 | when you write a topic. 33 | -------------------------------------------------------------------------------- /docs/fr/ch01-zabbix-components/chapter.md: -------------------------------------------------------------------------------- 1 | # French ch1 index 2 | -------------------------------------------------------------------------------- /docs/fr/ch03-zabbix-proxies/chapter.md: -------------------------------------------------------------------------------- 1 | # proxies 2 | -------------------------------------------------------------------------------- /docs/fr/index.md: -------------------------------------------------------------------------------- 1 | # Welcome 2 | 3 | This book is born from a simple desire: **to give back**. After years of working 4 | with Zabbix, and authoring previous many other publications about the platform, 5 | Patrik and Nathan felt a strong pull to share their knowledge in a way that was 6 | accessible to everyone. That's how the initial idea of a free, online Zabbix 7 | resource was conceived – **a community-driven project dedicated to empowering 8 | users**. 9 | 10 | As the online resource grew, so did the vision. We recognized the potential to 11 | create something even more impactful. This led to the formation of a foundation, 12 | dedicated to ensuring the long-term sustainability and growth of this community 13 | effort. This book, a tangible culmination of that vision, represents the next 14 | step. All profits generated from its sales will be reinvested back into the 15 | community, enabling us to further expand and enhance the resources and support 16 | we offer. This is more than just a book; it's a testament to the power of shared 17 | knowledge and a commitment to fostering a thriving Zabbix community." 18 | 19 | ## License 20 | 21 | Please note: The english version is the primary source document. Translations 22 | are provided for convenience, but this version is considered the most accurate. 23 | 24 | 25 | Please before you start take a look at our most updated license : 26 | [License](https://github.com/penmasters/zabbix-book/blob/main/readme.md) on 27 | Github. 28 | 29 | *The Zabbix Book* is a freely accessible resource designed to help users 30 | understand and master Zabbix. Contributions are highly encouraged to improve and 31 | expand its content. However, the book is distributed under the **Creative 32 | Commons Attribution-NonCommercial-ShareAlike 4.0 (CC BY-NC-SA 4.0)** license, 33 | meaning it is free for non-commercial use only. 34 | 35 | Contributors should be aware that: 36 | 37 | - By contributing to this work, you irrevocably assign and transfer all rights, 38 | title, and interest in your contributions to **The Monitoring Penmasters 39 | Foundation**, including any associated intellectual property rights, to the 40 | fullest extent permitted by law. 41 | - **The Monitoring Penmasters Foundation** reserves the right to use, reproduce, 42 | modify, distribute, and commercially exploit any contributed material in any 43 | form, including but not limited to the publication of physical and digital 44 | books. 45 | - All contributors must sign a **Deed of Transfer of Intellectual Property 46 | Rights** before making any contributions, ensuring the proper transfer of 47 | rights and handling of the content by **The Monitoring Penmasters 48 | Foundation**. Any contributions without a signed **Deed of Transfer of 49 | Intellectual Property Rights** cannot be accepted. 50 | - All profits generated will be used by The Monitoring Penmasters Foundation to 51 | cover operational expenses and to sponsor other open-source projects, as 52 | determined by the foundation. 53 | 54 | Your contributions are invaluable and will help make *The Zabbix Book* an even 55 | greater resource for the entire community! 56 | 57 | Shield: [![CC BY-NC-SA 4.0][cc-by-nc-sa-shield]][cc-by-nc-sa] 58 | 59 | [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International 60 | License][cc-by-nc-sa]. 61 | 62 | [![CC BY-NC-SA 4.0][cc-by-nc-sa-image]][cc-by-nc-sa] 63 | 64 | [cc-by-nc-sa]: http://creativecommons.org/licenses/by-nc-sa/4.0/ 65 | [cc-by-nc-sa-image]: https://licensebuttons.net/l/by-nc-sa/4.0/88x31.png 66 | [cc-by-nc-sa-shield]: 67 | https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg 68 | -------------------------------------------------------------------------------- /docs/index.md: -------------------------------------------------------------------------------- 1 | # Welcome 2 | 3 | This book is born from a simple desire: **to give back**. After years of 4 | working with Zabbix, and authoring previous many other publications about the platform, 5 | Patrik and Nathan felt a strong pull to share their knowledge in a way that was accessible 6 | to everyone. That's how the initial idea of a free, online Zabbix resource was 7 | conceived – **a community-driven project dedicated to empowering users**. 8 | 9 | As the online resource grew, so did the vision. We recognized the potential to create 10 | something even more impactful. This led to the formation of a foundation, dedicated 11 | to ensuring the long-term sustainability and growth of this community effort. 12 | This book, a tangible culmination of that vision, represents the next step. All 13 | profits generated from its sales will be reinvested back into the community, enabling 14 | us to further expand and enhance the resources and support we offer. This is more 15 | than just a book; it's a testament to the power of shared knowledge and a commitment 16 | to fostering a thriving Zabbix community." 17 | 18 | ## License 19 | 20 | Please note: The english version is the primary source document. 21 | Translations are provided for convenience, but this version is considered the 22 | most accurate. 23 | 24 | 25 | Please before you start take a look at our most updated license : [License](https://github.com/penmasters/zabbix-book/blob/main/readme.md) 26 | on Github. 27 | 28 | *The Zabbix Book* is a freely accessible resource designed to help users understand 29 | and master Zabbix. Contributions are highly encouraged to improve and expand its 30 | content. However, the book is distributed under the 31 | **Creative Commons Attribution-NonCommercial-ShareAlike 4.0 (CC BY-NC-SA 4.0)** 32 | license, meaning it is free for non-commercial use only. 33 | 34 | Contributors should be aware that: 35 | 36 | - By contributing to this work, you irrevocably assign and transfer all rights, title, 37 | and interest in your contributions to **The Monitoring Penmasters Foundation**, 38 | including any associated intellectual property rights, to the fullest extent permitted by law. 39 | - **The Monitoring Penmasters Foundation** reserves the right to use, reproduce, 40 | modify, distribute, and commercially exploit any contributed material in any form, 41 | including but not limited to the publication of physical and digital books. 42 | - All contributors must sign a **Deed of Transfer of Intellectual Property Rights** before making 43 | any contributions, ensuring the proper transfer of rights and handling of the content 44 | by **The Monitoring Penmasters Foundation**. Any contributions without a signed 45 | **Deed of Transfer of Intellectual Property Rights** cannot be accepted. 46 | - All profits generated will be used by The Monitoring Penmasters Foundation to cover 47 | operational expenses and to sponsor other open-source projects, as determined by the foundation. 48 | 49 | Your contributions are invaluable and will help make *The Zabbix Book* an even greater 50 | resource for the entire community! 51 | 52 | Shield: [![CC BY-NC-SA 4.0][cc-by-nc-sa-shield]][cc-by-nc-sa] 53 | 54 | [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License][cc-by-nc-sa]. 55 | 56 | [![CC BY-NC-SA 4.0][cc-by-nc-sa-image]][cc-by-nc-sa] 57 | 58 | [cc-by-nc-sa]: http://creativecommons.org/licenses/by-nc-sa/4.0/ 59 | [cc-by-nc-sa-image]: https://licensebuttons.net/l/by-nc-sa/4.0/88x31.png 60 | [cc-by-nc-sa-shield]: https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg 61 | -------------------------------------------------------------------------------- /docs/it/Guidelines.md: -------------------------------------------------------------------------------- 1 | # Guidelines 2 | 3 | ## How to contribute 4 | 5 | 6 | - Sign the [deed of 7 | transfer](https://www.thezabbixbook.com/files/form%20deed%20of%20transfer%20Book%20Zabbix.pdf) 8 | preferable electronically 9 | - Clone this project to your Github account 10 | - Clone the repository to you pc 11 | 12 | - Install the needed software for Mkdocs to work, check the file in the root 13 | folder how-to-install-mkdocs.md 14 | - Create a new branch to make your changes 15 | - git branch "" 16 | - git checkout "" 17 | - Make the changes you want and commit them 18 | - git add "files you changed" 19 | - git commit -m "add useful commit info" 20 | - Return back to the main branch 21 | - git checkout main 22 | - Make sure you have the latest changes merged from main 23 | - git pull origin main 24 | - Merge your branch into the main branch 25 | - git merge "" 26 | - git push 27 | - cleanup your branch 28 | - git branch -d "" 29 | - Create a pull requests so that we can merge it :) 30 | - Follow these 31 | [guidelines](https://github.com/penmasters/zabbix-book/how-to-rules-for-writing.md) 32 | when you write a topic. 33 | -------------------------------------------------------------------------------- /docs/it/ch01-zabbix-components/chapter.md: -------------------------------------------------------------------------------- 1 | # About Us Italian 2 | -------------------------------------------------------------------------------- /docs/it/ch03-zabbix-proxies/chapter.md: -------------------------------------------------------------------------------- 1 | # proxies 2 | -------------------------------------------------------------------------------- /docs/it/index.md: -------------------------------------------------------------------------------- 1 | # Welcome 2 | 3 | This book is born from a simple desire: **to give back**. After years of working 4 | with Zabbix, and authoring previous many other publications about the platform, 5 | Patrik and Nathan felt a strong pull to share their knowledge in a way that was 6 | accessible to everyone. That's how the initial idea of a free, online Zabbix 7 | resource was conceived – **a community-driven project dedicated to empowering 8 | users**. 9 | 10 | As the online resource grew, so did the vision. We recognized the potential to 11 | create something even more impactful. This led to the formation of a foundation, 12 | dedicated to ensuring the long-term sustainability and growth of this community 13 | effort. This book, a tangible culmination of that vision, represents the next 14 | step. All profits generated from its sales will be reinvested back into the 15 | community, enabling us to further expand and enhance the resources and support 16 | we offer. This is more than just a book; it's a testament to the power of shared 17 | knowledge and a commitment to fostering a thriving Zabbix community." 18 | 19 | ## License 20 | 21 | Please note: The english version is the primary source document. Translations 22 | are provided for convenience, but this version is considered the most accurate. 23 | 24 | 25 | Please before you start take a look at our most updated license : 26 | [License](https://github.com/penmasters/zabbix-book/blob/main/readme.md) on 27 | Github. 28 | 29 | *The Zabbix Book* is a freely accessible resource designed to help users 30 | understand and master Zabbix. Contributions are highly encouraged to improve and 31 | expand its content. However, the book is distributed under the **Creative 32 | Commons Attribution-NonCommercial-ShareAlike 4.0 (CC BY-NC-SA 4.0)** license, 33 | meaning it is free for non-commercial use only. 34 | 35 | Contributors should be aware that: 36 | 37 | - By contributing to this work, you irrevocably assign and transfer all rights, 38 | title, and interest in your contributions to **The Monitoring Penmasters 39 | Foundation**, including any associated intellectual property rights, to the 40 | fullest extent permitted by law. 41 | - **The Monitoring Penmasters Foundation** reserves the right to use, reproduce, 42 | modify, distribute, and commercially exploit any contributed material in any 43 | form, including but not limited to the publication of physical and digital 44 | books. 45 | - All contributors must sign a **Deed of Transfer of Intellectual Property 46 | Rights** before making any contributions, ensuring the proper transfer of 47 | rights and handling of the content by **The Monitoring Penmasters 48 | Foundation**. Any contributions without a signed **Deed of Transfer of 49 | Intellectual Property Rights** cannot be accepted. 50 | - All profits generated will be used by The Monitoring Penmasters Foundation to 51 | cover operational expenses and to sponsor other open-source projects, as 52 | determined by the foundation. 53 | 54 | Your contributions are invaluable and will help make *The Zabbix Book* an even 55 | greater resource for the entire community! 56 | 57 | Shield: [![CC BY-NC-SA 4.0][cc-by-nc-sa-shield]][cc-by-nc-sa] 58 | 59 | [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International 60 | License][cc-by-nc-sa]. 61 | 62 | [![CC BY-NC-SA 4.0][cc-by-nc-sa-image]][cc-by-nc-sa] 63 | 64 | [cc-by-nc-sa]: http://creativecommons.org/licenses/by-nc-sa/4.0/ 65 | [cc-by-nc-sa-image]: https://licensebuttons.net/l/by-nc-sa/4.0/88x31.png 66 | [cc-by-nc-sa-shield]: 67 | https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg 68 | -------------------------------------------------------------------------------- /docs/known_words.txt: -------------------------------------------------------------------------------- 1 | zabbix 2 | nginx 3 | mariadb 4 | rockylinux 5 | md 6 | autoregistration 7 | mkdocs 8 | subprocesses 9 | frontend 10 | onboarding 11 | okta 12 | dataflow 13 | chrony 14 | dnf 15 | iptables 16 | virtualised 17 | penmasters 18 | firewalld 19 | https 20 | http 21 | www 22 | en 23 | github 24 | repo 25 | repos 26 | log_bin_trust_function_creators 27 | emojis 28 | mysqld 29 | runtime 30 | srv 31 | charset 32 | pg 33 | pg_hba 34 | html 35 | hba 36 | postgres 37 | config 38 | postgresql 39 | dp 40 | hevodata 41 | schemas 42 | search_path 43 | sql 44 | zabbix_server 45 | enablerepo 46 | epel 47 | sestatus 48 | impactful 49 | patrik 50 | db 51 | redhat 52 | localhost 53 | ansible 54 | url 55 | ip 56 | zh 57 | mysql 58 | todo 59 | cnf 60 | install_from_packages 61 | log_error 62 | log_warnings 63 | failover 64 | keepalived 65 | readthedocs 66 | virtual_ipaddress 67 | io 68 | ha 69 | fqdn 70 | server_name 71 | php 72 | idp 73 | saml 74 | web_interface 75 | crt 76 | your_idp_id 77 | your_request 78 | your_zabbix_server 79 | idpid 80 | hostname 81 | frontend_sections 82 | gmail 83 | offboarding 84 | backend 85 | dmz 86 | nm 87 | chronyd 88 | ntppool 89 | ntp 90 | log_bin_trust 91 | ddl 92 | selinux 93 | yaml 94 | sudo 95 | postgresqldpkg 96 | wget 97 | epelrepo 98 | pgsql 99 | dpkg 100 | advert_int 101 | auth_pass 102 | auth_type 103 | track_nginx 104 | track_process 105 | virtual_router_id 106 | vrrp_instance 107 | vrrp_track_process 108 | systemd 109 | json 110 | sh 111 | ex 112 | xfs 113 | userparameter 114 | userparameters 115 | ok 116 | lld 117 | datacenter 118 | hypervisor 119 | pre 120 | larcorba 121 | liefting 122 | oicts 123 | uytterhoeven 124 | preprocessing 125 | txt 126 | vfs 127 | jsonquerytool 128 | low_level_discovery 129 | nvps 130 | misconfigurations 131 | roadmap 132 | fping 133 | getenforce 134 | httpd 135 | httpd_can_connect_zabbix 136 | httpd_t 137 | zabbix_can_network 138 | zabbix_fping 139 | zabbix_port_t 140 | zabbix_run_sudo 141 | zabbix_var_run_t 142 | semanage 143 | restorecon 144 | setuid 145 | ls 146 | te 147 | zabbix_t 148 | booleans 149 | perf 150 | sbin 151 | tcp 152 | udp 153 | usr 154 | thezabbixbook 155 | dropdown 156 | py 157 | odbc 158 | zabbix_selinux 159 | zabbix_agent_selinux 160 | setsebool 161 | rhel 162 | systutorials 163 | hl 164 | kb 165 | linuxreviews 166 | phoenixnap 167 | prd 168 | tmux 169 | uncomment 170 | ipaddress 171 | cronjob 172 | crontab 173 | nano 174 | opensource 175 | powertools 176 | uint 177 | mfa 178 | history_log 179 | history_bin 180 | history_str 181 | history_text 182 | history_uint 183 | trends_uint 184 | zabbix_proxy 185 | log_level_increase 186 | log_level_decrease 187 | snmp_cache_reload 188 | housekeeper_execute 189 | diaginfo 190 | pollers 191 | 192 | -------------------------------------------------------------------------------- /docs/nl/Guidelines.md: -------------------------------------------------------------------------------- 1 | # Richtlijnen 2 | 3 | ## Hoe u kunt bijdragen 4 | 5 | 6 | - Onderteken de [akte van 7 | overdracht](https://www.thezabbixbook.com/files/form%20deed%20of%20transfer%20Book%20Zabbix.pdf) 8 | bij voorkeur elektronisch 9 | - Kloon dit project naar uw Github account 10 | - Kloon de repository naar uw pc 11 | 12 | - Installeer de benodigde software om Mkdocs te laten werken. Controleer het 13 | bestand in de hoofdmap how-to-install-mkdocs.md 14 | - Maak een nieuwe branch om uw wijzigingen door te voeren 15 | - git branch "" 16 | - git checkout "" 17 | - Maak de gewenste wijzigingen en commit ze 18 | - git add "bestanden die je hebt gewijzigd" 19 | - git commit -m "voeg nuttige commit info toe" 20 | - Terug naar de hoofdtak 21 | - git checkout main 22 | - Zorg ervoor dat je de laatste wijzigingen hebt samengevoegd vanuit het 23 | hoofdgedeelte 24 | - git pull origin main 25 | - Voeg uw branch samen met de hoofdbranch 26 | - git merge "" 27 | - git push 28 | - je branch opschonen 29 | - git branch -d "" 30 | - Maak een pull-verzoek zodat we het kunnen samenvoegen :) 31 | - Volg deze 32 | [richtlijnen](https://github.com/penmasters/zabbix-book/how-to-rules-for-writing.md) 33 | als je een onderwerp schrijft. 34 | -------------------------------------------------------------------------------- /docs/nl/ch01-zabbix-components/chapter.md: -------------------------------------------------------------------------------- 1 | # Zabbix-componenten, basisfuncties en installatie 2 | 3 | In dit hoofdstuk breiden we de basiskennis uit het gedeelte 'Aan de slag' uit om 4 | een uitgebreide gids te bieden voor zowel beginners die Zabbix voor het eerst 5 | installeren als gevorderde gebruikers die hun installatie willen optimaliseren. 6 | We behandelen niet alleen de essentiële stappen voor een basisinstallatie, 7 | maar duiken ook in de fijnere details van de architectuur, componenten en best 8 | practices van Zabbix. 9 | 10 | We beginnen met het doorlopen van het installatieproces, zodat u een solide 11 | basis hebt om op voort te bouwen. Vanaf daar gaan we verder met de kerncomponenten 12 | van Zabbix, wat elk onderdeel doet, hoe ze met elkaar interacteren en waarom ze 13 | cruciaal zijn voor uw monitoringoplossing. 14 | U leert over subprocessen, hun rollen en hoe ze bijdragen aan de efficiëntie en 15 | betrouwbaarheid van Zabbix. 16 | 17 | Daarnaast onderzoeken we goede architectuurkeuzes die uw monitoringinstallatie 18 | kunnen maken of breken. Of u nu een klein netwerk of een grootschalige infrastructuur 19 | beheert, het vroegtijdig nemen van de juiste ontwerpbeslissingen levert dividenden op 20 | in schaalbaarheid, prestaties en onderhoud. 21 | 22 | Dit hoofdstuk is ontworpen om een breed scala aan lezers te bedienen. Als u Zabbix 23 | gewoon aan de praat wilt krijgen, vindt u duidelijke, stapsgewijze instructies. 24 | Voor degenen die dieper willen duiken, bieden we gedetailleerde inzichten in 25 | hoe Zabbix onder de motorkap functioneert, zodat u weloverwogen keuzes kunt maken 26 | die aansluiten bij uw behoeften en toekomstige groeiplannen. 27 | 28 | Aan het einde van dit hoofdstuk hebt u niet alleen een werkende Zabbix-installatie, 29 | maar ook een grondig begrip van de componenten en architectuur, waardoor u Zabbix 30 | optimaal kunt benutten, ongeacht de complexiteit van uw omgeving. 31 | 32 | Laten we beginnen aan deze gedetailleerde reis naar Zabbix en onszelf uitrusten 33 | met de kennis om zowel een krachtige monitoringoplossing te starten als te optimaliseren. 34 | -------------------------------------------------------------------------------- /docs/nl/ch03-zabbix-proxies/chapter.md: -------------------------------------------------------------------------------- 1 | # proxies 2 | -------------------------------------------------------------------------------- /docs/nl/index.md: -------------------------------------------------------------------------------- 1 | # Welkom 2 | 3 | Dit boek is geboren uit een eenvoudig verlangen: **om terug te geven**. Na jaren 4 | werken met Zabbix en het schrijven van vele andere publicaties over het 5 | platform, voelden Patrik en Nathan een sterke drang om hun kennis te delen op 6 | een manier die toegankelijk was voor iedereen. Zo ontstond het initiële idee 7 | voor een gratis, online Zabbix-bron. **een project gedreven door de community, 8 | toegewijd aan het versterken van gebruikers.** 9 | 10 | As the online resource grew, so did the vision. We recognized the potential to 11 | create something even more impactful. This led to the formation of a foundation, 12 | dedicated to ensuring the long-term sustainability and growth of this community 13 | effort. This book, a tangible culmination of that vision, represents the next 14 | step. All profits generated from its sales will be reinvested back into the 15 | community, enabling us to further expand and enhance the resources and support 16 | we offer. This is more than just a book; it's a testament to the power of shared 17 | knowledge and a commitment to fostering a thriving Zabbix community." 18 | 19 | ## License 20 | 21 | Please note: The english version is the primary source document. Translations 22 | are provided for convenience, but this version is considered the most accurate. 23 | 24 | 25 | Please before you start take a look at our most updated license : 26 | [License](https://github.com/penmasters/zabbix-book/blob/main/readme.md) on 27 | Github. 28 | 29 | *The Zabbix Book* is a freely accessible resource designed to help users 30 | understand and master Zabbix. Contributions are highly encouraged to improve and 31 | expand its content. However, the book is distributed under the **Creative 32 | Commons Attribution-NonCommercial-ShareAlike 4.0 (CC BY-NC-SA 4.0)** license, 33 | meaning it is free for non-commercial use only. 34 | 35 | Contributors should be aware that: 36 | 37 | - By contributing to this work, you irrevocably assign and transfer all rights, 38 | title, and interest in your contributions to **The Monitoring Penmasters 39 | Foundation**, including any associated intellectual property rights, to the 40 | fullest extent permitted by law. 41 | - **The Monitoring Penmasters Foundation** reserves the right to use, reproduce, 42 | modify, distribute, and commercially exploit any contributed material in any 43 | form, including but not limited to the publication of physical and digital 44 | books. 45 | - All contributors must sign a **Deed of Transfer of Intellectual Property 46 | Rights** before making any contributions, ensuring the proper transfer of 47 | rights and handling of the content by **The Monitoring Penmasters 48 | Foundation**. Any contributions without a signed **Deed of Transfer of 49 | Intellectual Property Rights** cannot be accepted. 50 | - All profits generated will be used by The Monitoring Penmasters Foundation to 51 | cover operational expenses and to sponsor other open-source projects, as 52 | determined by the foundation. 53 | 54 | Your contributions are invaluable and will help make *The Zabbix Book* an even 55 | greater resource for the entire community! 56 | 57 | Shield: [![CC BY-NC-SA 4.0][cc-by-nc-sa-shield]][cc-by-nc-sa] 58 | 59 | [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International 60 | License][cc-by-nc-sa]. 61 | 62 | [![CC BY-NC-SA 4.0][cc-by-nc-sa-image]][cc-by-nc-sa] 63 | 64 | [cc-by-nc-sa]: http://creativecommons.org/licenses/by-nc-sa/4.0/ 65 | [cc-by-nc-sa-image]: https://licensebuttons.net/l/by-nc-sa/4.0/88x31.png 66 | [cc-by-nc-sa-shield]: 67 | https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg 68 | -------------------------------------------------------------------------------- /docs/overrides/main.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block content %} 4 | 5 | {% if page.url_to_print_page %} 6 | 7 | {% include ".icons/material/printer.svg" %} 8 | 9 | {% endif %} 10 | 11 | {{ super() }} 12 | {% endblock content %} 13 | 14 | {# 15 | Extend the last block in the `base.html` before the changes are applicable 16 | to avoid any issues with the hacky page.meta 17 | #} 18 | {% block scripts %} 19 | {# Include original content before the additions #} 20 | {{ super() }} 21 | {% if page %} 22 | {% if not page.meta %} 23 | {# Set page.meta to an empty dict/mapping #} 24 | {% set _ = page.__setattr__("meta", {}) %} 25 | {% endif %} 26 | {# Let It Snow by updating the dict/mapping pair #} 27 | {% set _ = page.meta.update({"ᴴₒᴴₒᴴₒ": True}) %} 28 | {% endif %} 29 | {% endblock %} 30 | 31 | {% block announce %} 32 | {% 33 | set announcement = { 34 | "en": "This page has not yet been translated into LANGUAGE, therefore it is displayed in English.", 35 | "fr": "Cette page n'a pas encore été traduite en Français, elle est donc affichée en anglais.", 36 | "de": "Diese Seite wurde noch nicht ins Deutsche übersetzt, daher wird sie auf Englisch angezeigt.", 37 | "it": "Questa pagina non è stata ancora tradotta in italiano, pertanto viene visualizzata in inglese.", 38 | "nl": "Deze pagina is nog niet in het Nederlands vertaald en wordt daarom in het Engels weergegeven.", 39 | "pt": "Esta página ainda não foi traduzida para o português, portanto é exibida em inglês.", 40 | "es": "Esta página aún no ha sido traducida al español, por lo tanto se muestra en inglés.", 41 | "th": "หน้านี้ยังไม่ได้แปลเป็นภาษาไทย ดังนั้นจึงแสดงเป็นภาษาอังกฤษ", 42 | "zh": "该页面尚未翻译成中文,因此以英文显示", 43 | "ru": "Эта страница еще не переведена на ЯЗЫК, поэтому она отображается на английском языке.", 44 | } 45 | %} 46 | {% 47 | set call_to_action = { 48 | "en": "Support us and translate!", 49 | "fr": "Soutenez-nous et traduisez !", 50 | "de": "Unterstütze uns und übersetze!", 51 | "it": "Sostienici e traduci!", 52 | "nl": "Help ons en vertaal deze pagina!", 53 | "pt": "Apoie-nos e traduza!", 54 | "es": "¡Apóyanos y traduce!", 55 | "th": "สนับสนุนเราและแปล!", 56 | "zh": "支持我们并翻译!", 57 | "ru": "Поддержите нас и переведите!" 58 | } 59 | %} 60 | {% if i18n_page_locale != "en" and i18n_file_locale != i18n_page_locale %} 61 |
62 | {{ announcement[i18n_page_locale] }} 63 | {{ call_to_action[i18n_page_locale] }} 64 |
65 | {% endif %} 66 | {# Add script with additional localization for use in extra.js #} 67 | 74 | {# Include original content after the additions #} 75 | {{ super() }} 76 | {% endblock %} 77 | -------------------------------------------------------------------------------- /docs/pt/Guidelines.md: -------------------------------------------------------------------------------- 1 | # Guidelines 2 | 3 | ## How to contribute 4 | 5 | 6 | - Sign the [deed of 7 | transfer](https://www.thezabbixbook.com/files/form%20deed%20of%20transfer%20Book%20Zabbix.pdf) 8 | preferable electronically 9 | - Clone this project to your Github account 10 | - Clone the repository to you pc 11 | 12 | - Install the needed software for Mkdocs to work, check the file in the root 13 | folder how-to-install-mkdocs.md 14 | - Create a new branch to make your changes 15 | - git branch "" 16 | - git checkout "" 17 | - Make the changes you want and commit them 18 | - git add "files you changed" 19 | - git commit -m "add useful commit info" 20 | - Return back to the main branch 21 | - git checkout main 22 | - Make sure you have the latest changes merged from main 23 | - git pull origin main 24 | - Merge your branch into the main branch 25 | - git merge "" 26 | - git push 27 | - cleanup your branch 28 | - git branch -d "" 29 | - Create a pull requests so that we can merge it :) 30 | - Follow these 31 | [guidelines](https://github.com/penmasters/zabbix-book/how-to-rules-for-writing.md) 32 | when you write a topic. 33 | -------------------------------------------------------------------------------- /docs/pt/ch01-zabbix-components/chapter.md: -------------------------------------------------------------------------------- 1 | About Us Portuguese 2 | -------------------------------------------------------------------------------- /docs/pt/index.md: -------------------------------------------------------------------------------- 1 | # Welcome 2 | 3 | This book is born from a simple desire: **to give back**. After years of working 4 | with Zabbix, and authoring previous many other publications about the platform, 5 | Patrik and Nathan felt a strong pull to share their knowledge in a way that was 6 | accessible to everyone. That's how the initial idea of a free, online Zabbix 7 | resource was conceived – **a community-driven project dedicated to empowering 8 | users**. 9 | 10 | As the online resource grew, so did the vision. We recognized the potential to 11 | create something even more impactful. This led to the formation of a foundation, 12 | dedicated to ensuring the long-term sustainability and growth of this community 13 | effort. This book, a tangible culmination of that vision, represents the next 14 | step. All profits generated from its sales will be reinvested back into the 15 | community, enabling us to further expand and enhance the resources and support 16 | we offer. This is more than just a book; it's a testament to the power of shared 17 | knowledge and a commitment to fostering a thriving Zabbix community." 18 | 19 | ## License 20 | 21 | Please note: The english version is the primary source document. Translations 22 | are provided for convenience, but this version is considered the most accurate. 23 | 24 | 25 | Please before you start take a look at our most updated license : 26 | [License](https://github.com/penmasters/zabbix-book/blob/main/readme.md) on 27 | Github. 28 | 29 | *The Zabbix Book* is a freely accessible resource designed to help users 30 | understand and master Zabbix. Contributions are highly encouraged to improve and 31 | expand its content. However, the book is distributed under the **Creative 32 | Commons Attribution-NonCommercial-ShareAlike 4.0 (CC BY-NC-SA 4.0)** license, 33 | meaning it is free for non-commercial use only. 34 | 35 | Contributors should be aware that: 36 | 37 | - By contributing to this work, you irrevocably assign and transfer all rights, 38 | title, and interest in your contributions to **The Monitoring Penmasters 39 | Foundation**, including any associated intellectual property rights, to the 40 | fullest extent permitted by law. 41 | - **The Monitoring Penmasters Foundation** reserves the right to use, reproduce, 42 | modify, distribute, and commercially exploit any contributed material in any 43 | form, including but not limited to the publication of physical and digital 44 | books. 45 | - All contributors must sign a **Deed of Transfer of Intellectual Property 46 | Rights** before making any contributions, ensuring the proper transfer of 47 | rights and handling of the content by **The Monitoring Penmasters 48 | Foundation**. Any contributions without a signed **Deed of Transfer of 49 | Intellectual Property Rights** cannot be accepted. 50 | - All profits generated will be used by The Monitoring Penmasters Foundation to 51 | cover operational expenses and to sponsor other open-source projects, as 52 | determined by the foundation. 53 | 54 | Your contributions are invaluable and will help make *The Zabbix Book* an even 55 | greater resource for the entire community! 56 | 57 | Shield: [![CC BY-NC-SA 4.0][cc-by-nc-sa-shield]][cc-by-nc-sa] 58 | 59 | [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International 60 | License][cc-by-nc-sa]. 61 | 62 | [![CC BY-NC-SA 4.0][cc-by-nc-sa-image]][cc-by-nc-sa] 63 | 64 | [cc-by-nc-sa]: http://creativecommons.org/licenses/by-nc-sa/4.0/ 65 | [cc-by-nc-sa-image]: https://licensebuttons.net/l/by-nc-sa/4.0/88x31.png 66 | [cc-by-nc-sa-shield]: 67 | https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg 68 | -------------------------------------------------------------------------------- /docs/ru/Guidelines.md: -------------------------------------------------------------------------------- 1 | # Guidelines 2 | 3 | ## How to contribute 4 | 5 | 6 | - Sign the [deed of 7 | transfer](https://www.thezabbixbook.com/files/form%20deed%20of%20transfer%20Book%20Zabbix.pdf) 8 | preferable electronically 9 | - Clone this project to your Github account 10 | - Clone the repository to you pc 11 | 12 | - Install the needed software for Mkdocs to work, check the file in the root 13 | folder how-to-install-mkdocs.md 14 | - Create a new branch to make your changes 15 | - git branch "" 16 | - git checkout "" 17 | - Make the changes you want and commit them 18 | - git add "files you changed" 19 | - git commit -m "add useful commit info" 20 | - Return back to the main branch 21 | - git checkout main 22 | - Make sure you have the latest changes merged from main 23 | - git pull origin main 24 | - Merge your branch into the main branch 25 | - git merge "" 26 | - git push 27 | - cleanup your branch 28 | - git branch -d "" 29 | - Create a pull requests so that we can merge it :) 30 | - Follow these 31 | [guidelines](https://github.com/penmasters/zabbix-book/how-to-rules-for-writing.md) 32 | when you write a topic. 33 | -------------------------------------------------------------------------------- /docs/stylesheets/extra.css: -------------------------------------------------------------------------------- 1 | thead th { 2 | text-align: left; 3 | background: grey; 4 | color: white 5 | } 6 | 7 | tr td:first-child { 8 | background: lightgrey; 9 | } 10 | 11 | th, 12 | td { 13 | border: 1px solid var(--md-typeset-table-color); 14 | border-spacing: 0; 15 | border-bottom: none; 16 | border-left: none; 17 | border-top: none; 18 | } 19 | 20 | .md-typeset__table { 21 | line-height: 1; 22 | } 23 | 24 | .md-typeset__table table:not([class]) th { 25 | padding: 9px; 26 | } 27 | 28 | /* light mode alternating table bg colors */ 29 | .md-typeset__table tr:nth-child(2n) { 30 | background-color: #f8f8f8; 31 | } 32 | 33 | /* dark mode alternating table bg colors */ 34 | [data-md-color-scheme="slate"] .md-typeset__table tr:nth-child(2n) { 35 | background-color: hsla(var(--md-hue), 25%, 25%, 1) 36 | } 37 | 38 | /* dark mode alternating table bg colors */ 39 | [data-md-color-scheme="slate"] .md-typeset__table tr td:first-child { 40 | background-color: hsla(var(--md-hue), 25%, 25%, 1) 41 | } 42 | 43 | /* dark mode table header bg colors */ 44 | [data-md-color-scheme="slate"] .md-typeset__table thead th { 45 | text-align: left; 46 | background-color: hsla(var(--md-hue), 50%, 50%, 2) ; 47 | color: white 48 | } 49 | 50 | img[alt$=">"] { 51 | float: right; 52 | } 53 | 54 | img[alt$="<"] { 55 | float: left; 56 | } 57 | 58 | img[alt$="><"] { 59 | display: block; 60 | max-width: 100%; 61 | height: auto; 62 | margin: auto; 63 | float: none !important; 64 | } 65 | -------------------------------------------------------------------------------- /docs/stylesheets/linewrap.css: -------------------------------------------------------------------------------- 1 | pre code { 2 | white-space: pre-wrap; /* Wrap lines */ 3 | word-wrap: break-word; 4 | overflow-wrap: break-word; 5 | max-width: 140ch; /* Optional: Limit code block width */ 6 | } 7 | -------------------------------------------------------------------------------- /docs/th/Guidelines.md: -------------------------------------------------------------------------------- 1 | # แนวปฏิบัติ 2 | 3 | ## วิธีการมีส่วนร่วม 4 | 5 | 6 | - Sign the [deed of 7 | transfer](https://www.thezabbixbook.com/files/form%20deed%20of%20transfer%20Book%20Zabbix.pdf) 8 | preferable electronically 9 | - Clone this project to your Github account 10 | - Clone the repository to you pc 11 | 12 | - Install the needed software for Mkdocs to work, check the file in the root 13 | folder how-to-install-mkdocs.md 14 | - Create a new branch to make your changes 15 | - git branch "" 16 | - git checkout "" 17 | - Make the changes you want and commit them 18 | - git add "files you changed" 19 | - git commit -m "add useful commit info" 20 | - Return back to the main branch 21 | - git checkout main 22 | - Make sure you have the latest changes merged from main 23 | - git pull origin main 24 | - Merge your branch into the main branch 25 | - git merge "" 26 | - git push 27 | - cleanup your branch 28 | - git branch -d "" 29 | - Create a pull requests so that we can merge it :) 30 | - Follow these 31 | [guidelines](https://github.com/penmasters/zabbix-book/how-to-rules-for-writing.md) 32 | when you write a topic. 33 | -------------------------------------------------------------------------------- /docs/th/ch01-zabbix-components/chapter.md: -------------------------------------------------------------------------------- 1 | # About us Thai 2 | -------------------------------------------------------------------------------- /docs/th/index.md: -------------------------------------------------------------------------------- 1 | # Welcome 2 | 3 | This book is born from a simple desire: **to give back**. After years of working 4 | with Zabbix, and authoring previous many other publications about the platform, 5 | Patrik and Nathan felt a strong pull to share their knowledge in a way that was 6 | accessible to everyone. That's how the initial idea of a free, online Zabbix 7 | resource was conceived – **a community-driven project dedicated to empowering 8 | users**. 9 | 10 | As the online resource grew, so did the vision. We recognized the potential to 11 | create something even more impactful. This led to the formation of a foundation, 12 | dedicated to ensuring the long-term sustainability and growth of this community 13 | effort. This book, a tangible culmination of that vision, represents the next 14 | step. All profits generated from its sales will be reinvested back into the 15 | community, enabling us to further expand and enhance the resources and support 16 | we offer. This is more than just a book; it's a testament to the power of shared 17 | knowledge and a commitment to fostering a thriving Zabbix community." 18 | 19 | ## License 20 | 21 | Please note: The english version is the primary source document. Translations 22 | are provided for convenience, but this version is considered the most accurate. 23 | 24 | 25 | Please before you start take a look at our most updated license : 26 | [License](https://github.com/penmasters/zabbix-book/blob/main/readme.md) on 27 | Github. 28 | 29 | *The Zabbix Book* is a freely accessible resource designed to help users 30 | understand and master Zabbix. Contributions are highly encouraged to improve and 31 | expand its content. However, the book is distributed under the **Creative 32 | Commons Attribution-NonCommercial-ShareAlike 4.0 (CC BY-NC-SA 4.0)** license, 33 | meaning it is free for non-commercial use only. 34 | 35 | Contributors should be aware that: 36 | 37 | - By contributing to this work, you irrevocably assign and transfer all rights, 38 | title, and interest in your contributions to **The Monitoring Penmasters 39 | Foundation**, including any associated intellectual property rights, to the 40 | fullest extent permitted by law. 41 | - **The Monitoring Penmasters Foundation** reserves the right to use, reproduce, 42 | modify, distribute, and commercially exploit any contributed material in any 43 | form, including but not limited to the publication of physical and digital 44 | books. 45 | - All contributors must sign a **Deed of Transfer of Intellectual Property 46 | Rights** before making any contributions, ensuring the proper transfer of 47 | rights and handling of the content by **The Monitoring Penmasters 48 | Foundation**. Any contributions without a signed **Deed of Transfer of 49 | Intellectual Property Rights** cannot be accepted. 50 | - All profits generated will be used by The Monitoring Penmasters Foundation to 51 | cover operational expenses and to sponsor other open-source projects, as 52 | determined by the foundation. 53 | 54 | Your contributions are invaluable and will help make *The Zabbix Book* an even 55 | greater resource for the entire community! 56 | 57 | Shield: [![CC BY-NC-SA 4.0][cc-by-nc-sa-shield]][cc-by-nc-sa] 58 | 59 | [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International 60 | License][cc-by-nc-sa]. 61 | 62 | [![CC BY-NC-SA 4.0][cc-by-nc-sa-image]][cc-by-nc-sa] 63 | 64 | [cc-by-nc-sa]: http://creativecommons.org/licenses/by-nc-sa/4.0/ 65 | [cc-by-nc-sa-image]: https://licensebuttons.net/l/by-nc-sa/4.0/88x31.png 66 | [cc-by-nc-sa-shield]: 67 | https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg 68 | -------------------------------------------------------------------------------- /docs/zh/ch01-zabbix-components/chapter.md: -------------------------------------------------------------------------------- 1 | # About Us Chinese 2 | -------------------------------------------------------------------------------- /docs/zh/index.md: -------------------------------------------------------------------------------- 1 | # Welcome 2 | 3 | This book is born from a simple desire: **to give back**. After years of working 4 | with Zabbix, and authoring previous many other publications about the platform, 5 | Patrik and Nathan felt a strong pull to share their knowledge in a way that was 6 | accessible to everyone. That's how the initial idea of a free, online Zabbix 7 | resource was conceived – **a community-driven project dedicated to empowering 8 | users**. 9 | 10 | As the online resource grew, so did the vision. We recognized the potential to 11 | create something even more impactful. This led to the formation of a foundation, 12 | dedicated to ensuring the long-term sustainability and growth of this community 13 | effort. This book, a tangible culmination of that vision, represents the next 14 | step. All profits generated from its sales will be reinvested back into the 15 | community, enabling us to further expand and enhance the resources and support 16 | we offer. This is more than just a book; it's a testament to the power of shared 17 | knowledge and a commitment to fostering a thriving Zabbix community." 18 | 19 | ## License 20 | 21 | Please note: The english version is the primary source document. Translations 22 | are provided for convenience, but this version is considered the most accurate. 23 | 24 | 25 | Please before you start take a look at our most updated license : 26 | [License](https://github.com/penmasters/zabbix-book/blob/main/readme.md) on 27 | Github. 28 | 29 | *The Zabbix Book* is a freely accessible resource designed to help users 30 | understand and master Zabbix. Contributions are highly encouraged to improve and 31 | expand its content. However, the book is distributed under the **Creative 32 | Commons Attribution-NonCommercial-ShareAlike 4.0 (CC BY-NC-SA 4.0)** license, 33 | meaning it is free for non-commercial use only. 34 | 35 | Contributors should be aware that: 36 | 37 | - By contributing to this work, you irrevocably assign and transfer all rights, 38 | title, and interest in your contributions to **The Monitoring Penmasters 39 | Foundation**, including any associated intellectual property rights, to the 40 | fullest extent permitted by law. 41 | - **The Monitoring Penmasters Foundation** reserves the right to use, reproduce, 42 | modify, distribute, and commercially exploit any contributed material in any 43 | form, including but not limited to the publication of physical and digital 44 | books. 45 | - All contributors must sign a **Deed of Transfer of Intellectual Property 46 | Rights** before making any contributions, ensuring the proper transfer of 47 | rights and handling of the content by **The Monitoring Penmasters 48 | Foundation**. Any contributions without a signed **Deed of Transfer of 49 | Intellectual Property Rights** cannot be accepted. 50 | - All profits generated will be used by The Monitoring Penmasters Foundation to 51 | cover operational expenses and to sponsor other open-source projects, as 52 | determined by the foundation. 53 | 54 | Your contributions are invaluable and will help make *The Zabbix Book* an even 55 | greater resource for the entire community! 56 | 57 | Shield: [![CC BY-NC-SA 4.0][cc-by-nc-sa-shield]][cc-by-nc-sa] 58 | 59 | [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International 60 | License][cc-by-nc-sa]. 61 | 62 | [![CC BY-NC-SA 4.0][cc-by-nc-sa-image]][cc-by-nc-sa] 63 | 64 | [cc-by-nc-sa]: http://creativecommons.org/licenses/by-nc-sa/4.0/ 65 | [cc-by-nc-sa-image]: https://licensebuttons.net/l/by-nc-sa/4.0/88x31.png 66 | [cc-by-nc-sa-shield]: 67 | https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg 68 | -------------------------------------------------------------------------------- /how-to-install-mkdocs.md: -------------------------------------------------------------------------------- 1 | # How to install MkDocs on OSX 2 | 3 | This explains how to setup MkDocs on your Mac so that you can pull git on your pc and run the webserver local 4 | 5 | ## make sure brew is installed 6 | 7 | ```zsh 8 | brew --version 9 | ``` 10 | 11 | ## Install python 3 and pango library 12 | 13 | ```zsh 14 | brew install python3 15 | brew install pango 16 | ``` 17 | 18 | ## Install pip 19 | 20 | ``` 21 | pip install --upgrade pip 22 | ``` 23 | 24 | ## Install MkDocs and extensions 25 | 26 | ```bash 27 | pip install mkdocs 28 | pip install mkdocs-material 29 | pip install mkdocs-print-site-plugin 30 | pip install mkdocs-static-i18n 31 | pip install 'mkdocs-spellcheck[all]' 32 | pip install mkdocs-autolinks-plugin 33 | ``` 34 | 35 | ## Install extra pip packages 36 | 37 | ``` 38 | pip install idna 39 | ``` 40 | 41 | ``` 42 | ``` 43 | 44 | ## Build your site local and test it 45 | 46 | ``` 47 | python3 -m mkdocs serve 48 | python3 -m mkdocs build 49 | ``` 50 | 51 | ## Some guidelines 52 | 53 | To-Do 54 | -------------------------------------------------------------------------------- /how-to-rules-for-writing.md: -------------------------------------------------------------------------------- 1 | # Some guidelines when writing chapters 2 | 3 | 1. Always start with # followed by the name of the chapter. 4 | 5 | 2. When creating lists use `**` before and after so it's in ***bold*** 6 | 7 | Example : 8 | 9 | - **First** : my first item 10 | - **Second** : my second item 11 | 12 | 3. When wat to place special emphasis on a word use \` before and after the word so it looks like 13 | `my special word`. 14 | 15 | 4. When you create a table always try to align the text in the table to the left. 16 | This can be doen with :---- as can be seen in next example 17 | 18 | | column 1 | column 2 | colunn 3 | 19 | | :---- | :---- | :---- | 20 | | | | | 21 | 22 | 5. When writing sentences try to keep them at a maximum lenght of `80` characters 23 | for visibility. 24 | 25 | 6. If you like to add images just create a folder under the chapter folder with 26 | the name of your topic and place the `.png` file it. To reference to your image 27 | just add the name like **\!\[image name]\(name.png)** in your document. mkdocs will find 28 | the image by itself 29 | 30 | 7. Naming your images. Always use the following naming convention: `chxx-topic-imagename.png`. 31 | -------------------------------------------------------------------------------- /mkdocs.yml: -------------------------------------------------------------------------------- 1 | # Project information 2 | site_name: Zabbix Book 3 | #site_url: https://penmasters.github.io/zabbix-book/ 4 | site_url: https://thezabbixbook.com/ 5 | site_author: The Monitoring Penmasters 6 | site_description: An open-source Zabbix book 7 | copyright: Copyright © 2025 Stichting The Monitoring Penmasters 8 | 9 | # Repository 10 | repo_name: penmasters 11 | repo_url: https://github.com/penmasters/zabbix-book 12 | edit_uri: edit/main/docs 13 | docs_dir: docs 14 | 15 | # Navigation 16 | nav: 17 | - Welcome: index.md 18 | - Guidelines: Guidelines.md 19 | - Supporters and contributors: Supporters-Contributors.md 20 | - Getting started: 21 | - Initial steps: ch00-getting-started/initial-steps.md 22 | - System Requirements: ch00-getting-started/Requirements.md 23 | - "Chapter 01 : Zabbix components": 24 | - Zabbix components: ch01-zabbix-components/chapter.md 25 | - Basic Installation: ch01-zabbix-components/basic-installation.md 26 | - HA Setup: ch01-zabbix-components/ha-setup.md 27 | - Security: ch01-zabbix-components/securing-zabbix.md 28 | - Partitioning MariaDB: ch01-zabbix-components/partitioning-database.md 29 | - "Chapter 02 : Installation": 30 | - ch02-zabbix-installation/chapter.md 31 | - ch02-zabbix-installation/frontend.md 32 | - ch02-zabbix-installation/host-groups.md 33 | - ch02-zabbix-installation/user-groups.md 34 | - ch02-zabbix-installation/external-authentication.md 35 | - "Chapter 03 : Proxies and Webcomponents": 36 | - ch03-zabbix-proxies/chapter.md 37 | - ch03-zabbix-proxies/proxy-basics.md 38 | - ch03-zabbix-proxies/active-passive-proxies.md 39 | - ch03-zabbix-proxies/proxy-groups.md 40 | - ch03-zabbix-proxies/web-services.md 41 | - "Chapter 04 : Collecting data ": 42 | - ch04-zabbix-collecting-data/chapter.md 43 | - ch04-zabbix-collecting-data/dataflow.md 44 | - ch04-zabbix-collecting-data/hosts.md 45 | - ch04-zabbix-collecting-data/simple-checks.md 46 | - ch04-zabbix-collecting-data/host-interfaces.md 47 | - ch04-zabbix-collecting-data/zabbix-agent-passive.md 48 | - ch04-zabbix-collecting-data/zabbix-agent-active.md 49 | - ch04-zabbix-collecting-data/snmp-polling.md 50 | - ch04-zabbix-collecting-data/dependent.md 51 | - ch04-zabbix-collecting-data/snmp-trapping.md 52 | - ch04-zabbix-collecting-data/ssh-telnet.md 53 | - ch04-zabbix-collecting-data/http.md 54 | - ch04-zabbix-collecting-data/script.md 55 | - ch04-zabbix-collecting-data/jmx.md 56 | - ch04-zabbix-collecting-data/ipmi.md 57 | - ch04-zabbix-collecting-data/database-odbc.md 58 | - ch04-zabbix-collecting-data/database-agent.md 59 | - ch04-zabbix-collecting-data/zabbix-trapper.md 60 | - ch04-zabbix-collecting-data/external-checks.md 61 | - ch04-zabbix-collecting-data/browser.md 62 | - ch04-zabbix-collecting-data/calculated.md 63 | - ch04-zabbix-collecting-data/zabbix-internal.md 64 | - "Chapter 05 : Triggers": 65 | - ch05-zabbix-triggers/chapter.md 66 | - ch05-zabbix-triggers/triggers.md 67 | - ch05-zabbix-triggers/advanced-triggers.md 68 | - "Chapter 06 : Templates": 69 | - ch06-zabbix-templates/chapter.md 70 | - "Chapter 07 : Alerting": 71 | - ch07-zabbix-alerts/chapter.md 72 | - "Chapter 08 : LLD": 73 | - ch08-zabbix-lld/chapter.md 74 | - Custom LLD: ch08-zabbix-lld/custom.md 75 | - Dependent LLD: ch08-zabbix-lld/lld-with-dependent-items.md 76 | - "Chapter 09 : Extending Zabbix": 77 | - ch09-zabbix-extending/chapter.md 78 | - ch09-zabbix-extending/scripts.md 79 | - "Chapter 10 : Discovery": 80 | - ch10-zabbix-discovery/chapter.md 81 | - "Chapter 11 : Visualisation": 82 | - ch11-zabbix-visualisation/chapter.md 83 | - "Chapter 12 : Zabbix API": 84 | - ch12-zabbix-api/chapter.md 85 | - "Chapter 13 : Real world examples": 86 | - ch13-zabbix-real-world-examples/chapter.md 87 | 88 | theme: 89 | language: en 90 | name: material 91 | custom_dir: docs/overrides 92 | font: 93 | text: Roboto 94 | code: Nunito 95 | icon: 96 | logo: material/library 97 | features: 98 | # - content.code.select #seems to be not working for some reason 99 | # - navigation.tabs #add navigation to the top 100 | - navigation.expand 101 | - navigation.prune 102 | - navigation.path 103 | # - navigation.sections # removes the collapsable menu 104 | - navigation.indexes 105 | - navigation.top 106 | - search.suggest 107 | - search.highlight 108 | - search.share 109 | - content.code.copy 110 | - content.action.view 111 | palette: 112 | - scheme: default 113 | primary: blue 114 | accent: blue 115 | toggle: 116 | icon: material/toggle-switch-off-outline 117 | name: Switch to dark mode 118 | - scheme: slate 119 | primary: light blue 120 | accent: light blue 121 | toggle: 122 | icon: material/toggle-switch 123 | name: Switch to light mode 124 | 125 | extra_css: 126 | - stylesheets/extra.css 127 | - stylesheets/linewrap.css 128 | 129 | # Plugins 130 | plugins: 131 | - search: 132 | separator: '[\s\u200b\-_,:!=\[\]()"`/]+|\.(?!\d)|&[lg]t;|(?!\b)(?=[A-Z][a-z])' 133 | lang: 134 | - fr 135 | - de 136 | - it 137 | - nl 138 | - pt 139 | - es 140 | - th 141 | - zh 142 | - ru 143 | - en 144 | - autolinks 145 | - privacy #GDPR compliance 146 | - spellcheck: 147 | backends: # the backends you want to use 148 | - symspellpy # as strings 149 | - codespell: # or nested configs 150 | dictionaries: [clear, rare] 151 | 152 | # known_words can also be a list of words 153 | known_words: known_words.txt 154 | 155 | # ignore words in tags 156 | ignore_code: yes 157 | 158 | # minimum length of words to consider 159 | min_length: 2 160 | 161 | # maximum number of capital letters in a word 162 | max_capital: 1 163 | 164 | # keep unicode characters 165 | allow_unicode: no 166 | 167 | # skip files entirely (supports Unix shell-style wildcards) 168 | skip_files: 169 | - fr/* 170 | - de/* 171 | - it/* 172 | - nl/* 173 | - pt/* 174 | - es/* 175 | - th/* 176 | - zh/* 177 | - ru/* 178 | - Guidelines.*.md 179 | # - credits.md 180 | #- coverage.md 181 | #- reference/* 182 | 183 | # whether to only check in strict mode 184 | strict_only: no 185 | 186 | - i18n: 187 | reconfigure_material: true 188 | fallback_to_default: true 189 | docs_structure: folder 190 | languages: 191 | - locale: fr 192 | name: Français 193 | build: true 194 | - locale: de 195 | name: German 196 | build: true 197 | - locale: it 198 | name: Italian 199 | build: true 200 | - locale: nl 201 | name: Nederlands 202 | build: true 203 | - locale: pt 204 | name: Portuguese 205 | build: true 206 | - locale: es 207 | name: Spanish 208 | build: true 209 | - locale: th 210 | name: ภาษาไทย 211 | build: true 212 | - locale: zh 213 | name: 中国人 214 | build: true 215 | - locale: ru 216 | name: Russian 217 | build: true 218 | - locale: en 219 | default: true 220 | name: English 221 | build: true 222 | - print-site: 223 | add_to_navigation: true 224 | add_full_urls: false 225 | add_table_of_contents: true 226 | toc_title: "Table of Contents" 227 | toc_depth: 6 228 | enumerate_headings: true 229 | enumerate_figures: true 230 | add_cover_page: false 231 | cover_page_template: "docs/assets/templates/custom_cover_page.tpl" 232 | path_to_pdf: "" 233 | include_css: false # dont put true else no toc 234 | enabled: true 235 | 236 | # extensions 237 | markdown_extensions: 238 | - pymdownx.highlight: 239 | anchor_linenums: true 240 | line_spans: __span 241 | pygments_lang_class: true 242 | - pymdownx.inlinehilite 243 | - pymdownx.snippets 244 | - pymdownx.superfences 245 | - admonition 246 | - pymdownx.details 247 | - pymdownx.superfences 248 | - pymdownx.blocks.caption 249 | - tables 250 | - attr_list 251 | - md_in_html 252 | - def_list 253 | - pymdownx.tasklist: 254 | custom_checkbox: true 255 | -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 | # The Zabbix Book 2 | 3 | Please note: The english version is the primary source document. 4 | Translations are provided for convenience, but this version is considered the 5 | most accurate. 6 | 7 | Please before you start take a look at our most updated license : [License](https://github.com/penmasters/zabbix-book/blob/main/readme.md) 8 | on Github. 9 | 10 | *The Zabbix Book* is a freely accessible resource designed to help users understand 11 | and master Zabbix. Contributions are highly encouraged to improve and expand its 12 | content. However, the book is distributed under the 13 | **Creative Commons Attribution-NonCommercial-ShareAlike 4.0 (CC BY-NC-SA 4.0)** 14 | license, meaning it is free for non-commercial use only. 15 | 16 | Contributors should be aware that: 17 | 18 | - By contributing to this work, you irrevocably assign and transfer all rights, title, 19 | and interest in your contributions to **The Monitoring Penmasters Foundation**, 20 | including any associated intellectual property rights, to the fullest extent permitted by law. 21 | - **The Monitoring Penmasters Foundation** reserves the right to use, reproduce, 22 | modify, distribute, and commercially exploit any contributed material in any form, 23 | including but not limited to the publication of physical and digital books. 24 | - All contributors must sign a **Deed of Transfer of Intellectual Property Rights** before making 25 | any contributions, ensuring the proper transfer of rights and handling of the content 26 | by **The Monitoring Penmasters Foundation**. Any contributions without a signed 27 | **Deed of Transfer of Intellectual Property Rights** cannot be accepted. 28 | - All profits generated will be used by The Monitoring Penmasters Foundation to cover 29 | operational expenses and to sponsor other open-source projects, as determined by the foundation. 30 | 31 | 32 | Your contributions are invaluable and will help make *The Zabbix Book* an even greater 33 | resource for the entire community! 34 | 35 | Shield: [![CC BY-NC-SA 4.0][cc-by-nc-sa-shield]][cc-by-nc-sa] 36 | 37 | [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License][cc-by-nc-sa]. 38 | 39 | [![CC BY-NC-SA 4.0][cc-by-nc-sa-image]][cc-by-nc-sa] 40 | 41 | [cc-by-nc-sa]: http://creativecommons.org/licenses/by-nc-sa/4.0/ 42 | [cc-by-nc-sa-image]: https://licensebuttons.net/l/by-nc-sa/4.0/88x31.png 43 | [cc-by-nc-sa-shield]: https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg 44 | 45 | Read the book here : https://www.thezabbixbook.com 46 | 47 | Help us Translate the book : https://weblate.thezabbixbook.com 48 | 49 | 50 | ## Contributors 51 | 52 | Thanks for your contribution to the project! 53 | 54 | ![Contributors Count](https://img.shields.io/github/contributors/penmasters/zabbix-book) 55 | 56 | [![Contributors Avatars](https://contrib.rocks/image?repo=penmasters/zabbix-book)](https://github.com/penmasters/zabbix-book/graphs/contributors) 57 | 58 | --------------------------------------------------------------------------------