mirror of
https://github.com/pandorafms/pandorafms.git
synced 2025-09-25 19:09:08 +02:00
Merge branch 'develop' of brutus.artica.es:artica/pandorafms into ent-6151-revisar-el-instalador-rpm-de-suse-me-esta-dando-errores
This commit is contained in:
commit
b213c38c10
12
.gitignore
vendored
12
.gitignore
vendored
@ -1 +1,11 @@
|
|||||||
pandora_console/attachment/agents
|
.vstags
|
||||||
|
MYMETA.json
|
||||||
|
MYMETA.yml
|
||||||
|
.vscode
|
||||||
|
.vscode*
|
||||||
|
.vstags
|
||||||
|
**/blib
|
||||||
|
**/PandoraFMS-Enterprise/Makefile
|
||||||
|
**/PandoraFMS-Enterprise/pm_to_blib
|
||||||
|
**/pandora_console/attachment/cache
|
||||||
|
**/pandora_console/attachment/agents
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Pandora FMS - http://pandorafms.com
|
Pandora FMS - http://pandorafms.com
|
||||||
|
|
||||||
==================================================
|
==================================================
|
||||||
Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
Please see http://pandorafms.org for full contribution list
|
Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or
|
This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Pandora FMS - http://pandorafms.com
|
Pandora FMS - http://pandorafms.com
|
||||||
|
|
||||||
==================================================
|
==================================================
|
||||||
Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
Please see http://pandorafms.org for full contribution list
|
Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or
|
This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Pandora FMS - http://pandorafms.com
|
Pandora FMS - http://pandorafms.com
|
||||||
|
|
||||||
==================================================
|
==================================================
|
||||||
Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
Please see http://pandorafms.org for full contribution list
|
Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or
|
This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Pandora FMS - http://pandorafms.com
|
Pandora FMS - http://pandorafms.com
|
||||||
|
|
||||||
==================================================
|
==================================================
|
||||||
Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
Please see http://pandorafms.org for full contribution list
|
Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or
|
This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Pandora FMS - http://pandorafms.com
|
Pandora FMS - http://pandorafms.com
|
||||||
|
|
||||||
==================================================
|
==================================================
|
||||||
Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
Please see http://pandorafms.org for full contribution list
|
Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or
|
This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Pandora FMS - http://pandorafms.com
|
Pandora FMS - http://pandorafms.com
|
||||||
|
|
||||||
==================================================
|
==================================================
|
||||||
Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
Please see http://pandorafms.org for full contribution list
|
Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or
|
This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Pandora FMS - http://pandorafms.com
|
Pandora FMS - http://pandorafms.com
|
||||||
|
|
||||||
==================================================
|
==================================================
|
||||||
Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
Please see http://pandorafms.org for full contribution list
|
Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or
|
This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Pandora FMS - http://pandorafms.com
|
Pandora FMS - http://pandorafms.com
|
||||||
|
|
||||||
==================================================
|
==================================================
|
||||||
Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
Please see http://pandorafms.org for full contribution list
|
Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or
|
This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Pandora FMS - http://pandorafms.com
|
Pandora FMS - http://pandorafms.com
|
||||||
|
|
||||||
==================================================
|
==================================================
|
||||||
Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
Please see http://pandorafms.org for full contribution list
|
Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or
|
This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Pandora FMS - http://pandorafms.com
|
Pandora FMS - http://pandorafms.com
|
||||||
|
|
||||||
==================================================
|
==================================================
|
||||||
Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
Please see http://pandorafms.org for full contribution list
|
Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or
|
This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Pandora FMS - http://pandorafms.com
|
Pandora FMS - http://pandorafms.com
|
||||||
|
|
||||||
==================================================
|
==================================================
|
||||||
Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
Please see http://pandorafms.org for full contribution list
|
Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or
|
This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Pandora FMS - http://pandorafms.com
|
Pandora FMS - http://pandorafms.com
|
||||||
|
|
||||||
==================================================
|
==================================================
|
||||||
Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
Please see http://pandorafms.org for full contribution list
|
Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or
|
This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Pandora FMS - http://pandorafms.com
|
Pandora FMS - http://pandorafms.com
|
||||||
|
|
||||||
==================================================
|
==================================================
|
||||||
Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
Please see http://pandorafms.org for full contribution list
|
Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or
|
This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Pandora FMS - http://pandorafms.com
|
Pandora FMS - http://pandorafms.com
|
||||||
|
|
||||||
==================================================
|
==================================================
|
||||||
Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
Please see http://pandorafms.org for full contribution list
|
Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or
|
This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
// Pandora FMS - http://pandorafms.com
|
// Pandora FMS - http://pandorafms.com
|
||||||
// ==================================================
|
// ==================================================
|
||||||
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
|
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
// Please see http://pandorafms.org for full contribution list
|
// Please see http://pandorafms.org for full contribution list
|
||||||
|
|
||||||
// This program is free software; you can redistribute it and/or
|
// This program is free software; you can redistribute it and/or
|
||||||
|
@ -3,309 +3,321 @@ var isFetching = null;
|
|||||||
var storedEvents = new Array();
|
var storedEvents = new Array();
|
||||||
var notVisited = {};
|
var notVisited = {};
|
||||||
|
|
||||||
$(window).on('load', function() {
|
$(window).on("load", function() {
|
||||||
initilise();
|
initilise();
|
||||||
// Wait some ms to throw main function
|
// Wait some ms to throw main function
|
||||||
var delay = setTimeout(main, 100);
|
var delay = setTimeout(main, 100);
|
||||||
resetInterval();
|
resetInterval();
|
||||||
});
|
});
|
||||||
|
|
||||||
function fetchEvents() {
|
function fetchEvents() {
|
||||||
return storedEvents;
|
return storedEvents;
|
||||||
}
|
}
|
||||||
|
|
||||||
function fetchNotVisited() {
|
function fetchNotVisited() {
|
||||||
return notVisited;
|
return notVisited;
|
||||||
}
|
}
|
||||||
|
|
||||||
function removeNotVisited(eventId) {
|
function removeNotVisited(eventId) {
|
||||||
if (notVisited[eventId] === true) delete notVisited[eventId];
|
if (notVisited[eventId] === true) delete notVisited[eventId];
|
||||||
}
|
}
|
||||||
|
|
||||||
function main() {
|
function main() {
|
||||||
|
chrome.runtime.sendMessage({ text: "FETCH_EVENTS" });
|
||||||
|
// Do not fetch if is fetching now
|
||||||
|
if (isFetching) return;
|
||||||
|
isFetching = true;
|
||||||
|
|
||||||
chrome.runtime.sendMessage({text: "FETCH_EVENTS"});
|
var url =
|
||||||
// Do not fetch if is fetching now
|
localStorage["ip_address"] +
|
||||||
if (isFetching) return;
|
"/include/api.php?op=get&op2=events&return_type=json";
|
||||||
isFetching = true;
|
var feedUrl = url;
|
||||||
|
var data = new FormData();
|
||||||
|
|
||||||
var feedUrl = localStorage["ip_address"]+'/include/api.php?op=get&op2=events&return_type=json&apipass='+localStorage["api_pass"]+'&user='+localStorage["user_name"]+'&pass='+localStorage["pass"];
|
data.append("apipass", localStorage["api_pass"]);
|
||||||
|
data.append("user", localStorage["user_name"]);
|
||||||
|
data.append("pass", localStorage["pass"]);
|
||||||
|
|
||||||
req = new XMLHttpRequest();
|
req = new XMLHttpRequest();
|
||||||
req.onload = handleResponse;
|
req.onload = handleResponse;
|
||||||
req.onerror = handleError;
|
req.onerror = handleError;
|
||||||
req.open("GET", feedUrl, true);
|
req.open("POST", feedUrl, true);
|
||||||
req.withCredentials = true
|
req.withCredentials = true;
|
||||||
req.send(null);
|
req.send(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
function handleError() {
|
function handleError() {
|
||||||
chrome.runtime.sendMessage({text: "FETCH_EVENTS_URL_ERROR"});
|
chrome.runtime.sendMessage({ text: "FETCH_EVENTS_URL_ERROR" });
|
||||||
isFetching = false;
|
isFetching = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
function handleResponse() {
|
function handleResponse() {
|
||||||
var doc = req.responseText;
|
var doc = req.responseText;
|
||||||
if (doc=="auth error") {
|
if (doc == "auth error") {
|
||||||
chrome.runtime.sendMessage({text: "FETCH_EVENTS_URL_ERROR"});
|
chrome.runtime.sendMessage({ text: "FETCH_EVENTS_URL_ERROR" });
|
||||||
} else {
|
} else {
|
||||||
var n = doc.search("404 Not Found");
|
var n = doc.search("404 Not Found");
|
||||||
if (n>0) {
|
if (n > 0) {
|
||||||
chrome.runtime.sendMessage({text: "FETCH_EVENTS_DATA_ERROR"});
|
chrome.runtime.sendMessage({ text: "FETCH_EVENTS_DATA_ERROR" });
|
||||||
} else {
|
} else {
|
||||||
getEvents(doc);
|
getEvents(doc);
|
||||||
chrome.runtime.sendMessage({text: "FETCH_EVENTS_SUCCESS"});
|
chrome.runtime.sendMessage({ text: "FETCH_EVENTS_SUCCESS" });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
isFetching = false;
|
isFetching = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
function getEvents(reply){
|
function getEvents(reply) {
|
||||||
var fetchedEvents = parseReplyEvents(reply);
|
var fetchedEvents = parseReplyEvents(reply);
|
||||||
|
|
||||||
// If there is no events requested, mark all as visited
|
// If there is no events requested, mark all as visited
|
||||||
if (storedEvents.length == 0) {
|
if (typeof storedEvents != "undefined" && storedEvents.length == 0) {
|
||||||
notVisited = {};
|
notVisited = {};
|
||||||
storedEvents = fetchedEvents;
|
storedEvents = fetchedEvents;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Discriminate the new events
|
// Discriminate the new events
|
||||||
newEvents=fetchNewEvents(fetchedEvents,storedEvents);
|
newEvents = fetchNewEvents(fetchedEvents, storedEvents);
|
||||||
var newNotVisited = {};
|
var newNotVisited = {};
|
||||||
var notVisitedCount = 0;
|
var notVisitedCount = 0;
|
||||||
|
|
||||||
// Check if popup is displayed to make some actions
|
|
||||||
var views = chrome.extension.getViews({ type: "popup" });
|
|
||||||
for(var k=0;k<newEvents.length;k++){
|
|
||||||
newNotVisited[newEvents[k]['id']] = true;
|
|
||||||
if (views.length == 0) {
|
|
||||||
notVisitedCount++;
|
|
||||||
displayNotification (newEvents[k])
|
|
||||||
alertsSound(newEvents[k]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Make that the old events marked as not visited remains with the
|
// Check if popup is displayed to make some actions
|
||||||
// same status
|
var views = chrome.extension.getViews({ type: "popup" });
|
||||||
for(var k=0;k<fetchedEvents.length;k++){
|
for (var k = 0; k < newEvents.length; k++) {
|
||||||
if (notVisited[fetchedEvents[k]['id']] === true) {
|
newNotVisited[newEvents[k]["id"]] = true;
|
||||||
newNotVisited[fetchedEvents[k]['id']] = true;
|
if (views.length == 0) {
|
||||||
notVisitedCount++;
|
notVisitedCount++;
|
||||||
}
|
displayNotification(newEvents[k]);
|
||||||
}
|
alertsSound(newEvents[k]);
|
||||||
notVisited = newNotVisited;
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Update the number
|
// Make that the old events marked as not visited remains with the
|
||||||
localStorage["new_events"] = (views.length == 0) ? notVisitedCount : 0;
|
// same status
|
||||||
updateBadge();
|
for (var k = 0; k < fetchedEvents.length; k++) {
|
||||||
|
if (notVisited[fetchedEvents[k]["id"]] === true) {
|
||||||
|
newNotVisited[fetchedEvents[k]["id"]] = true;
|
||||||
|
notVisitedCount++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
notVisited = newNotVisited;
|
||||||
|
|
||||||
// Store the requested events
|
// Update the number
|
||||||
storedEvents = fetchedEvents;
|
localStorage["new_events"] = views.length == 0 ? notVisitedCount : 0;
|
||||||
|
updateBadge();
|
||||||
|
|
||||||
|
// Store the requested events
|
||||||
|
storedEvents = fetchedEvents;
|
||||||
}
|
}
|
||||||
|
|
||||||
function updateBadge() {
|
function updateBadge() {
|
||||||
if (localStorage["new_events"] != 0) {
|
if (localStorage["new_events"] != 0) {
|
||||||
chrome.browserAction.setBadgeBackgroundColor({color:[0,200,0,255]});
|
chrome.browserAction.setBadgeBackgroundColor({ color: [0, 200, 0, 255] });
|
||||||
chrome.browserAction.setBadgeText({ text: localStorage["new_events"] });
|
chrome.browserAction.setBadgeText({ text: localStorage["new_events"] });
|
||||||
} else {
|
} else {
|
||||||
chrome.browserAction.setBadgeText({ text: "" });
|
chrome.browserAction.setBadgeText({ text: "" });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function fetchNewEvents(A,B){
|
function fetchNewEvents(A, B) {
|
||||||
var arrDiff = new Array();
|
var arrDiff = new Array();
|
||||||
for(var i = 0; i < A.length; i++) {
|
for (var i = 0; i < A.length; i++) {
|
||||||
var id = false;
|
var id = false;
|
||||||
for(var j = 0; j < B.length; j++) {
|
for (var j = 0; j < B.length; j++) {
|
||||||
if(A[i]['id'] == B[j]['id']) {
|
if (A[i]["id"] == B[j]["id"]) {
|
||||||
id = true;
|
id = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(!id) {
|
if (!id) {
|
||||||
arrDiff.push(A[i]);
|
arrDiff.push(A[i]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return arrDiff;
|
return arrDiff;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function parseReplyEvents(reply) {
|
||||||
|
// Split the API response
|
||||||
|
var data;
|
||||||
|
try {
|
||||||
|
data = JSON.parse(reply);
|
||||||
|
} catch (error) {
|
||||||
|
console.log(error);
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
var e_array = JSON.parse(reply).data;
|
||||||
|
|
||||||
function parseReplyEvents (reply) {
|
// Form a properly object
|
||||||
|
var fetchedEvents = new Array();
|
||||||
// Split the API response
|
for (var i = 0; i < e_array.length; i++) {
|
||||||
var data = JSON.parse(reply)
|
var event = e_array[i];
|
||||||
var e_array = JSON.parse(reply).data;
|
fetchedEvents.push({
|
||||||
|
id: event.id_evento,
|
||||||
// Form a properly object
|
agent_name: event.agent_name,
|
||||||
var fetchedEvents=new Array();
|
agent: event.id_agente,
|
||||||
for(var i=0;i<e_array.length;i++){
|
date: event.timestamp,
|
||||||
var event=e_array[i];
|
title: event.evento,
|
||||||
fetchedEvents.push({
|
module: event.id_agentmodule,
|
||||||
'id' : event.id_evento,
|
type: event.event_type,
|
||||||
'agent_name' : event.agent_name,
|
source: event.source,
|
||||||
'agent' : event.id_agente,
|
severity: event.criticity_name,
|
||||||
'date' : event.timestamp,
|
visited: false
|
||||||
'title' : event.evento,
|
});
|
||||||
'module' : event.id_agentmodule,
|
}
|
||||||
'type' : event.event_type,
|
// Return the events
|
||||||
'source' : event.source,
|
return fetchedEvents;
|
||||||
'severity' : event.criticity_name,
|
|
||||||
'visited' : false
|
|
||||||
});
|
|
||||||
}
|
|
||||||
// Return the events
|
|
||||||
return fetchedEvents;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function alertsSound(pEvent){
|
function alertsSound(pEvent) {
|
||||||
if(localStorage["sound_alert"]!="on"){
|
if (localStorage["sound_alert"] != "on") {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (pEvent['severity']) {
|
switch (pEvent["severity"]) {
|
||||||
case "Critical":
|
case "Critical":
|
||||||
playSound(localStorage["critical"]);
|
playSound(localStorage["critical"]);
|
||||||
break;
|
break;
|
||||||
case "Informational":
|
case "Informational":
|
||||||
playSound(localStorage["informational"]);
|
playSound(localStorage["informational"]);
|
||||||
break;
|
break;
|
||||||
case "Maintenance":
|
case "Maintenance":
|
||||||
playSound(localStorage["maintenance"]);
|
playSound(localStorage["maintenance"]);
|
||||||
break;
|
break;
|
||||||
case "Normal":
|
case "Normal":
|
||||||
playSound(localStorage["normal"]);
|
playSound(localStorage["normal"]);
|
||||||
break;
|
break;
|
||||||
case "Warning":
|
case "Warning":
|
||||||
playSound(localStorage["warning"]);
|
playSound(localStorage["warning"]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function displayNotification (pEvent) {
|
function displayNotification(pEvent) {
|
||||||
|
// Check if the user is okay to get some notification
|
||||||
|
if (Notification.permission === "granted") {
|
||||||
|
// If it's okay create a notification
|
||||||
|
getNotification(pEvent);
|
||||||
|
}
|
||||||
|
|
||||||
// Check if the user is okay to get some notification
|
// Otherwise, we need to ask the user for permission
|
||||||
if (Notification.permission === "granted") {
|
// Note, Chrome does not implement the permission static property
|
||||||
// If it's okay create a notification
|
// So we have to check for NOT 'denied' instead of 'default'
|
||||||
getNotification(pEvent);
|
else if (Notification.permission !== "denied") {
|
||||||
}
|
Notification.requestPermission(function(permission) {
|
||||||
|
// Whatever the user answers, we make sure we store the information
|
||||||
// Otherwise, we need to ask the user for permission
|
if (!("permission" in Notification)) {
|
||||||
// Note, Chrome does not implement the permission static property
|
Notification.permission = permission;
|
||||||
// So we have to check for NOT 'denied' instead of 'default'
|
}
|
||||||
else if (Notification.permission !== 'denied') {
|
|
||||||
Notification.requestPermission(function (permission) {
|
// If the user is okay, let's create a notification
|
||||||
// Whatever the user answers, we make sure we store the information
|
if (permission === "granted") getNotification(pEvent);
|
||||||
if(!('permission' in Notification)) {
|
});
|
||||||
Notification.permission = permission;
|
}
|
||||||
}
|
|
||||||
|
|
||||||
// If the user is okay, let's create a notification
|
|
||||||
if (permission === "granted") getNotification(pEvent);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function getNotification(pEvent){
|
function getNotification(pEvent) {
|
||||||
|
// Build the event text
|
||||||
// Build the event text
|
var even = pEvent["type"];
|
||||||
var even = pEvent['type'];
|
if (pEvent["source"] != "") even += " : " + pEvent["source"];
|
||||||
if (pEvent['source'] != '') even += " : " + pEvent['source'];
|
even += ". Event occured at " + pEvent["date"];
|
||||||
even += ". Event occured at " + pEvent['date'];
|
if (pEvent["module"] != 0)
|
||||||
if(pEvent['module'] != 0) even += " in the module with Id "+ pEvent['module'];
|
even += " in the module with Id " + pEvent["module"];
|
||||||
even += ".";
|
even += ".";
|
||||||
|
|
||||||
var url = (pEvent['agent'] == 0)
|
var url =
|
||||||
? localStorage["ip_address"]+"/index.php?sec=eventos&sec2=operation/events/events"
|
pEvent["agent"] == 0
|
||||||
: localStorage["ip_address"]+"/index.php?sec=estado&sec2=operation/agentes/ver_agente&id_agente=" + pEvent['agent'];
|
? localStorage["ip_address"] +
|
||||||
|
"/index.php?sec=eventos&sec2=operation/events/events"
|
||||||
|
: localStorage["ip_address"] +
|
||||||
|
"/index.php?sec=estado&sec2=operation/agentes/ver_agente&id_agente=" +
|
||||||
|
pEvent["agent"];
|
||||||
|
|
||||||
var notification = new Notification(
|
var notification = new Notification(pEvent["title"], {
|
||||||
pEvent['title'],
|
body: even,
|
||||||
{
|
icon: "images/icon.png"
|
||||||
body: even,
|
});
|
||||||
icon: "images/icon.png"
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
// Add the link
|
// Add the link
|
||||||
notification.onclick = function (event) {
|
notification.onclick = function(event) {
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
window.open(url, '_blank');
|
window.open(url, "_blank");
|
||||||
}
|
};
|
||||||
|
|
||||||
// Close notification after 10 secs
|
// Close notification after 10 secs
|
||||||
setTimeout(function() {notification.close()}, 10000);
|
setTimeout(function() {
|
||||||
|
notification.close();
|
||||||
|
}, 10000);
|
||||||
}
|
}
|
||||||
|
|
||||||
function resetInterval () {
|
function resetInterval() {
|
||||||
if (refreshTimer) clearInterval(refreshTimer);
|
if (refreshTimer) clearInterval(refreshTimer);
|
||||||
refreshTimer = setInterval(main, localStorage["refresh"]*1000);
|
refreshTimer = setInterval(main, localStorage["refresh"] * 1000);
|
||||||
}
|
}
|
||||||
|
|
||||||
function initilise(){
|
function initilise() {
|
||||||
|
if (isFetching == null) isFetching = false;
|
||||||
|
if (localStorage["ip_address"] == undefined) {
|
||||||
|
localStorage["ip_address"] = "http://firefly.artica.es/pandora_demo";
|
||||||
|
}
|
||||||
|
|
||||||
if (isFetching == null) isFetching = false;
|
if (localStorage["api_pass"] == undefined) {
|
||||||
if(localStorage["ip_address"]==undefined){
|
localStorage["api_pass"] = "doreik0";
|
||||||
localStorage["ip_address"]="http://firefly.artica.es/pandora_demo";
|
}
|
||||||
}
|
|
||||||
|
if (localStorage["user_name"] == undefined) {
|
||||||
if(localStorage["api_pass"]==undefined){
|
localStorage["user_name"] = "demo";
|
||||||
localStorage["api_pass"]="doreik0";
|
}
|
||||||
}
|
|
||||||
|
if (localStorage["pass"] == undefined) {
|
||||||
if(localStorage["user_name"]==undefined){
|
localStorage["pass"] = "demo";
|
||||||
localStorage["user_name"]="demo";
|
}
|
||||||
}
|
if (localStorage["critical"] == null) {
|
||||||
|
localStorage["critical"] = "11";
|
||||||
if(localStorage["pass"]==undefined){
|
}
|
||||||
localStorage["pass"]="demo";
|
if (localStorage["informational"] == null) {
|
||||||
}
|
localStorage["informational"] = "1";
|
||||||
if(localStorage["critical"]==null){
|
}
|
||||||
localStorage["critical"]="11";
|
if (localStorage["maintenance"] == null) {
|
||||||
}
|
localStorage["maintenance"] = "10";
|
||||||
if(localStorage["informational"]==null){
|
}
|
||||||
localStorage["informational"]="1";
|
if (localStorage["normal"] == null) {
|
||||||
}
|
localStorage["normal"] = "6";
|
||||||
if(localStorage["maintenance"]==null){
|
}
|
||||||
localStorage["maintenance"]="10";
|
if (localStorage["warning"] == null) {
|
||||||
}
|
localStorage["warning"] = "2";
|
||||||
if(localStorage["normal"]==null){
|
}
|
||||||
localStorage["normal"]="6";
|
if (localStorage["events"] == null) {
|
||||||
}
|
localStorage["events"] = 20;
|
||||||
if(localStorage["warning"]==null){
|
}
|
||||||
localStorage["warning"]="2";
|
if (localStorage["refresh"] == null) {
|
||||||
}
|
localStorage["refresh"] = "10";
|
||||||
if(localStorage["events"]==null){
|
}
|
||||||
localStorage["events"]=20;
|
if (localStorage["ip_address"] == null) {
|
||||||
}
|
localStorage["ip_address"] = "http://firefly.artica.es/pandora_demo";
|
||||||
if(localStorage["refresh"]==null){
|
}
|
||||||
localStorage["refresh"]="10";
|
|
||||||
}
|
if (localStorage["api_pass"] == null) {
|
||||||
if(localStorage["ip_address"]==null){
|
localStorage["api_pass"] = "doreik0";
|
||||||
localStorage["ip_address"]="http://firefly.artica.es/pandora_demo";
|
}
|
||||||
}
|
|
||||||
|
if (localStorage["user_name"] == null) {
|
||||||
if(localStorage["api_pass"]==null){
|
localStorage["user_name"] = "demo";
|
||||||
localStorage["api_pass"]="doreik0";
|
}
|
||||||
}
|
|
||||||
|
if (localStorage["pass"] == null) {
|
||||||
if(localStorage["user_name"]==null){
|
localStorage["pass"] = "demo";
|
||||||
localStorage["user_name"]="demo";
|
}
|
||||||
}
|
if (localStorage["sound_alert"] == null) {
|
||||||
|
localStorage["sound_alert"] = "on";
|
||||||
if(localStorage["pass"]==null){
|
}
|
||||||
localStorage["pass"]="demo";
|
if (localStorage["changed"] == null) {
|
||||||
}
|
localStorage["changed"] = "false";
|
||||||
if(localStorage["sound_alert"]==null){
|
}
|
||||||
localStorage["sound_alert"]="on";
|
if (localStorage["new_events"] == null) {
|
||||||
}
|
localStorage["new_events"] = parseInt(localStorage["events"]);
|
||||||
if(localStorage["changed"]==null){
|
}
|
||||||
localStorage["changed"]="false";
|
if (localStorage["error"] == null) {
|
||||||
}
|
localStorage["error"] = true;
|
||||||
if(localStorage["new_events"]==null){
|
}
|
||||||
localStorage["new_events"]=parseInt(localStorage["events"]);
|
|
||||||
}
|
|
||||||
if(localStorage["error"]==null) {
|
|
||||||
localStorage["error"] = true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -8,7 +8,10 @@ $(document).ready(function() {
|
|||||||
bg = chrome.extension.getBackgroundPage();
|
bg = chrome.extension.getBackgroundPage();
|
||||||
|
|
||||||
// Display the information
|
// Display the information
|
||||||
if (bg.fetchEvents().length == 0) {
|
var events = bg.fetchEvents();
|
||||||
|
if (!events) {
|
||||||
|
showError("Failed to retrieve events, please retry");
|
||||||
|
} else if (events.length == 0) {
|
||||||
showError("No events");
|
showError("No events");
|
||||||
} else {
|
} else {
|
||||||
showEvents();
|
showEvents();
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "__MSG_name__",
|
"name": "__MSG_name__",
|
||||||
"version": "2.2",
|
"version": "2.3",
|
||||||
"manifest_version": 2,
|
"manifest_version": 2,
|
||||||
"description": "Pandora FMS Event viewer Chrome extension",
|
"description": "Pandora FMS Event viewer Chrome extension",
|
||||||
"homepage_url": "http://pandorafms.com",
|
"homepage_url": "http://pandorafms.com",
|
||||||
|
580
extras/deploy-scripts/pandora_deploy_community.sh
Normal file
580
extras/deploy-scripts/pandora_deploy_community.sh
Normal file
@ -0,0 +1,580 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# define variables
|
||||||
|
PANDORA_CONSOLE=/var/www/html/pandora_console
|
||||||
|
CONSOLE_PATH=/var/www/html/pandora_console
|
||||||
|
PANDORA_SERVER_CONF=/etc/pandora/pandora_server.conf
|
||||||
|
PANDORA_SERVER_BIN=/usr/bin/pandora_server
|
||||||
|
PANDORA_HA_BIN=/usr/bin/pandora_ha
|
||||||
|
PANDORA_TABLES_MIN=160
|
||||||
|
DBHOST=127.0.0.1
|
||||||
|
DBNAME=pandora
|
||||||
|
DBUSER=pandora
|
||||||
|
DBPASS=pandora
|
||||||
|
DBPORT=3306
|
||||||
|
S_VERSION='2021012801'
|
||||||
|
LOGFILE="/tmp/pandora-deploy-community-$(date +%F).log"
|
||||||
|
|
||||||
|
# Ansi color code variables
|
||||||
|
red="\e[0;91m"
|
||||||
|
green="\e[0;92m"
|
||||||
|
bold="\e[1m"
|
||||||
|
cyan="\e[0;36m"
|
||||||
|
reset="\e[0m"
|
||||||
|
|
||||||
|
# Functions
|
||||||
|
|
||||||
|
execute_cmd () {
|
||||||
|
local cmd="$1"
|
||||||
|
local msg="$2"
|
||||||
|
|
||||||
|
echo -e "${cyan}$msg...${reset}"
|
||||||
|
$cmd &>> $LOGFILE
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
echo -e "${red}Fail${reset}"
|
||||||
|
[ "$3" ] && echo "$3"
|
||||||
|
echo "Error installing Pandora FMS for detailed error please check log: $LOGFILE"
|
||||||
|
rm -rf $HOME/pandora_deploy_tmp &>> $LOGFILE
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
echo -e "\e[1A\e ${cyan}$msg...${reset} ${green}OK${reset}"
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
check_cmd_status () {
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
echo -e "${red}Fail${reset}"
|
||||||
|
[ "$1" ] && echo "$1"
|
||||||
|
echo "Error installing Pandora FMS for detailed error please check log: $LOGFILE"
|
||||||
|
rm -rf $HOME/pandora_deploy_tmp/*.rpm* &>> $LOGFILE
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
echo -e "${green}OK${reset}"
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
check_pre_pandora () {
|
||||||
|
export MYSQL_PWD=$DBPASS
|
||||||
|
|
||||||
|
echo -en "${cyan}Checking environment ... ${reset}"
|
||||||
|
rpm -qa | grep pandora &>> /dev/null && local fail=true
|
||||||
|
[ -d "$CONSOLE_PATH" ] && local fail=true
|
||||||
|
[ -f /usr/bin/pandora_server ] && local fail=true
|
||||||
|
echo "use $DBNAME" | mysql -uroot -P$DBPORT -h$DBHOST &>> /dev/null && local fail=true
|
||||||
|
|
||||||
|
[ ! $fail ]
|
||||||
|
check_cmd_status 'Error there is a current Pandora FMS installation on this node, please remove it to execute a clean install'
|
||||||
|
}
|
||||||
|
|
||||||
|
check_repo_connection () {
|
||||||
|
execute_cmd "ping -c 2 8.8.8.8" "Checking internet connection"
|
||||||
|
execute_cmd "ping -c 2 firefly.artica.es" "Checking Community repo"
|
||||||
|
execute_cmd "ping -c 2 support.artica.es" "Checking Enterprise repo"
|
||||||
|
}
|
||||||
|
|
||||||
|
check_root_permissions () {
|
||||||
|
echo -en "${cyan}Checking root account... ${reset}"
|
||||||
|
if [ "$(whoami)" != "root" ]; then
|
||||||
|
echo -e "${red}Fail${reset}"
|
||||||
|
echo "Please use a root account or sudo for installing PandoraFMS"
|
||||||
|
echo "Error installing Pandora FMS for detailed error please check log: $LOGFILE"
|
||||||
|
exit 1
|
||||||
|
|
||||||
|
else
|
||||||
|
echo -e "${green}OK${reset}"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
## Main
|
||||||
|
echo "Starting PandoraFMS Community deployment ver. $S_VERSION"
|
||||||
|
|
||||||
|
# Centos Version
|
||||||
|
if [ ! "$(grep -i centos /etc/redhat-release)" ]; then
|
||||||
|
printf "${red}Error this is not a Centos Base system, this installer is compatible with Centos systems only${reset}\n"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
execute_cmd "grep -i centos /etc/redhat-release" "Checking Centos" 'Error This is not a Centos Base system'
|
||||||
|
|
||||||
|
echo -en "${cyan}Check Centos Version...${reset}"
|
||||||
|
[ $(sed -nr 's/VERSION_ID+=\s*"([0-9])"$/\1/p' /etc/os-release) -eq '7' ]
|
||||||
|
check_cmd_status 'Error OS version, Centos 7 is expected'
|
||||||
|
|
||||||
|
# initialice logfile
|
||||||
|
execute_cmd "echo 'Starting community deployment' > $LOGFILE" "All installer activity is logged on $LOGFILE"
|
||||||
|
echo "Community installer version: $S_VERSION" >> $LOGFILE
|
||||||
|
|
||||||
|
# Pre checks
|
||||||
|
# Root permisions
|
||||||
|
check_root_permissions
|
||||||
|
|
||||||
|
# Pre installed pandora
|
||||||
|
check_pre_pandora
|
||||||
|
|
||||||
|
# Connectivity
|
||||||
|
check_repo_connection
|
||||||
|
|
||||||
|
# Systemd
|
||||||
|
execute_cmd "systemctl status" "Cheking SystemD" 'This is not a SystemD enable system, if tryng to use in a docker env plese check: https://github.com/pandorafms/pandorafms/tree/develop/extras/docker/centos8'
|
||||||
|
|
||||||
|
# Check memomry greather or equal to 2G
|
||||||
|
execute_cmd "[ $(grep MemTotal /proc/meminfo | awk '{print $2}') -le 2000000 ]" 'Checking memory (required: 2 GB)'
|
||||||
|
|
||||||
|
# Check disk size at least 10 Gb free space
|
||||||
|
execute_cmd "[ $(df -BM / | tail -1 | awk '{print $4}' | tr -d M) -gt 10000 ]" 'Checking Disk (required: 10 GB free min)'
|
||||||
|
|
||||||
|
# Execute tools check
|
||||||
|
execute_cmd "awk --version" 'Checking needed tools: awk'
|
||||||
|
execute_cmd "grep --version" 'Checking needed tools: grep'
|
||||||
|
execute_cmd "sed --version" 'Checking needed tools: sed'
|
||||||
|
execute_cmd "yum --version" 'Checking needed tools: yum'
|
||||||
|
|
||||||
|
# Creating working directory
|
||||||
|
rm -rf $HOME/pandora_deploy_tmp/*.rpm* &>> $LOGFILE
|
||||||
|
mkdir $HOME/pandora_deploy_tmp &>> $LOGFILE
|
||||||
|
execute_cmd "cd $HOME/pandora_deploy_tmp" "Moving to workspace: $HOME/pandora_deploy_tmp"
|
||||||
|
|
||||||
|
#Installing wget
|
||||||
|
execute_cmd "yum install -y wget" "Installing wget"
|
||||||
|
|
||||||
|
#Installing extra repositiries
|
||||||
|
extra_repos=" \
|
||||||
|
tar \
|
||||||
|
yum-utils \
|
||||||
|
https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm \
|
||||||
|
http://rpms.remirepo.net/enterprise/remi-release-7.rpm \
|
||||||
|
https://repo.percona.com/yum/percona-release-latest.noarch.rpm"
|
||||||
|
|
||||||
|
execute_cmd "yum install -y $extra_repos" "Installing extra repositories"
|
||||||
|
execute_cmd "yum-config-manager --enable remi-php73" "Configuring PHP"
|
||||||
|
|
||||||
|
# Install percona Database
|
||||||
|
[ -f /etc/resolv.conf ] && rm -rf /etc/my.cnf
|
||||||
|
execute_cmd "yum install -y Percona-Server-server-57" "Installing Percona Server"
|
||||||
|
|
||||||
|
# Console dependencies
|
||||||
|
console_dependencies=" \
|
||||||
|
php \
|
||||||
|
postfix \
|
||||||
|
php-mcrypt \
|
||||||
|
php-cli \
|
||||||
|
php-gd \
|
||||||
|
php-curl \
|
||||||
|
php-session \
|
||||||
|
php-mysqlnd \
|
||||||
|
php-ldap \
|
||||||
|
php-zip \
|
||||||
|
php-zlib \
|
||||||
|
php-fileinfo \
|
||||||
|
php-gettext \
|
||||||
|
php-snmp \
|
||||||
|
php-mbstring \
|
||||||
|
php-pecl-zip \
|
||||||
|
php-xmlrpc \
|
||||||
|
libxslt \
|
||||||
|
wget \
|
||||||
|
php-xml \
|
||||||
|
httpd \
|
||||||
|
mod_php \
|
||||||
|
atk \
|
||||||
|
avahi-libs \
|
||||||
|
cairo \
|
||||||
|
cups-libs \
|
||||||
|
fribidi \
|
||||||
|
gd \
|
||||||
|
gdk-pixbuf2 \
|
||||||
|
ghostscript \
|
||||||
|
graphite2 \
|
||||||
|
graphviz \
|
||||||
|
gtk2 \
|
||||||
|
harfbuzz \
|
||||||
|
hicolor-icon-theme \
|
||||||
|
hwdata \
|
||||||
|
jasper-libs \
|
||||||
|
lcms2 \
|
||||||
|
libICE \
|
||||||
|
libSM \
|
||||||
|
libXaw \
|
||||||
|
libXcomposite \
|
||||||
|
libXcursor \
|
||||||
|
libXdamage \
|
||||||
|
libXext \
|
||||||
|
libXfixes \
|
||||||
|
libXft \
|
||||||
|
libXi \
|
||||||
|
libXinerama \
|
||||||
|
libXmu \
|
||||||
|
libXrandr \
|
||||||
|
libXrender \
|
||||||
|
libXt \
|
||||||
|
libXxf86vm \
|
||||||
|
libcroco \
|
||||||
|
libdrm \
|
||||||
|
libfontenc \
|
||||||
|
libglvnd \
|
||||||
|
libglvnd-egl \
|
||||||
|
libglvnd-glx \
|
||||||
|
libpciaccess \
|
||||||
|
librsvg2 \
|
||||||
|
libthai \
|
||||||
|
libtool-ltdl \
|
||||||
|
libwayland-client \
|
||||||
|
libwayland-server \
|
||||||
|
libxshmfence \
|
||||||
|
mesa-libEGL \
|
||||||
|
mesa-libGL \
|
||||||
|
mesa-libgbm \
|
||||||
|
mesa-libglapi \
|
||||||
|
pango \
|
||||||
|
pixman \
|
||||||
|
xorg-x11-fonts-75dpi \
|
||||||
|
xorg-x11-fonts-misc \
|
||||||
|
poppler-data \
|
||||||
|
php-yaml \
|
||||||
|
http://firefly.artica.es/centos8/phantomjs-2.1.1-1.el7.x86_64.rpm"
|
||||||
|
execute_cmd "yum install -y $console_dependencies" "Installing Pandora FMS Console dependencies"
|
||||||
|
|
||||||
|
# Server dependencies
|
||||||
|
server_dependencies=" \
|
||||||
|
perl \
|
||||||
|
vim \
|
||||||
|
fping \
|
||||||
|
perl-IO-Compress \
|
||||||
|
nmap \
|
||||||
|
sudo \
|
||||||
|
perl-Time-HiRes \
|
||||||
|
nfdump \
|
||||||
|
net-snmp-utils \
|
||||||
|
http://www6.atomicorp.com/channels/atomic/centos/7/x86_64/RPMS/wmi-1.3.14-4.el7.art.x86_64.rpm"
|
||||||
|
execute_cmd "yum install -y $server_dependencies" "Installing Pandora FMS Server dependencies"
|
||||||
|
|
||||||
|
# SDK VMware perl dependencies
|
||||||
|
vmware_dependencies=" \
|
||||||
|
http://firefly.artica.es/centos8/VMware-vSphere-Perl-SDK-6.5.0-4566394.x86_64.rpm \
|
||||||
|
perl-JSON \
|
||||||
|
perl-Archive-Zip \
|
||||||
|
openssl-devel \
|
||||||
|
perl-Crypt-CBC \
|
||||||
|
perl-Digest-SHA \
|
||||||
|
http://firefly.artica.es/centos7/perl-Crypt-OpenSSL-AES-0.02-1.el7.x86_64.rpm"
|
||||||
|
execute_cmd "yum install -y $vmware_dependencies" "Installing SDK VMware perl dependencies"
|
||||||
|
|
||||||
|
# Instant client Oracle
|
||||||
|
oracle_dependencier=" \
|
||||||
|
https://download.oracle.com/otn_software/linux/instantclient/19800/oracle-instantclient19.8-basic-19.8.0.0.0-1.x86_64.rpm \
|
||||||
|
https://download.oracle.com/otn_software/linux/instantclient/19800/oracle-instantclient19.8-sqlplus-19.8.0.0.0-1.x86_64.rpm"
|
||||||
|
execute_cmd "yum install -y $vmware_dependencies" "Installing Oracle Instant client"
|
||||||
|
|
||||||
|
# Disabling SELINUX and firewalld
|
||||||
|
setenforce 0
|
||||||
|
sed -i -e "s/^SELINUX=.*/SELINUX=disabled/g" /etc/sysconfig/selinux
|
||||||
|
systemctl disable firewalld --now &>> $LOGFILE
|
||||||
|
|
||||||
|
cat > /etc/issue.net << EOF_banner
|
||||||
|
|
||||||
|
Welcome to Pandora FMS appliance on CentOS
|
||||||
|
------------------------------------------
|
||||||
|
$(ip addr | grep -w "inet" | grep -v "127.0.0.1" | grep -v "172.17.0.1" | awk '{print $2}' | awk -F '/' '{print "Go to http://"$1"/pandora_console to manage this server"}')
|
||||||
|
|
||||||
|
You can find more information at http://pandorafms.com
|
||||||
|
|
||||||
|
EOF_banner
|
||||||
|
|
||||||
|
rm -f /etc/issue
|
||||||
|
ln -s /etc/issue.net /etc/issue
|
||||||
|
|
||||||
|
execute_cmd "echo 'Banner /etc/issue.net' >> /etc/ssh/sshd_config" "Adding SSH banner"
|
||||||
|
|
||||||
|
#Configuring Database
|
||||||
|
execute_cmd "systemctl start mysqld" "Starting database engine"
|
||||||
|
export MYSQL_PWD=$(grep "temporary password" /var/log/mysqld.log | rev | cut -d' ' -f1 | rev)
|
||||||
|
echo """
|
||||||
|
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('Pandor4!');
|
||||||
|
UNINSTALL PLUGIN validate_password;
|
||||||
|
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('pandora');
|
||||||
|
""" | mysql --connect-expired-password -uroot
|
||||||
|
|
||||||
|
export MYSQL_PWD=$DBPASS
|
||||||
|
echo -en "${cyan}Creating Pandora FMS database...${reset}"
|
||||||
|
echo "create database $DBNAME" | mysql -uroot -P$DBPORT -h$DBHOST
|
||||||
|
check_cmd_status 'Error creating database pandora, is this an empty node? if you have a previus installation please contact with support.'
|
||||||
|
|
||||||
|
echo "GRANT ALL PRIVILEGES ON $DBNAME.* TO \"$DBUSER\"@'%' identified by \"$DBPASS\"" | mysql -uroot -P$DBPORT -h$DBHOST
|
||||||
|
|
||||||
|
#Generating my.cnf
|
||||||
|
POOL_SIZE=$(grep -i total /proc/meminfo | head -1 | awk '{printf "%.2f \n", $(NF-1)*0.4/1024}' | sed "s/\\..*$/M/g")
|
||||||
|
cat > /etc/my.cnf << EO_CONFIG_F
|
||||||
|
[mysqld]
|
||||||
|
datadir=/var/lib/mysql
|
||||||
|
socket=/var/lib/mysql/mysql.sock
|
||||||
|
user=mysql
|
||||||
|
character-set-server=utf8
|
||||||
|
skip-character-set-client-handshake
|
||||||
|
# Disabling symbolic-links is recommended to prevent assorted security risks
|
||||||
|
symbolic-links=0
|
||||||
|
# Mysql optimizations for Pandora FMS
|
||||||
|
# Please check the documentation in http://pandorafms.com for better results
|
||||||
|
|
||||||
|
max_allowed_packet = 64M
|
||||||
|
innodb_buffer_pool_size = $POOL_SIZE
|
||||||
|
innodb_lock_wait_timeout = 90
|
||||||
|
innodb_file_per_table
|
||||||
|
innodb_flush_log_at_trx_commit = 0
|
||||||
|
innodb_flush_method = O_DIRECT
|
||||||
|
innodb_log_file_size = 64M
|
||||||
|
innodb_log_buffer_size = 16M
|
||||||
|
innodb_io_capacity = 100
|
||||||
|
thread_cache_size = 8
|
||||||
|
thread_stack = 256K
|
||||||
|
max_connections = 100
|
||||||
|
|
||||||
|
key_buffer_size=4M
|
||||||
|
read_buffer_size=128K
|
||||||
|
read_rnd_buffer_size=128K
|
||||||
|
sort_buffer_size=128K
|
||||||
|
join_buffer_size=4M
|
||||||
|
|
||||||
|
query_cache_type = 1
|
||||||
|
query_cache_size = 64M
|
||||||
|
query_cache_min_res_unit = 2k
|
||||||
|
query_cache_limit = 256K
|
||||||
|
|
||||||
|
sql_mode=""
|
||||||
|
|
||||||
|
[mysqld_safe]
|
||||||
|
log-error=/var/log/mysqld.log
|
||||||
|
pid-file=/var/run/mysqld/mysqld.pid
|
||||||
|
|
||||||
|
EO_CONFIG_F
|
||||||
|
|
||||||
|
execute_cmd "systemctl restart mysqld" "Configuring database engine"
|
||||||
|
|
||||||
|
# Downloading Pandora Packages
|
||||||
|
execute_cmd "wget http://firefly.artica.es/pandorafms/latest/RHEL_CentOS/pandorafms_server-7.0NG.noarch.rpm" "Downloading Pandora FMS Server community"
|
||||||
|
execute_cmd "wget http://firefly.artica.es/pandorafms/latest/RHEL_CentOS/pandorafms_console-7.0NG.noarch.rpm" "Downloading Pandora FMS Console community"
|
||||||
|
execute_cmd "wget http://firefly.artica.es/centos7/pandorafms_agent_unix-7.0NG.751_x86_64.rpm" "Downloading Pandora FMS Agent community"
|
||||||
|
|
||||||
|
# Install Pandora
|
||||||
|
execute_cmd "yum install -y $HOME/pandora_deploy_tmp/pandorafms*.rpm" "installing PandoraFMS packages"
|
||||||
|
|
||||||
|
# Copy gotty utility
|
||||||
|
execute_cmd "wget https://github.com/yudai/gotty/releases/download/v1.0.1/gotty_linux_amd64.tar.gz" 'Dowloading gotty util'
|
||||||
|
tar xvzf gotty_linux_amd64.tar.gz &>> $LOGFILE
|
||||||
|
execute_cmd "mv gotty /usr/bin/" 'Installing gotty util'
|
||||||
|
|
||||||
|
# Enable Services
|
||||||
|
execute_cmd "systemctl enable mysqld --now" "Enabling Database service"
|
||||||
|
execute_cmd "systemctl enable httpd --now" "Enabling HTTPD service"
|
||||||
|
|
||||||
|
# Populate Database
|
||||||
|
echo -en "${cyan}Loading pandoradb.sql to $DBNAME database...${reset}"
|
||||||
|
mysql -u$DBUSER -P$DBPORT -h$DBHOST $DBNAME < $PANDORA_CONSOLE/pandoradb.sql &>> $LOGFILE
|
||||||
|
check_cmd_status 'Error Loading database schema'
|
||||||
|
|
||||||
|
echo -en "${cyan}Loading pandoradb_data.sql to $DBNAME database...${reset}"
|
||||||
|
mysql -u$DBUSER -P$DBPORT -h$DBHOST $DBNAME < $PANDORA_CONSOLE/pandoradb_data.sql &>> $LOGFILE
|
||||||
|
check_cmd_status 'Error Loading database schema data'
|
||||||
|
|
||||||
|
# Configure console
|
||||||
|
cat > $CONSOLE_PATH/include/config.php << EO_CONFIG_F
|
||||||
|
<?php
|
||||||
|
\$config["dbtype"] = "mysql";
|
||||||
|
\$config["dbname"]="$DBNAME";
|
||||||
|
\$config["dbuser"]="$DBUSER";
|
||||||
|
\$config["dbpass"]="$DBPASS";
|
||||||
|
\$config["dbhost"]="localhost";
|
||||||
|
\$config["homedir"]="$PANDORA_CONSOLE";
|
||||||
|
\$config["homeurl"]="/pandora_console";
|
||||||
|
error_reporting(0);
|
||||||
|
\$ownDir = dirname(__FILE__) . '/';
|
||||||
|
include (\$ownDir . "config_process.php");
|
||||||
|
|
||||||
|
EO_CONFIG_F
|
||||||
|
|
||||||
|
cat > /etc/httpd/conf.d/pandora.conf << EO_CONFIG_F
|
||||||
|
<Directory "/var/www/html">
|
||||||
|
Options Indexes FollowSymLinks
|
||||||
|
AllowOverride All
|
||||||
|
Require all granted
|
||||||
|
</Directory>
|
||||||
|
|
||||||
|
EO_CONFIG_F
|
||||||
|
|
||||||
|
# Add ws proxy options to apache.
|
||||||
|
cat >> /etc/httpd/conf.modules.d/00-proxy.conf << 'EO_HTTPD_MOD'
|
||||||
|
LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
|
||||||
|
|
||||||
|
EO_HTTPD_MOD
|
||||||
|
|
||||||
|
cat >> /etc/httpd/conf.d/wstunnel.conf << 'EO_HTTPD_WSTUNNEL'
|
||||||
|
ProxyRequests Off
|
||||||
|
<Proxy *>
|
||||||
|
Require all granted
|
||||||
|
</Proxy>
|
||||||
|
|
||||||
|
ProxyPass /ws ws://127.0.0.1:8080
|
||||||
|
ProxyPassReverse /ws ws://127.0.0.1:8080
|
||||||
|
|
||||||
|
EO_HTTPD_WSTUNNEL
|
||||||
|
|
||||||
|
# Temporal quitar htaccess
|
||||||
|
sed -i -e "s/php_flag engine off//g" $PANDORA_CONSOLE/images/.htaccess
|
||||||
|
sed -i -e "s/php_flag engine off//g" $PANDORA_CONSOLE/attachment/.htaccess
|
||||||
|
|
||||||
|
# Fixing console permissions
|
||||||
|
chmod 600 $CONSOLE_PATH/include/config.php
|
||||||
|
chown apache. $CONSOLE_PATH/include/config.php
|
||||||
|
mv $CONSOLE_PATH/install.php $CONSOLE_PATH/install.done
|
||||||
|
|
||||||
|
# Prepare php.ini
|
||||||
|
sed -i -e "s/^max_input_time.*/max_input_time = -1/g" /etc/php.ini
|
||||||
|
sed -i -e "s/^max_execution_time.*/max_execution_time = 0/g" /etc/php.ini
|
||||||
|
sed -i -e "s/^upload_max_filesize.*/upload_max_filesize = 800M/g" /etc/php.ini
|
||||||
|
sed -i -e "s/^memory_limit.*/memory_limit = 500M/g" /etc/php.ini
|
||||||
|
|
||||||
|
cat > /var/www/html/index.html << EOF_INDEX
|
||||||
|
<meta HTTP-EQUIV="REFRESH" content="0; url=/pandora_console/">
|
||||||
|
EOF_INDEX
|
||||||
|
|
||||||
|
execute_cmd "systemctl restart httpd" "Restarting httpd after configuration"
|
||||||
|
|
||||||
|
# prepare snmptrapd
|
||||||
|
cat > /etc/snmp/snmptrapd.conf << EOF
|
||||||
|
authCommunity log public
|
||||||
|
disableAuthorization yes
|
||||||
|
EOF
|
||||||
|
|
||||||
|
# Prepare Server conf
|
||||||
|
sed -i -e "s/^dbhost.*/dbhost $DBHOST/g" $PANDORA_SERVER_CONF
|
||||||
|
sed -i -e "s/^dbname.*/dbname $DBNAME/g" $PANDORA_SERVER_CONF
|
||||||
|
sed -i -e "s/^dbuser.*/dbuser $DBUSER/g" $PANDORA_SERVER_CONF
|
||||||
|
sed -i -e "s|^dbpass.*|dbpass $DBPASS|g" $PANDORA_SERVER_CONF
|
||||||
|
sed -i -e "s/^dbport.*/dbport $DBPORT/g" $PANDORA_SERVER_CONF
|
||||||
|
|
||||||
|
# Set Oracle environment for pandora_server
|
||||||
|
cat > /etc/pandora/pandora_server.env << 'EOF_ENV'
|
||||||
|
#!/bin/bash
|
||||||
|
VERSION=19.8
|
||||||
|
export PATH=$PATH:$HOME/bin:/usr/lib/oracle/$VERSION/client64/bin
|
||||||
|
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/oracle/$VERSION/client64/lib
|
||||||
|
export ORACLE_HOME=/usr/lib/oracle/$VERSION/client64
|
||||||
|
EOF_ENV
|
||||||
|
|
||||||
|
# Kernel optimization
|
||||||
|
cat >> /etc/sysctl.conf <<EO_KO
|
||||||
|
# Pandora FMS Optimization
|
||||||
|
|
||||||
|
# default=5
|
||||||
|
net.ipv4.tcp_syn_retries = 3
|
||||||
|
|
||||||
|
# default=5
|
||||||
|
net.ipv4.tcp_synack_retries = 3
|
||||||
|
|
||||||
|
# default=1024
|
||||||
|
net.ipv4.tcp_max_syn_backlog = 65536
|
||||||
|
|
||||||
|
# default=124928
|
||||||
|
net.core.wmem_max = 8388608
|
||||||
|
|
||||||
|
# default=131071
|
||||||
|
net.core.rmem_max = 8388608
|
||||||
|
|
||||||
|
# default = 128
|
||||||
|
net.core.somaxconn = 1024
|
||||||
|
|
||||||
|
# default = 20480
|
||||||
|
net.core.optmem_max = 81920
|
||||||
|
|
||||||
|
EO_KO
|
||||||
|
|
||||||
|
execute_cmd "sysctl --system" "Applying Kernel optimization"
|
||||||
|
|
||||||
|
# Fix pandora_server.{log,error} permissions to allow Console check them
|
||||||
|
chown pandora:apache /var/log/pandora
|
||||||
|
chmod g+s /var/log/pandora
|
||||||
|
|
||||||
|
cat > /etc/logrotate.d/pandora_server <<EO_LR
|
||||||
|
/var/log/pandora/pandora_server.log
|
||||||
|
/var/log/pandora/web_socket.log
|
||||||
|
/var/log/pandora/pandora_server.error {
|
||||||
|
su root apache
|
||||||
|
weekly
|
||||||
|
missingok
|
||||||
|
size 300000
|
||||||
|
rotate 3
|
||||||
|
maxage 90
|
||||||
|
compress
|
||||||
|
notifempty
|
||||||
|
copytruncate
|
||||||
|
create 660 pandora apache
|
||||||
|
}
|
||||||
|
|
||||||
|
/var/log/pandora/pandora_snmptrap.log {
|
||||||
|
su root apache
|
||||||
|
weekly
|
||||||
|
missingok
|
||||||
|
size 500000
|
||||||
|
rotate 1
|
||||||
|
maxage 30
|
||||||
|
notifempty
|
||||||
|
copytruncate
|
||||||
|
create 660 pandora apache
|
||||||
|
}
|
||||||
|
|
||||||
|
EO_LR
|
||||||
|
|
||||||
|
cat > /etc/logrotate.d/pandora_agent <<EO_LRA
|
||||||
|
/var/log/pandora/pandora_agent.log {
|
||||||
|
su root apache
|
||||||
|
weekly
|
||||||
|
missingok
|
||||||
|
size 300000
|
||||||
|
rotate 3
|
||||||
|
maxage 90
|
||||||
|
compress
|
||||||
|
notifempty
|
||||||
|
copytruncate
|
||||||
|
}
|
||||||
|
|
||||||
|
EO_LRA
|
||||||
|
|
||||||
|
chmod 0644 /etc/logrotate.d/pandora_server
|
||||||
|
chmod 0644 /etc/logrotate.d/pandora_agent
|
||||||
|
|
||||||
|
# Add websocket engine start script.
|
||||||
|
mv /var/www/html/pandora_console/pandora_websocket_engine /etc/init.d/
|
||||||
|
chmod +x /etc/init.d/pandora_websocket_engine
|
||||||
|
|
||||||
|
# Start Websocket engine
|
||||||
|
/etc/init.d/pandora_websocket_engine start &>> $LOGFILE
|
||||||
|
|
||||||
|
# Configure websocket to be started at start.
|
||||||
|
systemctl enable pandora_websocket_engine &>> $LOGFILE
|
||||||
|
|
||||||
|
# Enable pandora ha service
|
||||||
|
systemctl enable pandora_server --now &>> $LOGFILE
|
||||||
|
execute_cmd "systemctl start pandora_server" "Starting Pandora FMS Server"
|
||||||
|
|
||||||
|
# starting tentacle server
|
||||||
|
systemctl enable tentacle_serverd &>> $LOGFILE
|
||||||
|
execute_cmd "service tentacle_serverd start" "Starting Tentacle Server"
|
||||||
|
|
||||||
|
# Enabling condole cron
|
||||||
|
execute_cmd "echo \"* * * * * root wget -q -O - --no-check-certificate http://127.0.0.1/pandora_console/enterprise/cron.php >> $PANDORA_CONSOLE/log/cron.log\" >> /etc/crontab" "Enabling Pandora FMS Console cron"
|
||||||
|
echo "* * * * * root wget -q -O - --no-check-certificate http://127.0.0.1/pandora_console/enterprise/cron.php >> $PANDORA_CONSOLE/log/cron.log" >> /etc/crontab
|
||||||
|
## Enabling agent
|
||||||
|
systemctl enable pandora_agent_daemon &>> $LOGFILE
|
||||||
|
execute_cmd "systemctl start pandora_agent_daemon" "starting Pandora FMS Agent"
|
||||||
|
|
||||||
|
execute_cmd "echo done" "Pandora FMS Community installed"
|
||||||
|
cd
|
||||||
|
execute_cmd "rm -rf $HOME/pandora_deploy_tmp" "Removing temporary files"
|
||||||
|
|
||||||
|
GREEN='\033[01;32m'
|
||||||
|
NONE='\033[0m'
|
||||||
|
|
||||||
|
[ "$(curl -s ifconfig.me)" ] && ipplublic=$(curl -s ifconfig.me)
|
||||||
|
printf " -> Go to Public ${green}http://"$ipplublic"/pandora_console${reset} to manage this server"
|
||||||
|
ip addr | grep -w "inet" | grep -v "127.0.0.1" | grep -v -e "172.1[0-9].0.1" | awk '{print $2}' | awk -v g=$GREEN -v n=$NONE -F '/' '{printf "\n -> Go to Local "g"http://"$1"/pandora_console"n" to manage this server \n -> Use this credentials to login in the console "g"[ User: admin / Password: pandora ]"n" \n"}'
|
@ -9,7 +9,7 @@ RUN dnf install -y --setopt=tsflags=nodocs \
|
|||||||
http://rpms.remirepo.net/enterprise/remi-release-8.rpm
|
http://rpms.remirepo.net/enterprise/remi-release-8.rpm
|
||||||
|
|
||||||
RUN dnf module reset -y php && dnf module install -y php:remi-7.3
|
RUN dnf module reset -y php && dnf module install -y php:remi-7.3
|
||||||
RUN dnf config-manager --set-enabled PowerTools
|
RUN dnf config-manager --set-enabled powertools
|
||||||
|
|
||||||
# Install console
|
# Install console
|
||||||
RUN dnf install -y --setopt=tsflags=nodocs \
|
RUN dnf install -y --setopt=tsflags=nodocs \
|
||||||
@ -88,7 +88,7 @@ RUN dnf install -y --setopt=tsflags=nodocs \
|
|||||||
xorg-x11-fonts-75dpi \
|
xorg-x11-fonts-75dpi \
|
||||||
xorg-x11-fonts-misc \
|
xorg-x11-fonts-misc \
|
||||||
poppler-data \
|
poppler-data \
|
||||||
php-yaml; yum clean all
|
php-yaml
|
||||||
|
|
||||||
RUN mkdir -p /run/php-fpm/ ; chown -R root:apache /run/php-fpm/
|
RUN mkdir -p /run/php-fpm/ ; chown -R root:apache /run/php-fpm/
|
||||||
# not installed perl-Net-Telnet gtk-update-icon-cach ghostscript-fonts
|
# not installed perl-Net-Telnet gtk-update-icon-cach ghostscript-fonts
|
||||||
@ -242,16 +242,31 @@ RUN dnf install -y --setopt=tsflags=nodocs \
|
|||||||
perl-DBD-MySQL \
|
perl-DBD-MySQL \
|
||||||
perl-DBI \
|
perl-DBI \
|
||||||
initscripts \
|
initscripts \
|
||||||
|
vim \
|
||||||
|
fping \
|
||||||
|
perl-IO-Compress \
|
||||||
|
perl-Time-HiRes \
|
||||||
|
perl-Math-Complex \
|
||||||
|
libnsl \
|
||||||
|
mysql \
|
||||||
|
java \
|
||||||
|
net-snmp-utils \
|
||||||
net-tools \
|
net-tools \
|
||||||
nmap-ncat \
|
nmap-ncat \
|
||||||
nmap \
|
nmap \
|
||||||
net-snmp-utils \
|
net-snmp-utils \
|
||||||
sudo \
|
sudo \
|
||||||
http://firefly.artica.es/centos8/perl-Net-Telnet-3.04-1.el8.noarch.rpm \
|
http://firefly.artica.es/centos8/perl-Net-Telnet-3.04-1.el8.noarch.rpm \
|
||||||
http://www6.atomicorp.com/channels/atomic/centos/7/x86_64/RPMS/wmi-1.3.14-4.el7.art.x86_64.rpm
|
http://firefly.artica.es/centos8/wmi-1.3.14-4.el7.art.x86_64.rpm
|
||||||
|
|
||||||
|
# install utils
|
||||||
|
RUN dnf install -y supervisor crontabs http://firefly.artica.es/centos8/phantomjs-2.1.1-1.el7.x86_64.rpm --setopt=tsflags=nodocs
|
||||||
|
# SDK VMware perl dependencies
|
||||||
|
RUN dnf install -y http://firefly.artica.es/centos8/perl-Crypt-OpenSSL-AES-0.02-1.el8.x86_64.rpm http://firefly.artica.es/centos8/perl-Crypt-SSLeay-0.73_07-1.gf.el8.x86_64.rpm perl-Net-HTTP perl-libwww-perl openssl-devel perl-Crypt-CBC perl-Bytes-Random-Secure perl-Crypt-Random-Seed perl-Math-Random-ISAAC perl-JSON http://firefly.artica.es/centos8/VMware-vSphere-Perl-SDK-6.5.0-4566394.x86_64.rpm
|
||||||
|
# Instant client Oracle
|
||||||
|
RUN dnf install -y https://download.oracle.com/otn_software/linux/instantclient/19800/oracle-instantclient19.8-basic-19.8.0.0.0-1.x86_64.rpm https://download.oracle.com/otn_software/linux/instantclient/19800/oracle-instantclient19.8-sqlplus-19.8.0.0.0-1.x86_64.rpm
|
||||||
|
|
||||||
RUN dnf install -y supervisor crontabs mysql http://firefly.artica.es/centos8/phantomjs-2.1.1-1.el7.x86_64.rpm --setopt=tsflags=nodocs
|
RUN dnf install -y supervisor crontabs http://firefly.artica.es/centos8/phantomjs-2.1.1-1.el7.x86_64.rpm --setopt=tsflags=nodocs
|
||||||
|
|
||||||
|
|
||||||
EXPOSE 80 443 41121 162/udp
|
EXPOSE 80 443 41121 162/udp
|
||||||
|
@ -64,6 +64,7 @@ wget $oconsoleurl
|
|||||||
wget $oserverurl
|
wget $oserverurl
|
||||||
|
|
||||||
if [ "$BASEBUILD" == 1 ] ; then
|
if [ "$BASEBUILD" == 1 ] ; then
|
||||||
|
docker pull centos:8
|
||||||
# Open Base image
|
# Open Base image
|
||||||
echo "building Base el8 image"
|
echo "building Base el8 image"
|
||||||
cd $DOCKER_PATH/base
|
cd $DOCKER_PATH/base
|
||||||
@ -71,9 +72,12 @@ if [ "$BASEBUILD" == 1 ] ; then
|
|||||||
echo "Taging Open stack el8 latest image before upload"
|
echo "Taging Open stack el8 latest image before upload"
|
||||||
docker tag $OBASE_IMAGE:$VERSION $OBASE_IMAGE:latest
|
docker tag $OBASE_IMAGE:$VERSION $OBASE_IMAGE:latest
|
||||||
echo -e ">>>> \n"
|
echo -e ">>>> \n"
|
||||||
|
else
|
||||||
|
docker pull pandorafms/pandorafms-open-base-el8
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$DBBUILD" == 1 ] ; then
|
if [ "$DBBUILD" == 1 ] ; then
|
||||||
|
docker pull percona:5.7
|
||||||
# Percona image
|
# Percona image
|
||||||
echo "building Percona image"
|
echo "building Percona image"
|
||||||
cd $OPEN/extras/docker/percona
|
cd $OPEN/extras/docker/percona
|
||||||
|
@ -1,245 +1,262 @@
|
|||||||
if ("undefined" == typeof(PandoraChrome)) {
|
/* globals Components, req */
|
||||||
var PandoraChrome = {};
|
if ("undefined" == typeof PandoraChrome) {
|
||||||
var prefManager = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefService).getBranch("pandora.");
|
var PandoraChrome = {};
|
||||||
|
var prefManager = Components.classes["@mozilla.org/preferences-service;1"]
|
||||||
|
.getService(Components.interfaces.nsIPrefService)
|
||||||
|
.getBranch("pandora.");
|
||||||
|
|
||||||
var timer = null;
|
var timer = null;
|
||||||
var allEvents=new Array();
|
var allEvents = new Array();
|
||||||
var newEvents=new Array();
|
var newEvents = new Array();
|
||||||
var oldEvents=new Array();
|
var oldEvents = new Array();
|
||||||
var api_div_numbers=21;
|
var api_div_numbers = 21;
|
||||||
};
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
PandoraChrome.fn = function(){
|
|
||||||
return {
|
|
||||||
displaySideBar: function(){
|
|
||||||
PandoraChrome.fn.hideNotification();
|
|
||||||
PandoraChrome.fn.hideBadge();
|
|
||||||
toggleSidebar('viewPandoraSidebar');
|
|
||||||
},
|
|
||||||
displayDialog : function(){
|
|
||||||
window.openDialog("chrome://pandorasidebar/content/options.xul", "","chrome, centerscreen, dialog, modal, resizable=no", null).focus();
|
|
||||||
},
|
|
||||||
handleClick: function(e){
|
|
||||||
if(e.button == 0){
|
|
||||||
toggleSidebar('viewPandoraSidebar');
|
|
||||||
PandoraChrome.fn.setIcon('icon16');
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
Onloading: function () {
|
|
||||||
if(prefManager.getBoolPref("firstLoad")){
|
|
||||||
prefManager.setIntPref("new_events",prefManager.getIntPref("events"));
|
|
||||||
prefManager.setBoolPref("firstLoad",false);
|
|
||||||
}
|
|
||||||
|
|
||||||
if(timer) {
|
PandoraChrome.fn = (function() {
|
||||||
clearTimeout(timer);
|
return {
|
||||||
}
|
displaySideBar: function() {
|
||||||
timer =setTimeout(PandoraChrome.fn.main , 100 );
|
PandoraChrome.fn.hideNotification();
|
||||||
},
|
PandoraChrome.fn.hideBadge();
|
||||||
|
toggleSidebar("viewPandoraSidebar");
|
||||||
|
},
|
||||||
|
displayDialog: function() {
|
||||||
|
window
|
||||||
|
.openDialog(
|
||||||
|
"chrome://pandorasidebar/content/options.xul",
|
||||||
|
"",
|
||||||
|
"chrome, centerscreen, dialog, modal, resizable=no",
|
||||||
|
null
|
||||||
|
)
|
||||||
|
.focus();
|
||||||
|
},
|
||||||
|
handleClick: function(e) {
|
||||||
|
if (e.button == 0) {
|
||||||
|
toggleSidebar("viewPandoraSidebar");
|
||||||
|
PandoraChrome.fn.setIcon("icon16");
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
Onloading: function() {
|
||||||
|
if (prefManager.getBoolPref("firstLoad")) {
|
||||||
|
prefManager.setIntPref("new_events", prefManager.getIntPref("events"));
|
||||||
|
prefManager.setBoolPref("firstLoad", false);
|
||||||
|
}
|
||||||
|
|
||||||
main: function() {
|
if (timer) {
|
||||||
// alert('test_main');
|
clearTimeout(timer);
|
||||||
var url=prefManager.getCharPref("ip_address")+'/include/api.php?op=get&op2=events&return_type=csv&apipass='+prefManager.getCharPref("api_pass")+'&user='+prefManager.getCharPref("user_name")+'&pass='+prefManager.getCharPref("pass");
|
}
|
||||||
var feedUrl = url;
|
timer = setTimeout(PandoraChrome.fn.main, 100);
|
||||||
prefManager.setBoolPref("data_check", true);
|
},
|
||||||
req = new XMLHttpRequest();
|
|
||||||
req.onload = PandoraChrome.fn.handleResponse;
|
|
||||||
req.onerror = PandoraChrome.fn.handleError;
|
|
||||||
req.open("GET", feedUrl, true);
|
|
||||||
req.send(null);
|
|
||||||
},
|
|
||||||
|
|
||||||
handleError: function() {
|
main: function() {
|
||||||
//alert("error");
|
// alert('test_main');
|
||||||
prefManager.setCharPref("data",null);
|
var url =
|
||||||
prefManager.setBoolPref("data_check", false);
|
prefManager.getCharPref("ip_address") +
|
||||||
if(timer) {
|
"/include/api.php?op=get&op2=events&return_type=json";
|
||||||
clearTimeout(timer);
|
var feedUrl = url;
|
||||||
}
|
var data = new FormData();
|
||||||
timer =setTimeout(PandoraChrome.fn.main , 1000);
|
|
||||||
},
|
|
||||||
|
|
||||||
handleResponse: function () {
|
data.append("apipass", prefManager.getCharPref("api_pass"));
|
||||||
var doc = req.responseText;
|
data.append("user", prefManager.getCharPref("user_name"));
|
||||||
if (doc=="auth error") {
|
data.append("pass", prefManager.getCharPref("pass"));
|
||||||
prefManager.setCharPref("data",null);
|
|
||||||
prefManager.setBoolPref("data_check", false);
|
|
||||||
if(timer) {
|
|
||||||
clearTimeout(timer);
|
|
||||||
}
|
|
||||||
timer =setTimeout(PandoraChrome.fn.main , 1000);
|
|
||||||
|
|
||||||
}
|
prefManager.setBoolPref("data_check", true);
|
||||||
else{
|
req = new XMLHttpRequest();
|
||||||
var n=doc.search("404 Not Found");
|
req.onload = PandoraChrome.fn.handleResponse;
|
||||||
if(n>0){
|
req.onerror = PandoraChrome.fn.handleError;
|
||||||
|
req.open("POST", feedUrl, true);
|
||||||
|
req.send(data);
|
||||||
|
},
|
||||||
|
|
||||||
prefManager.setCharPref("data",null);
|
handleError: function() {
|
||||||
prefManager.setBoolPref("data_check", false);
|
//alert("error");
|
||||||
if(timer) {
|
prefManager.setCharPref("data", null);
|
||||||
clearTimeout(timer);
|
prefManager.setBoolPref("data_check", false);
|
||||||
}
|
if (timer) {
|
||||||
timer =setTimeout(PandoraChrome.fn.main , 1000);
|
clearTimeout(timer);
|
||||||
}
|
}
|
||||||
|
timer = setTimeout(PandoraChrome.fn.main, 1000);
|
||||||
else{
|
},
|
||||||
prefManager.setBoolPref("data_check", true);
|
|
||||||
|
|
||||||
prefManager.setCharPref("data",doc);
|
handleResponse: function() {
|
||||||
PandoraChrome.fn.getEvents(doc);
|
var doc = req.responseText;
|
||||||
}
|
if (doc == "auth error") {
|
||||||
}
|
prefManager.setCharPref("data", null);
|
||||||
},
|
prefManager.setBoolPref("data_check", false);
|
||||||
|
if (timer) {
|
||||||
|
clearTimeout(timer);
|
||||||
|
}
|
||||||
|
timer = setTimeout(PandoraChrome.fn.main, 1000);
|
||||||
|
} else {
|
||||||
|
var n = doc.search("404 Not Found");
|
||||||
|
if (n > 0) {
|
||||||
|
prefManager.setCharPref("data", null);
|
||||||
|
prefManager.setBoolPref("data_check", false);
|
||||||
|
if (timer) {
|
||||||
|
clearTimeout(timer);
|
||||||
|
}
|
||||||
|
timer = setTimeout(PandoraChrome.fn.main, 1000);
|
||||||
|
} else {
|
||||||
|
prefManager.setBoolPref("data_check", true);
|
||||||
|
|
||||||
getEvents: function (reply){
|
prefManager.setCharPref("data", doc);
|
||||||
if(reply.length>100){
|
PandoraChrome.fn.getEvents(doc);
|
||||||
all_event_array=reply.split("\n");
|
}
|
||||||
allEvents=PandoraChrome.fn.divideArray(all_event_array);
|
}
|
||||||
if(oldEvents.length==0){
|
},
|
||||||
oldEvents=allEvents;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
getEvents: function(reply) {
|
||||||
newEvents=PandoraChrome.fn.fetchNewEvents(allEvents,oldEvents);
|
if (reply.length > 100) {
|
||||||
if(newEvents.length!=0){
|
all_event_array = reply.split("\n");
|
||||||
for(var k=0;k<newEvents.length;k++){
|
allEvents = PandoraChrome.fn.divideArray(all_event_array);
|
||||||
var temp=prefManager.getIntPref("new_events")+1;
|
if (oldEvents.length == 0) {
|
||||||
prefManager.setIntPref("new_events",temp);
|
oldEvents = allEvents;
|
||||||
PandoraChrome.fn.showNotification(k);
|
|
||||||
PandoraChrome.fn.showBadge(prefManager.getIntPref("new_events"));
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
oldEvents=allEvents;
|
|
||||||
if(prefManager.getIntPref("new_events")>0){
|
|
||||||
PandoraChrome.fn.showBadge(prefManager.getIntPref("new_events"));
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
PandoraChrome.fn.hideBadge();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if(timer) {
|
|
||||||
clearTimeout(timer);
|
|
||||||
}
|
|
||||||
timer =setTimeout(PandoraChrome.fn.main , prefManager.getIntPref("refresh")*1000 );
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
showNotification: function(eventId){
|
|
||||||
//alert("notify"+eventId);
|
|
||||||
if(prefManager.getBoolPref("sound_alert")){
|
|
||||||
if(newEvents[eventId][19]=="Critical"){
|
|
||||||
Sounds.playSound(prefManager.getIntPref("critical"));
|
|
||||||
}
|
|
||||||
if(newEvents[eventId][19]=="Informational"){
|
|
||||||
Sounds.playSound(prefManager.getIntPref("informational"));
|
|
||||||
}
|
|
||||||
if(newEvents[eventId][19]=="Maintenance"){
|
|
||||||
Sounds.playSound(prefManager.getIntPref("maintenance"));
|
|
||||||
}
|
|
||||||
if(newEvents[eventId][19]=="Normal"){
|
|
||||||
Sounds.playSound(prefManager.getIntPref("normal"));
|
|
||||||
}
|
|
||||||
if(newEvents[eventId][19]=="Warning"){
|
|
||||||
Sounds.playSound(prefManager.getIntPref("warning"));
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
var newEve = document.getElementById('newEvent');
|
|
||||||
newEve.label="Last Event : "+newEvents[eventId][6];
|
|
||||||
var id;
|
|
||||||
if(newEvents[eventId][9]==0){
|
|
||||||
id=".";
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
id= " in the module with Id "+ newEvents[eventId][9] + ".";
|
|
||||||
}
|
|
||||||
|
|
||||||
var event = newEvents[eventId][14]+" : "+newEvents[eventId][17]+". Event occured at "+ newEvents[eventId][5]+id;
|
|
||||||
newEve.tooltipText=event;
|
|
||||||
$('#newEvent').show();
|
|
||||||
return;
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
hideNotification:function(){
|
|
||||||
//alert("Hide Notif");
|
|
||||||
$('#newEvent').hide();
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
showBadge: function (txt) {
|
|
||||||
//alert(txt);
|
|
||||||
var updateCount = document.getElementById('temp');
|
|
||||||
updateCount.setAttribute("style","cursor:pointer; font-size:11px; color:#123863; font-weight:bold; display:none;") ;
|
|
||||||
updateCount.label=txt;
|
|
||||||
$('#temp').show();
|
|
||||||
},
|
|
||||||
|
|
||||||
hideBadge: function () {
|
|
||||||
var updateCount = document.getElementById('temp');
|
|
||||||
//alert("hide B");
|
|
||||||
$('#temp').hide();
|
|
||||||
},
|
|
||||||
|
|
||||||
divideArray: function (e_array){
|
|
||||||
var Events=new Array();
|
|
||||||
for(var i=0;i<e_array.length;i++){
|
|
||||||
var event=e_array[i].split(";");
|
|
||||||
Events.push(event);
|
|
||||||
}
|
|
||||||
return Events;
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
fetchNewEvents: function (A,B){
|
|
||||||
var arrDiff = new Array();
|
|
||||||
// alert(A.length);
|
|
||||||
//alert(B.length);
|
|
||||||
for(var i = 0; i < A.length; i++) {
|
|
||||||
var id = false;
|
|
||||||
for(var j = 0; j < B.length; j++) {
|
|
||||||
if(A[i][0] == B[j][0]) {
|
|
||||||
id = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if(!id) {
|
|
||||||
arrDiff.push(A[i]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return arrDiff;
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
getNotification:function (eventId){
|
|
||||||
var title=newEvents[eventId][6];
|
|
||||||
var id;
|
|
||||||
if(newEvents[eventId][9]==0){
|
|
||||||
id=".";
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
id= " in the module with Id "+ newEvents[eventId][9] + ".";
|
|
||||||
}
|
|
||||||
|
|
||||||
var event = newEvents[eventId][14]+" : "+newEvents[eventId][17]+". Event occured at "+ newEvents[eventId][5]+id;
|
|
||||||
//var event=newEvents[eventId][14]+' '+newEvents[eventId][17]+' Event occured at:'+ newEvents[eventId][5] +'in the module with Id '+ newEvents[eventId][9];
|
|
||||||
return '<a>' + title + '</a> <br/> <span style="font-size:80%">' + event + '</span>';
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
newEvents = PandoraChrome.fn.fetchNewEvents(allEvents, oldEvents);
|
||||||
}();
|
if (newEvents.length != 0) {
|
||||||
|
for (var k = 0; k < newEvents.length; k++) {
|
||||||
|
var temp = prefManager.getIntPref("new_events") + 1;
|
||||||
|
prefManager.setIntPref("new_events", temp);
|
||||||
|
PandoraChrome.fn.showNotification(k);
|
||||||
|
PandoraChrome.fn.showBadge(prefManager.getIntPref("new_events"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
oldEvents = allEvents;
|
||||||
|
if (prefManager.getIntPref("new_events") > 0) {
|
||||||
|
PandoraChrome.fn.showBadge(prefManager.getIntPref("new_events"));
|
||||||
|
} else {
|
||||||
|
PandoraChrome.fn.hideBadge();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (timer) {
|
||||||
|
clearTimeout(timer);
|
||||||
|
}
|
||||||
|
timer = setTimeout(
|
||||||
|
PandoraChrome.fn.main,
|
||||||
|
prefManager.getIntPref("refresh") * 1000
|
||||||
|
);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
showNotification: function(eventId) {
|
||||||
|
//alert("notify"+eventId);
|
||||||
|
if (prefManager.getBoolPref("sound_alert")) {
|
||||||
|
if (newEvents[eventId][19] == "Critical") {
|
||||||
|
Sounds.playSound(prefManager.getIntPref("critical"));
|
||||||
|
}
|
||||||
|
if (newEvents[eventId][19] == "Informational") {
|
||||||
|
Sounds.playSound(prefManager.getIntPref("informational"));
|
||||||
|
}
|
||||||
|
if (newEvents[eventId][19] == "Maintenance") {
|
||||||
|
Sounds.playSound(prefManager.getIntPref("maintenance"));
|
||||||
|
}
|
||||||
|
if (newEvents[eventId][19] == "Normal") {
|
||||||
|
Sounds.playSound(prefManager.getIntPref("normal"));
|
||||||
|
}
|
||||||
|
if (newEvents[eventId][19] == "Warning") {
|
||||||
|
Sounds.playSound(prefManager.getIntPref("warning"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var newEve = document.getElementById("newEvent");
|
||||||
|
newEve.label = "Last Event : " + newEvents[eventId][6];
|
||||||
|
var id;
|
||||||
|
if (newEvents[eventId][9] == 0) {
|
||||||
|
id = ".";
|
||||||
|
} else {
|
||||||
|
id = " in the module with Id " + newEvents[eventId][9] + ".";
|
||||||
|
}
|
||||||
|
|
||||||
|
var event =
|
||||||
|
newEvents[eventId][14] +
|
||||||
|
" : " +
|
||||||
|
newEvents[eventId][17] +
|
||||||
|
". Event occured at " +
|
||||||
|
newEvents[eventId][5] +
|
||||||
|
id;
|
||||||
|
newEve.tooltipText = event;
|
||||||
|
$("#newEvent").show();
|
||||||
|
return;
|
||||||
|
},
|
||||||
|
|
||||||
|
hideNotification: function() {
|
||||||
|
//alert("Hide Notif");
|
||||||
|
$("#newEvent").hide();
|
||||||
|
},
|
||||||
|
|
||||||
|
showBadge: function(txt) {
|
||||||
|
//alert(txt);
|
||||||
|
var updateCount = document.getElementById("temp");
|
||||||
|
updateCount.setAttribute(
|
||||||
|
"style",
|
||||||
|
"cursor:pointer; font-size:11px; color:#123863; font-weight:bold; display:none;"
|
||||||
|
);
|
||||||
|
updateCount.label = txt;
|
||||||
|
$("#temp").show();
|
||||||
|
},
|
||||||
|
|
||||||
|
hideBadge: function() {
|
||||||
|
var updateCount = document.getElementById("temp");
|
||||||
|
//alert("hide B");
|
||||||
|
$("#temp").hide();
|
||||||
|
},
|
||||||
|
|
||||||
|
divideArray: function(e_array) {
|
||||||
|
var Events = new Array();
|
||||||
|
for (var i = 0; i < e_array.length; i++) {
|
||||||
|
var event = e_array[i].split(";");
|
||||||
|
Events.push(event);
|
||||||
|
}
|
||||||
|
return Events;
|
||||||
|
},
|
||||||
|
|
||||||
|
fetchNewEvents: function(A, B) {
|
||||||
|
var arrDiff = new Array();
|
||||||
|
// alert(A.length);
|
||||||
|
//alert(B.length);
|
||||||
|
for (var i = 0; i < A.length; i++) {
|
||||||
|
var id = false;
|
||||||
|
for (var j = 0; j < B.length; j++) {
|
||||||
|
if (A[i][0] == B[j][0]) {
|
||||||
|
id = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!id) {
|
||||||
|
arrDiff.push(A[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return arrDiff;
|
||||||
|
},
|
||||||
|
|
||||||
|
getNotification: function(eventId) {
|
||||||
|
var title = newEvents[eventId][6];
|
||||||
|
var id;
|
||||||
|
if (newEvents[eventId][9] == 0) {
|
||||||
|
id = ".";
|
||||||
|
} else {
|
||||||
|
id = " in the module with Id " + newEvents[eventId][9] + ".";
|
||||||
|
}
|
||||||
|
|
||||||
|
var event =
|
||||||
|
newEvents[eventId][14] +
|
||||||
|
" : " +
|
||||||
|
newEvents[eventId][17] +
|
||||||
|
". Event occured at " +
|
||||||
|
newEvents[eventId][5] +
|
||||||
|
id;
|
||||||
|
//var event=newEvents[eventId][14]+' '+newEvents[eventId][17]+' Event occured at:'+ newEvents[eventId][5] +'in the module with Id '+ newEvents[eventId][9];
|
||||||
|
return (
|
||||||
|
"<a>" +
|
||||||
|
title +
|
||||||
|
'</a> <br/> <span style="font-size:80%">' +
|
||||||
|
event +
|
||||||
|
"</span>"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
})();
|
||||||
|
|
||||||
/* Add Event Listener */
|
/* Add Event Listener */
|
||||||
window.addEventListener("load", PandoraChrome.fn.Onloading(), false);
|
window.addEventListener("load", PandoraChrome.fn.Onloading(), false);
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
# Pandora FMS Mail Transfer
|
# Pandora FMS Mail Transfer
|
||||||
# This is a tool for transfering Pandora FMS data files by mail (SMTP/POP)
|
# This is a tool for transfering Pandora FMS data files by mail (SMTP/POP)
|
||||||
##########################################################################
|
##########################################################################
|
||||||
# Copyright (c) 2011 Artica Soluciones Tecnologicas S.L
|
# Copyright (c) 2011-2021 Artica Soluciones Tecnologicas S.L
|
||||||
#
|
#
|
||||||
# This program is free software; you can redistribute it and/or
|
# This program is free software; you can redistribute it and/or
|
||||||
# modify it under the terms of the GNU General Public License
|
# modify it under the terms of the GNU General Public License
|
||||||
|
@ -325,7 +325,7 @@ respective locations:
|
|||||||
root@blackbox01:/tmp/pandora/pandora_agents/linux# ./pandora_agent_installer
|
root@blackbox01:/tmp/pandora/pandora_agents/linux# ./pandora_agent_installer
|
||||||
--install
|
--install
|
||||||
|
|
||||||
Pandora FMS Agent Installer 1.0 (c) 2007 Sancho Lerena
|
Pandora FMS Agent Installer 1.0 (c) 2021 Sancho Lerena
|
||||||
This program is licensed under GPL2 Terms. http://pandora.sourceforge.net
|
This program is licensed under GPL2 Terms. http://pandora.sourceforge.net
|
||||||
|
|
||||||
Checking default dir /usr/share/pandora_agent...
|
Checking default dir /usr/share/pandora_agent...
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.750, AIX version
|
# Version 7.0NG.752, AIX version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2010 Artica Soluciones Tecnologicas
|
# Copyright (c) 2003-2021 Artica Soluciones Tecnologicas
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
#Pandora FMS- http:#pandorafms.com
|
#Pandora FMS- http:#pandorafms.com
|
||||||
# ==================================================
|
# ==================================================
|
||||||
# Copyright (c) 2005-2010 Artica Soluciones Tecnologicas
|
# Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
# Please see http:#pandorafms.org for full contribution list
|
# Please see http:#pandorafms.org for full contribution list
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or
|
# This program is free software; you can redistribute it and/or
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.750, FreeBSD Version
|
# Version 7.0NG.752, FreeBSD Version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2010 Artica Soluciones Tecnologicas
|
# Copyright (c) 2003-2021 Artica Soluciones Tecnologicas
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.750, HP-UX Version
|
# Version 7.0NG.752, HP-UX Version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
|
# Copyright (c) 2003-2021 Artica Soluciones Tecnologicas
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.750, GNU/Linux
|
# Version 7.0NG.752, GNU/Linux
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
|
# Copyright (c) 2003-2021 Artica Soluciones Tecnologicas
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
' df_all.vbs
|
' df_all.vbs
|
||||||
' Returns free space (%) for all drives
|
' Returns free space (%) for all drives
|
||||||
' Pandora FMS Plugin, (c) 2010 Sancho Lerena
|
' Pandora FMS Plugin, (c) 2021 Sancho Lerena
|
||||||
' ------------------------------------------
|
' ------------------------------------------
|
||||||
|
|
||||||
Option Explicit
|
Option Explicit
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.750, GNU/Linux
|
# Version 7.0NG.752, GNU/Linux
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
|
# Copyright (c) 2003-2021 Artica Soluciones Tecnologicas
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.750, Solaris Version
|
# Version 7.0NG.752, Solaris Version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
|
# Copyright (c) 2003-2021 Artica Soluciones Tecnologicas
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
# Base config file for Pandora FMS Windows Agent
|
# Base config file for Pandora FMS Windows Agent
|
||||||
# (c) 2006-2010 Artica Soluciones Tecnologicas
|
# (c) 2006-2021 Artica Soluciones Tecnologicas
|
||||||
# Version 7.0NG.750
|
# Version 7.0NG.752
|
||||||
|
|
||||||
# This program is Free Software, you can redistribute it and/or modify it
|
# This program is Free Software, you can redistribute it and/or modify it
|
||||||
# under the terms of the GNU General Public Licence as published by the Free Software
|
# under the terms of the GNU General Public Licence as published by the Free Software
|
||||||
# Foundation; either version 2 of the Licence or any later version
|
# Foundation; either version 2 of the Licence or any later version
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
' df_all.vbs
|
' df_all.vbs
|
||||||
' Returns free space (%) for all drives
|
' Returns free space (%) for all drives
|
||||||
' Pandora FMS Plugin, (c) 2010 Sancho Lerena
|
' Pandora FMS Plugin, (c) 2021 Sancho Lerena
|
||||||
' ------------------------------------------
|
' ------------------------------------------
|
||||||
|
|
||||||
Option Explicit
|
Option Explicit
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# Fichero de configuracion base de agentes de Pandora
|
# Fichero de configuracion base de agentes de Pandora
|
||||||
# Base config file for Pandora agents
|
# Base config file for Pandora agents
|
||||||
# Version 7.0NG.750, AIX version
|
# Version 7.0NG.752, AIX version
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
# ==================
|
# ==================
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# Fichero de configuracion base de agentes de Pandora
|
# Fichero de configuracion base de agentes de Pandora
|
||||||
# Base config file for Pandora agents
|
# Base config file for Pandora agents
|
||||||
# Version 7.0NG.750
|
# Version 7.0NG.752
|
||||||
# FreeBSD/IPSO version
|
# FreeBSD/IPSO version
|
||||||
# Licenced under GPL licence, 2003-2007 Sancho Lerena
|
# Licenced under GPL licence, 2003-2007 Sancho Lerena
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
# **********************************************************************
|
# **********************************************************************
|
||||||
# Pandora FMS Generic IPSO/HPUX
|
# Pandora FMS Generic IPSO/HPUX
|
||||||
# (c) 2009 Artica Soluciones Tecnológicas SL
|
# (c) 2009-2021 Artica Soluciones Tecnológicas SL
|
||||||
# with the help of many people. Please see http://pandorafms.org
|
# with the help of many people. Please see http://pandorafms.org
|
||||||
# This code is licensed under GPL 2.0 license.
|
# This code is licensed under GPL 2.0 license.
|
||||||
# **********************************************************************
|
# **********************************************************************
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# Fichero de configuracion base de agentes de Pandora
|
# Fichero de configuracion base de agentes de Pandora
|
||||||
# Base config file for Pandora agents
|
# Base config file for Pandora agents
|
||||||
# Version 7.0NG.750, HPUX Version
|
# Version 7.0NG.752, HPUX Version
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
# ==================
|
# ==================
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
#Pandora FMS- http:#pandorafms.com
|
#Pandora FMS- http:#pandorafms.com
|
||||||
# ==================================================
|
# ==================================================
|
||||||
# Copyright (c) 2005-2010 Artica Soluciones Tecnologicas
|
# Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
# Please see http:#pandorafms.org for full contribution list
|
# Please see http:#pandorafms.org for full contribution list
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or
|
# This program is free software; you can redistribute it and/or
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.750
|
# Version 7.0NG.752
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# (c) 2003-2010 Artica Soluciones Tecnologicas
|
# (c) 2003-2021 Artica Soluciones Tecnologicas
|
||||||
# please visit http://pandora.sourceforge.net
|
# please visit http://pandora.sourceforge.net
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.750
|
# Version 7.0NG.752
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# (c) 2003-2009 Artica Soluciones Tecnologicas
|
# (c) 2003-2021 Artica Soluciones Tecnologicas
|
||||||
# please visit http://pandora.sourceforge.net
|
# please visit http://pandora.sourceforge.net
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
# **********************************************************************
|
# **********************************************************************
|
||||||
# Pandora FMS Agent Simulator (MetaAgent)
|
# Pandora FMS Agent Simulator (MetaAgent)
|
||||||
# (c) 2009 Artica Soluciones Tecnológicas SL
|
# (c) 2009-2021 Artica Soluciones Tecnológicas SL
|
||||||
# with the help of many people. Please see http://pandorafms.org
|
# with the help of many people. Please see http://pandorafms.org
|
||||||
# This code is licensed under GPL 2.0 license.
|
# This code is licensed under GPL 2.0 license.
|
||||||
# **********************************************************************
|
# **********************************************************************
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.750
|
# Version 7.0NG.752
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# please visit http://pandora.sourceforge.net
|
# please visit http://pandora.sourceforge.net
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# Fichero de configuracion base de agentes de Pandora
|
# Fichero de configuracion base de agentes de Pandora
|
||||||
# Base config file for Pandora agents
|
# Base config file for Pandora agents
|
||||||
# Version 7.0NG.750, Solaris version
|
# Version 7.0NG.752, Solaris version
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
# ==================
|
# ==================
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.750, AIX version
|
# Version 7.0NG.752, AIX version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2010 Artica Soluciones Tecnologicas
|
# Copyright (c) 2003-2021 Artica Soluciones Tecnologicas
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
package: pandorafms-agent-unix
|
package: pandorafms-agent-unix
|
||||||
Version: 7.0NG.750-201118
|
Version: 7.0NG.752-210128
|
||||||
Architecture: all
|
Architecture: all
|
||||||
Priority: optional
|
Priority: optional
|
||||||
Section: admin
|
Section: admin
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
#Pandora FMS- http:#pandorafms.com
|
#Pandora FMS- http:#pandorafms.com
|
||||||
# ==================================================
|
# ==================================================
|
||||||
# Copyright (c) 2005-2010 Artica Soluciones Tecnologicas
|
# Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
|
||||||
# Please see http:#pandorafms.org for full contribution list
|
# Please see http:#pandorafms.org for full contribution list
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or
|
# This program is free software; you can redistribute it and/or
|
||||||
@ -14,7 +14,7 @@
|
|||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
pandora_version="7.0NG.750-201118"
|
pandora_version="7.0NG.752-210128"
|
||||||
|
|
||||||
echo "Test if you has the tools for to make the packages."
|
echo "Test if you has the tools for to make the packages."
|
||||||
whereis dpkg-deb | cut -d":" -f2 | grep dpkg-deb > /dev/null
|
whereis dpkg-deb | cut -d":" -f2 | grep dpkg-deb > /dev/null
|
||||||
|
@ -24,7 +24,7 @@ fi
|
|||||||
if [ "$#" -ge 2 ]; then
|
if [ "$#" -ge 2 ]; then
|
||||||
VERSION="$2"
|
VERSION="$2"
|
||||||
else
|
else
|
||||||
VERSION="7.0NG.750"
|
VERSION="7.0NG.752"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Path for the generated DMG file
|
# Path for the generated DMG file
|
||||||
|
@ -19,11 +19,11 @@
|
|||||||
<choice id="com.pandorafms.pandorafms_src" visible="false">
|
<choice id="com.pandorafms.pandorafms_src" visible="false">
|
||||||
<pkg-ref id="com.pandorafms.pandorafms_src"/>
|
<pkg-ref id="com.pandorafms.pandorafms_src"/>
|
||||||
</choice>
|
</choice>
|
||||||
<pkg-ref id="com.pandorafms.pandorafms_src" version="7.0NG.750" onConclusion="none">pandorafms_src.pdk</pkg-ref>
|
<pkg-ref id="com.pandorafms.pandorafms_src" version="7.0NG.752" onConclusion="none">pandorafms_src.pdk</pkg-ref>
|
||||||
<choice id="com.pandorafms.pandorafms_uninstall" visible="true" customLocation="/Applications">
|
<choice id="com.pandorafms.pandorafms_uninstall" visible="true" customLocation="/Applications">
|
||||||
<pkg-ref id="com.pandorafms.pandorafms_uninstall"/>
|
<pkg-ref id="com.pandorafms.pandorafms_uninstall"/>
|
||||||
</choice>
|
</choice>
|
||||||
<pkg-ref id="com.pandorafms.pandorafms_uninstall" version="7.0NG.750" onConclusion="none">pandorafms_uninstall.pdk</pkg-ref>
|
<pkg-ref id="com.pandorafms.pandorafms_uninstall" version="7.0NG.752" onConclusion="none">pandorafms_uninstall.pdk</pkg-ref>
|
||||||
<!-- <installation-check script="check()" />
|
<!-- <installation-check script="check()" />
|
||||||
<script>
|
<script>
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
|
@ -5,9 +5,9 @@
|
|||||||
<key>CFBundleIconFile</key> <string>pandorafms.icns</string>
|
<key>CFBundleIconFile</key> <string>pandorafms.icns</string>
|
||||||
<key>CFBundleIdentifier</key> <string>com.pandorafms.pandorafms_uninstall</string>
|
<key>CFBundleIdentifier</key> <string>com.pandorafms.pandorafms_uninstall</string>
|
||||||
|
|
||||||
<key>CFBundleVersion</key> <string>7.0NG.750</string>
|
<key>CFBundleVersion</key> <string>7.0NG.752</string>
|
||||||
<key>CFBundleGetInfoString</key> <string>7.0NG.750 Pandora FMS Agent uninstaller for MacOS by Artica ST on Aug 2020</string>
|
<key>CFBundleGetInfoString</key> <string>7.0NG.752 Pandora FMS Agent uninstaller for MacOS by Artica ST on Aug 2020</string>
|
||||||
<key>CFBundleShortVersionString</key> <string>7.0NG.750</string>
|
<key>CFBundleShortVersionString</key> <string>7.0NG.752</string>
|
||||||
|
|
||||||
<key>NSPrincipalClass</key><string>NSApplication</string>
|
<key>NSPrincipalClass</key><string>NSApplication</string>
|
||||||
<key>NSMainNibFile</key><string>MainMenu</string>
|
<key>NSMainNibFile</key><string>MainMenu</string>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.750, GNU/Linux
|
# Version 7.0NG.752, GNU/Linux
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2012 Artica Soluciones Tecnologicas
|
# Copyright (c) 2003-2021 Artica Soluciones Tecnologicas
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.750, FreeBSD Version
|
# Version 7.0NG.752, FreeBSD Version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2016 Artica Soluciones Tecnologicas
|
# Copyright (c) 2003-2021 Artica Soluciones Tecnologicas
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.750, HP-UX Version
|
# Version 7.0NG.752, HP-UX Version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
|
# Copyright (c) 2003-2021 Artica Soluciones Tecnologicas
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.750, GNU/Linux
|
# Version 7.0NG.752, GNU/Linux
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2014 Artica Soluciones Tecnologicas
|
# Copyright (c) 2003-2021 Artica Soluciones Tecnologicas
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
' df_all.vbs
|
' df_all.vbs
|
||||||
' Returns free space (%) for all drives
|
' Returns free space (%) for all drives
|
||||||
' Pandora FMS Plugin, (c) 2010 Sancho Lerena
|
' Pandora FMS Plugin, (c) 2021 Sancho Lerena
|
||||||
' ------------------------------------------
|
' ------------------------------------------
|
||||||
|
|
||||||
Option Explicit
|
Option Explicit
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.750, GNU/Linux
|
# Version 7.0NG.752, GNU/Linux
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
|
# Copyright (c) 2003-2021 Artica Soluciones Tecnologicas
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.750, NetBSD Version
|
# Version 7.0NG.752, NetBSD Version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2010 Artica Soluciones Tecnologicas
|
# Copyright (c) 2003-2021 Artica Soluciones Tecnologicas
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.750, Solaris Version
|
# Version 7.0NG.752, Solaris Version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
|
# Copyright (c) 2003-2021 Artica Soluciones Tecnologicas
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -2,8 +2,8 @@
|
|||||||
#Pandora FMS Linux Agent
|
#Pandora FMS Linux Agent
|
||||||
#
|
#
|
||||||
%define name pandorafms_agent_unix
|
%define name pandorafms_agent_unix
|
||||||
%define version 7.0NG.750
|
%define version 7.0NG.752
|
||||||
%define release 201118
|
%define release 210128
|
||||||
|
|
||||||
Summary: Pandora FMS Linux agent, PERL version
|
Summary: Pandora FMS Linux agent, PERL version
|
||||||
Name: %{name}
|
Name: %{name}
|
||||||
|
@ -2,8 +2,8 @@
|
|||||||
#Pandora FMS Linux Agent
|
#Pandora FMS Linux Agent
|
||||||
#
|
#
|
||||||
%define name pandorafms_agent_unix
|
%define name pandorafms_agent_unix
|
||||||
%define version 7.0NG.750
|
%define version 7.0NG.752
|
||||||
%define release 201118
|
%define release 210128
|
||||||
|
|
||||||
Summary: Pandora FMS Linux agent, PERL version
|
Summary: Pandora FMS Linux agent, PERL version
|
||||||
Name: %{name}
|
Name: %{name}
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
# Please see http://www.pandorafms.org. This code is licensed under GPL 2.0 license.
|
# Please see http://www.pandorafms.org. This code is licensed under GPL 2.0 license.
|
||||||
# **********************************************************************
|
# **********************************************************************
|
||||||
|
|
||||||
PI_VERSION="7.0NG.750"
|
PI_VERSION="7.0NG.752"
|
||||||
PI_BUILD="201118"
|
PI_BUILD="210128"
|
||||||
OS_NAME=`uname -s`
|
OS_NAME=`uname -s`
|
||||||
|
|
||||||
FORCE=0
|
FORCE=0
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
# Base config file for Pandora FMS Windows Agent
|
# Base config file for Pandora FMS Windows Agent
|
||||||
# (c) 2006-2017 Artica Soluciones Tecnologicas
|
# (c) 2006-2021 Artica Soluciones Tecnologicas
|
||||||
# Version 7.0NG.750
|
# Version 7.0NG.752
|
||||||
|
|
||||||
# This program is Free Software, you can redistribute it and/or modify it
|
# This program is Free Software, you can redistribute it and/or modify it
|
||||||
# under the terms of the GNU General Public Licence as published by the Free Software
|
# under the terms of the GNU General Public Licence as published by the Free Software
|
||||||
# Foundation; either version 2 of the Licence or any later version
|
# Foundation; either version 2 of the Licence or any later version
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
' df_all.vbs
|
' df_all.vbs
|
||||||
' Returns free space (%) for all drives
|
' Returns free space (%) for all drives
|
||||||
' Pandora FMS Plugin, (c) 2014 Sancho Lerena
|
' Pandora FMS Plugin, (c) 2021 Sancho Lerena
|
||||||
' ------------------------------------------
|
' ------------------------------------------
|
||||||
|
|
||||||
Option Explicit
|
Option Explicit
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
' df_all.vbs
|
' df_all.vbs
|
||||||
' Returns used space (%) for all drives
|
' Returns used space (%) for all drives
|
||||||
' Pandora FMS Plugin, (c) 2014 Sancho Lerena
|
' Pandora FMS Plugin, (c) 2021 Sancho Lerena
|
||||||
' ------------------------------------------
|
' ------------------------------------------
|
||||||
|
|
||||||
Option Explicit
|
Option Explicit
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
' df_all.vbs
|
' df_all.vbs
|
||||||
' Returns used space (%) for all drives
|
' Returns used space (%) for all drives
|
||||||
' Pandora FMS Plugin, (c) 2014 Sancho Lerena
|
' Pandora FMS Plugin, (c) 2021 Sancho Lerena
|
||||||
' ------------------------------------------
|
' ------------------------------------------
|
||||||
|
|
||||||
Option Explicit
|
Option Explicit
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
' df_all.vbs
|
' df_all.vbs
|
||||||
' Returns free space (%) for all drives
|
' Returns free space (%) for all drives
|
||||||
' Pandora FMS Plugin, (c) 2014 Sancho Lerena
|
' Pandora FMS Plugin, (c) 2021 Sancho Lerena
|
||||||
' ------------------------------------------
|
' ------------------------------------------
|
||||||
|
|
||||||
Option Explicit
|
Option Explicit
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
' nettraffic.vbs
|
' nettraffic.vbs
|
||||||
' Pandora FMS Agent Plugin for Microsoft Windows (All platfforms)
|
' Pandora FMS Agent Plugin for Microsoft Windows (All platfforms)
|
||||||
' (c) 2014 Sancho Lerena <slerena@artica.es>
|
' (c) 2021 Sancho Lerena <slerena@artica.es>
|
||||||
' Returns total bytes in network since bootup and % of network use
|
' Returns total bytes in network since bootup and % of network use
|
||||||
' ----------------------------------------------------------------
|
' ----------------------------------------------------------------
|
||||||
' usage: cscript //B nettraffic.vbs
|
' usage: cscript //B nettraffic.vbs
|
||||||
|
BIN
pandora_agents/win32/bin/util/omnishell_client.exe
Executable file
BIN
pandora_agents/win32/bin/util/omnishell_client.exe
Executable file
Binary file not shown.
@ -1,6 +1,6 @@
|
|||||||
' windows_product_key.vbs
|
' windows_product_key.vbs
|
||||||
' Pandora FMS Agent Inventory Plugin for Microsoft Windows (All platfforms)
|
' Pandora FMS Agent Inventory Plugin for Microsoft Windows (All platfforms)
|
||||||
' (c) 2015 Sancho Lerena <slerena@artica.es>
|
' (c) 2021 Sancho Lerena <slerena@artica.es>
|
||||||
' This plugin extends agent inventory feature. Only enterprise version
|
' This plugin extends agent inventory feature. Only enterprise version
|
||||||
' ----------------------------------------------------------------
|
' ----------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
' windows_product_key.vbs
|
' windows_product_key.vbs
|
||||||
' Pandora FMS Agent Inventory Plugin for Microsoft Windows (All platfforms)
|
' Pandora FMS Agent Inventory Plugin for Microsoft Windows (All platfforms)
|
||||||
' (c) 2015 Sancho Lerena <slerena@artica.es>
|
' (c) 2021 Sancho Lerena <slerena@artica.es>
|
||||||
' This plugin extends agent inventory feature. Only enterprise version
|
' This plugin extends agent inventory feature. Only enterprise version
|
||||||
' ----------------------------------------------------------------
|
' ----------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
' Pandora FMS Agent Inventory Plugin for Microsoft Windows (All platfforms)
|
' Pandora FMS Agent Inventory Plugin for Microsoft Windows (All platfforms)
|
||||||
' (c) 2015 Sancho Lerena <slerena@artica.es>
|
' (c) 2021 Sancho Lerena <slerena@artica.es>
|
||||||
' (c) 2015 Borja Sanchez <fborja.sanchez@artica.es>
|
' (c) 2015 Borja Sanchez <fborja.sanchez@artica.es>
|
||||||
' This plugin extends agent inventory feature. Only enterprise version
|
' This plugin extends agent inventory feature. Only enterprise version
|
||||||
' --------------------------------------------------------------------------
|
' --------------------------------------------------------------------------
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/* Class to abstract an FTP client. It uses libcurl.
|
/* Class to abstract an FTP client. It uses libcurl.
|
||||||
|
|
||||||
Copyright (C) 2006 Artica ST.
|
Copyright (c) 2006-2021 Artica ST.
|
||||||
Written by Esteban Sanchez.
|
Written by Esteban Sanchez.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/* Class to abstract an FTP client. It uses libcurl.
|
/* Class to abstract an FTP client. It uses libcurl.
|
||||||
|
|
||||||
Copyright (C) 2006 Artica ST.
|
Copyright (c) 2006-2021 Artica ST.
|
||||||
Written by Esteban Sanchez.
|
Written by Esteban Sanchez.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/* Test module to prove FTP connection.
|
/* Test module to prove FTP connection.
|
||||||
|
|
||||||
Copyright (C) 2006 Artica ST.
|
Copyright (c) 2006-2021 Artica ST.
|
||||||
Written by Esteban Sanchez.
|
Written by Esteban Sanchez.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/* Test module to prove FTP connection.
|
/* Test module to prove FTP connection.
|
||||||
|
|
||||||
Copyright (C) 2006 Artica ST.
|
Copyright (c) 2006-2021 Artica ST.
|
||||||
Written by Esteban Sanchez.
|
Written by Esteban Sanchez.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
@ -3,7 +3,7 @@ AllowLanguageSelection
|
|||||||
{Yes}
|
{Yes}
|
||||||
|
|
||||||
AppName
|
AppName
|
||||||
{Pandora FMS Windows Agent v7.0NG.750}
|
{Pandora FMS Windows Agent v7.0NG.752}
|
||||||
|
|
||||||
ApplicationID
|
ApplicationID
|
||||||
{17E3D2CF-CA02-406B-8A80-9D31C17BD08F}
|
{17E3D2CF-CA02-406B-8A80-9D31C17BD08F}
|
||||||
@ -186,7 +186,7 @@ UpgradeApplicationID
|
|||||||
{}
|
{}
|
||||||
|
|
||||||
Version
|
Version
|
||||||
{201118}
|
{210128}
|
||||||
|
|
||||||
ViewReadme
|
ViewReadme
|
||||||
{Yes}
|
{Yes}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/* Pandora Windows agent main file.
|
/* Pandora Windows agent main file.
|
||||||
|
|
||||||
Copyright (C) 2006 Artica ST.
|
Copyright (c) 2006-2021 Artica ST.
|
||||||
Written by Esteban Sanchez.
|
Written by Esteban Sanchez.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/* Pandora cron manager for Win32.
|
/* Pandora cron manager for Win32.
|
||||||
|
|
||||||
Copyright (C) 2018 Artica ST.
|
Copyright (c) 2018-2021 Artica ST.
|
||||||
Written by Fermin Hernandez.
|
Written by Fermin Hernandez.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/* Pandora cron manager for Win32.
|
/* Pandora cron manager for Win32.
|
||||||
|
|
||||||
Copyright (C) 2018 Artica ST.
|
Copyright (c) 2018-2021 Artica ST.
|
||||||
Written by Fermin Hernandez.
|
Written by Fermin Hernandez.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/* Misc utils for files.
|
/* Misc utils for files.
|
||||||
|
|
||||||
Copyright (C) 2006 Artica ST.
|
Copyright (c) 2006-2021 Artica ST.
|
||||||
Written by Esteban Sanchez.
|
Written by Esteban Sanchez.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/* Misc utils for files.
|
/* Misc utils for files.
|
||||||
|
|
||||||
Copyright (C) 2006 Artica ST.
|
Copyright (c) 2006-2021 Artica ST.
|
||||||
Written by Esteban Sanchez.
|
Written by Esteban Sanchez.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user