4 Windows agent installation from MSI

Overview

Zabbix Windows agent can be installed from Windows MSI installer packages (32-bit or 64-bit) available for download.

The minimum requirement for a Zabbix agent 2 MSI installation is Windows 10 32-bit/Server 2016.

The Zabbix get and sender utilities can also be installed, either together with Zabbix agent/agent 2 or separately.

A 32-bit package cannot be installed on a 64-bit Windows.

All packages come with TLS support, however, configuring TLS is optional.

Both UI and command-line based installation is supported.

Although Zabbix installation from MSI installer packages is fully supported, it is recommended to install at least Microsoft .NET Framework 2 for proper error handling. See Microsoft Download .NET Framework.

It is recommended to use default paths provided by the installer as using custom paths without proper permissions could compromise the security of the installation.

Installation steps

To install, double-click the downloaded MSI file.

Accept the license to proceed to the next step.

Specify the following parameters.

Parameter Description
Host name Specify host name.
Zabbix server IP/DNS Specify IP/DNS of Zabbix server.
Agent listen port Specify agent listen port (10050 by default).
Server or Proxy for active checks Specify IP/DNS of Zabbix server/proxy for active agent checks.
Enable PSK Mark the checkbox to enable TLS support via pre-shared keys.
Add agent location to the PATH Add agent location to the PATH variable.

Enter pre-shared key identity and value. This step is only available if you checked Enable PSK in the previous step.

Select Zabbix components to install - Zabbix agent daemon, Zabbix sender, Zabbix get.

Zabbix components along with the configuration file will be installed in a Zabbix Agent folder in Program Files. zabbix_agentd.exe will be set up as Windows service with automatic startup.

Command-line based installation

Supported parameters

The following set of parameters is supported by created MSIs:

Number Parameter Description
1 LOGTYPE
2 LOGFILE
3 SERVER
4 LISTENPORT
5 SERVERACTIVE
6 HOSTNAME
7 TIMEOUT
8 TLSCONNECT
9 TLSACCEPT
10 TLSPSKIDENTITY
11 TLSPSKFILE
12 TLSPSKVALUE
13 TLSCAFILE
14 TLSCRLFILE
15 TLSSERVERCERTISSUER
16 TLSSERVERCERTSUBJECT
17 TLSCERTFILE
18 TLSKEYFILE
19 LISTENIP
20 HOSTINTERFACE
21 HOSTMETADATA
22 HOSTMETADATAITEM
23 STATUSPORT Zabbix agent 2 only.
24 ENABLEPERSISTENTBUFFER Zabbix agent 2 only.
25 PERSISTENTBUFFERPERIOD Zabbix agent 2 only.
26 PERSISTENTBUFFERFILE Zabbix agent 2 only.
27 INSTALLFOLDER
28 ENABLEPATH
29 SKIP SKIP=fw - do not install firewall exception rule
30 INCLUDE Sequence of includes separated by ;
31 ALLOWDENYKEY Sequence of "AllowKey" and "DenyKey" parameters separated by ;. Use \\; to escape the delimiter.
Example: ALLOWDENYKEY="AllowKey=system.run[type c:\windows\system32\drivers\etc\hosts];DenyKey=system.run[*]"
32 ADDPROGRAM A comma-delimited list of programs to install.
Possible values: AgentProgram, GetProgram, SenderProgram
E.g., ADDPROGRAM=AgentProgram,GetProgram
33 ADDLOCAL A comma-delimited list of programs to install.
Possible values: AgentProgram, GetProgram, SenderProgram
E.g., ADDLOCAL=AgentProgram,SenderProgram
34 CONF Specify path to custom configuration file, e.g., CONF=c:\full\path\to\user.conf

To install you may run, for example:

SET INSTALLFOLDER=C:\Program Files\za
       
       msiexec /l*v log.txt /i zabbix_agent-6.0.0-x86.msi /qn^
        LOGTYPE=file^
        LOGFILE="%INSTALLFOLDER%\za.log"^
        SERVER=192.168.6.76^
        LISTENPORT=12345^
        SERVERACTIVE=::1^
        HOSTNAME=myHost^
        TLSCONNECT=psk^
        TLSACCEPT=psk^
        TLSPSKIDENTITY=MyPSKID^
        TLSPSKFILE="%INSTALLFOLDER%\mykey.psk"^
        TLSCAFILE="c:\temp\f.txt1"^
        TLSCRLFILE="c:\temp\f.txt2"^
        TLSSERVERCERTISSUER="My CA"^
        TLSSERVERCERTSUBJECT="My Cert"^
        TLSCERTFILE="c:\temp\f.txt5"^
        TLSKEYFILE="c:\temp\f.txt6"^
        ENABLEPATH=1^
        INSTALLFOLDER="%INSTALLFOLDER%"^
        SKIP=fw^
        ALLOWDENYKEY="DenyKey=vfs.file.contents[/etc/passwd]"

or

msiexec /l*v log.txt /i zabbix_agent-6.0.0-x86.msi /qn^
        SERVER=192.168.6.76^
        TLSCONNECT=psk^
        TLSACCEPT=psk^
        TLSPSKIDENTITY=MyPSKID^
        TLSPSKVALUE=1f87b595725ac58dd977beef14b97461a7c1045b9a1c963065002c5473194952

If both TLSPSKFILE and TLSPSKVALUE are passed, then TLSPSKVALUE will be written to TLSPSKFILE.