parent
d56bbde138
commit
caaa97c4f9
2 changed files with 36 additions and 5 deletions
@ -1,8 +1,39 @@ |
|||||||
# -*- coding: utf-8 -*- |
# -*- coding: utf-8 -*- |
||||||
from setuphelpers import * |
from setuphelpers import * |
||||||
|
import json |
||||||
|
from cryptography.fernet import Fernet |
||||||
|
|
||||||
uninstallkey = [] |
uninstallkey = [] |
||||||
|
variables = { |
||||||
|
'zabbix_servers': [ '127.0.0.1' ] |
||||||
|
} |
||||||
|
|
||||||
|
# Read local variables file if available |
||||||
|
if isfile(makepath(programfiles32,'wapt','private','symetric.txt')) and isfile(makepath(programfiles32,'wapt','private','variables.txt')): |
||||||
|
print('Reading local encrypted variables file') |
||||||
|
f = Fernet(open(makepath(programfiles32,'wapt','private','symetric.txt'),'r').read()) |
||||||
|
variables = json.loads(f.decrypt(open(makepath(programfiles32,'wapt','private','variables.txt'),'r').read())) |
||||||
|
|
||||||
|
props = { |
||||||
|
'RMTCMD':0, |
||||||
|
'SERVER':','.join(variables['zabbix_servers']) |
||||||
|
} |
||||||
|
|
||||||
def install(): |
def install(): |
||||||
print('installing fws-zabbix-agent') |
version = control['version'].split('-',1)[0] |
||||||
install_msi_if_needed('zabbix_agent-4.0.1_x64.msi') |
print('Installing Zabbix Agent version ' + version) |
||||||
|
|
||||||
|
if iswin64(): |
||||||
|
install_msi_if_needed('zabbix_agent-%s_x64.msi' % version,killbefore=['zabbix_agentd.exe'],properties=props,remove_old_version=True) |
||||||
|
else: |
||||||
|
install_msi_if_needed('zabbix_agent-%s_x86.msi' % version,killbefore=['zabbix_agentd.exe'],properties=props,remove_old_version=True) |
||||||
|
|
||||||
|
print('Opening port 10050 in the firewall') |
||||||
|
# Remove the previous rule if it existed. We don't mind the return code as the rule might not exist |
||||||
|
run_notfatal('netsh advfirewall firewall del rule name="Zabbix Agent"') |
||||||
|
# And add a new one |
||||||
|
run('netsh advfirewall firewall add rule name="Zabbix Agent" dir=in action=allow protocol=TCP localport=10050 enable=yes remoteip=%s' % (','.join(variables['zabbix_servers']))) |
||||||
|
|
||||||
|
def uninstall(): |
||||||
|
print('Removing firewall rule') |
||||||
|
run_notfatal('netsh advfirewall firewall del rule name="Zabbix Agent"') |
Loading…
Reference in new issue