Copyright ©
Mindbreeze GmbH, A-4020 Linz, 2024.
Alle Rechte vorbehalten. Alle verwendeten Hard- und Softwarenamen sind Handelsnamen und/oder Marken der jeweiligen Hersteller.
Diese Unterlagen sind streng vertraulich. Durch die Übermittlung und Präsentation dieser Unterlagen alleine werden keine Rechte an unserer Software, an unseren Dienstleistungen und Dienstleistungsresultaten oder sonstigen geschützten Rechten begründet. Die Weitergabe, Veröffentlichung oder Vervielfältigung ist nicht gestattet.
Aus Gründen der einfacheren Lesbarkeit wird auf die geschlechtsspezifische Differenzierung, z.B. Benutzer/-innen, verzichtet. Entsprechende Begriffe gelten im Sinne der Gleichbehandlung grundsätzlich für beide Geschlechter.
App.telemetry Stati über SNMPv3 sind nur auf G7 Appliances verfügbar.
Aus Sicherheitsgründen ist SNMP v2c oder v1 nur lokal auf der Appliance verfügbar.
Zusätzlich ist SNMPv3 nur mit definierten Benutzern erlaubt.
Der SNMP Port ist in der Firewall im Auslieferungszustand nicht freigegeben.
Folgende Zeilen sind dazu am Host in die /var/data/iptables.sh in Zeile 3 und 4 einzutragen:
iptables -t nat -A PREROUTING -m addrtype --dst-type LOCAL -s <trusted source> -p tcp -m tcp --dport 161 -j DOCKER
iptables -t nat -A PREROUTING -m addrtype --dst-type LOCAL -s <trusted source> -p udp -m udp --dport 161 -j DOCKER
Starten sie die Appliance neu um die Regeln anzuwenden.
Nach einem Update, müssen die Firewall Regeln erneut angepasst werden. Vom Update Service wird in diesem Fall ein automatisch ein Backup erstellt.
Um SNMPv3 Benutzer anzulegen, müssen folgende Befehle innerhalb des inspire containers ausgeführt werden:
systemctl stop snmpd
echo createUser <username> <hash_algo> "<auth_password>" <encryption_algo> "<encryption_pass>" >> /var/lib/net-snmp/snmpd.conf
echo "rouser <username>" >> /config/snmpd/snmpusers.conf
systemctl start snmpd
Parameter:
Beispiel:
systemctl stop snmpd
echo createUser v3user SHA "mindbreeze" AES mindbreeze >> /var/lib/net-snmp/snmpd.conf
echo "rouser v3user" >> /config/snmpd/snmpusers.conf
systemctl start snmpd
Die Änderungen sind auch über Updates hinweg persistent.
Die app.telemetry Informationen.sind unter folgender OID verfügbar:
iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) fabasoft(17100) apptelemetry(2)
Um das Setup zu testen können mittels snmpwalk alle SNMP werte abgefragt werden:
snmpwalk -v3 -a SHA -A mindbreeze -x AES -X mindbreeze -u v3user -l authPriv inspireappliance.domain .1.3.6.1.4.1.17100.2
--==========================================================================
-- Copyright (c) Fabasoft R&D GmbH, A-4020 Linz, 1988-2018.
--
-- Der Nutzer des Computerprogramms anerkennt, dass der oben stehende
-- Copyright-Vermerk im Sinn des Welturheberrechtsabkommens an der vom
-- Urheber festgelegten Stelle in der Funktion des Computerprogramms
-- angebracht bleibt, um den Vorbehalt des Urheberrechtes genuegend zum
-- Ausdruck zu bringen. Dieser Urheberrechtsvermerk darf weder vom Kunden,
-- Nutzer und/oder von Dritten entfernt, veraendert oder disloziert werden.
--==========================================================================
FABASOFT-MAIN-MIB DEFINITIONS ::=
BEGIN
IMPORTS
MODULE-IDENTITY,
enterprises FROM SNMPv2-SMI;
fabasoft MODULE-IDENTITY
LAST-UPDATED "200706211000Z"
ORGANIZATION "Fabasoft R&D GmbH"
CONTACT-INFO
"Fabasoft R&D GmbH
Postal: Honauerstrasse 4
4020 Linz
AUSTRIA
Tel: +43 732 606162
Fax: +43 732 606162 609
E-mail: support@fabasoft.com"
DESCRIPTION
"The Structure of management information for the Fabasoft enterprise."
::= { enterprises 17100 }
-- assigned by IANA (1.3.6.1.4.1.17100)
-- enterprise number 17100 (so whole number is 1.3.6.1.4.1.17100)
-- iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) fabasoft(17100)
components OBJECT IDENTIFIER ::= { fabasoft 1 }
server OBJECT IDENTIFIER ::= { components 1 }
END
-- =========================================================================
-- Copyright (c) Fabasoft R&D GmbH, A-4020 Linz, 1988-2018.
--
-- Alle Rechte vorbehalten. Alle verwendeten Hard- und Softwarenamen sind
-- Handelsnamen und/oder Marken der jeweiligen Hersteller.
--
-- Der Nutzer des Computerprogramms anerkennt, dass der oben stehende
-- Copyright-Vermerk im Sinn des Welturheberrechtsabkommens an der vom
-- Urheber festgelegten Stelle in der Funktion des Computerprogramms
-- angebracht bleibt, um den Vorbehalt des Urheberrechtes genügend zum
-- Ausdruck zu bringen. Dieser Urheberrechtsvermerk darf weder vom Kunden,
-- Nutzer und/oder von Dritten entfernt, verändert oder disloziert werden.
-- =========================================================================
FABASOFT-APPTELEMETRY-MIB DEFINITIONS ::=
BEGIN
IMPORTS
fabasoft FROM FABASOFT-MAIN-MIB
OBJECT-TYPE, Integer32,
MODULE-IDENTITY FROM SNMPv2-SMI
TEXTUAL-CONVENTION, DisplayString FROM SNMPv2-TC;
apptelemetry MODULE-IDENTITY
LAST-UPDATED "201602011000Z"
ORGANIZATION "Fabasoft R&D GmbH"
CONTACT-INFO
"Fabasoft R&D GmbH
Postal: Honauerstrasse 4
4020 Linz
AUSTRIA
Tel: +43 732 606162
Fax: +43 732 606162 609
E-mail: support@fabasoft.com"
DESCRIPTION
"The Structure of management information for the Fabasoft app.telemetry."
::= { fabasoft 2 }
-- iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) fabasoft(17100) apptelemetry(2)
-- <https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers>
apmServer OBJECT IDENTIFIER ::= { apptelemetry 1 }
apmStatus OBJECT IDENTIFIER ::= { apmServer 1 }
apmStatusAgentTable OBJECT-TYPE
SYNTAX SEQUENCE OF ApmStatusAgentEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains a status information for current app.telemetry agent connections."
::= { apmStatus 1 }
apmStatusAgentEntry OBJECT-TYPE
SYNTAX ApmStatusAgentEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A row describing a given agent."
INDEX { apmAgentId }
::= {apmStatusAgentTable 1 }
ApmStatusAgentEntry ::= SEQUENCE {
apmAgentId Integer32,
apmAgentName DisplayString,
apmAgentStatus ApmStatusAgentStatus
}
ApmStatusAgentStatus ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Represents an app.telemetry agent status."
SYNTAX INTEGER { ok(0), warning(1), critical(2), unknown(3) }
apmAgentId OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Id of the agent configuration object."
::= { apmStatusAgentEntry 1 }
apmAgentName OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Name of the agent object."
::= { apmStatusAgentEntry 2 }
apmAgentStatus OBJECT-TYPE
SYNTAX ApmStatusAgentStatus
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Current status of the agent connection."
::= { apmStatusAgentEntry 3 }
-- ServiceGroup
apmStatusServiceGroupTable OBJECT-TYPE
SYNTAX SEQUENCE OF ApmStatusServiceGroupEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains a status information for current service group status."
::= { apmStatus 2 }
apmStatusServiceGroupEntry OBJECT-TYPE
SYNTAX ApmStatusServiceGroupEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A row describing a given agent."
INDEX { apmServiceGroupId }
::= {apmStatusServiceGroupTable 1 }
ApmStatusServiceGroupEntry ::= SEQUENCE {
apmServiceGroupId Integer32,
apmServiceGroupName DisplayString,
apmServiceGroupStatus ApmStatusServiceGroupStatus,
apmServiceGroupParentId Integer32
}
ApmStatusServiceGroupStatus ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Represents an app.telemetry agent status."
SYNTAX INTEGER { ok(0), warning(1), critical(2), unknown(3) }
apmServiceGroupId OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Id of the agent configuration object."
::= { apmStatusServiceGroupEntry 1 }
apmServiceGroupName OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Name of the agent object."
::= { apmStatusServiceGroupEntry 2 }
apmServiceGroupStatus OBJECT-TYPE
SYNTAX ApmStatusServiceGroupStatus
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Current status of the agent connection."
::= { apmStatusServiceGroupEntry 3 }
apmServiceGroupParentId OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Id of the parent service group."
::= { apmStatusServiceGroupEntry 4 }
-- Service
apmStatusServiceTable OBJECT-TYPE
SYNTAX SEQUENCE OF ApmStatusServiceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains a status information for current service status."
::= { apmStatus 3 }
apmStatusServiceEntry OBJECT-TYPE
SYNTAX ApmStatusServiceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A row describing a given agent."
INDEX { apmServiceId }
::= {apmStatusServiceTable 1 }
ApmStatusServiceEntry ::= SEQUENCE {
apmServiceId Integer32,
apmServiceName DisplayString,
apmServiceStatus ApmStatusServiceStatus,
apmServiceParentId Integer32
}
ApmStatusServiceStatus ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Represents an app.telemetry agent status."
SYNTAX INTEGER { ok(0), warning(1), critical(2), unknown(3) }
apmServiceId OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Id of the agent configuration object."
::= { apmStatusServiceEntry 1 }
apmServiceName OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Name of the agent object."
::= { apmStatusServiceEntry 2 }
apmServiceStatus OBJECT-TYPE
SYNTAX ApmStatusServiceStatus
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Current status of the agent connection."
::= { apmStatusServiceEntry 3 }
apmServiceParentId OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Id of the parent service group."
::= { apmStatusServiceEntry 4 }
-- ServiceCheck
apmStatusServiceCheckTable OBJECT-TYPE
SYNTAX SEQUENCE OF ApmStatusServiceCheckEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains a status information for current service check status."
::= { apmStatus 4 }
apmStatusServiceCheckEntry OBJECT-TYPE
SYNTAX ApmStatusServiceCheckEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A row describing a given agent."
INDEX { apmServiceCheckId }
::= {apmStatusServiceCheckTable 1 }
ApmStatusServiceCheckEntry ::= SEQUENCE {
apmServiceCheckId Integer32,
apmServiceCheckName DisplayString,
apmServiceCheckStatus ApmStatusServiceCheckStatus,
apmServiceCheckParentId Integer32
}
ApmStatusServiceCheckStatus ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Represents an app.telemetry service check status."
SYNTAX INTEGER { ok(0), warning(1), critical(2), unknown(3) }
apmServiceCheckId OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Id of the agent configuration object."
::= { apmStatusServiceCheckEntry 1 }
apmServiceCheckName OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Name of the agent object."
::= { apmStatusServiceCheckEntry 2 }
apmServiceCheckStatus OBJECT-TYPE
SYNTAX ApmStatusServiceCheckStatus
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Current status of the agent connection."
::= { apmStatusServiceCheckEntry 3 }
apmServiceCheckParentId OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Id of the parent service."
::= { apmStatusServiceCheckEntry 4 }
END