OPC_SYSLOG dient dazu OpenVMS OPCOM Meldungen zu lesen und diese an einen SYSLOG Server zu übertragen
Installation
OPC_SYSLOG wird als OpenVMS Kit geliefert und wird mit VMSINSTAL installiert. Die Installations-Prozedur fragt nach Device und Directory, wo OPC_SYSLOG installiert werden soll. Der Rest der Installation erfolgt automatisch.
Damit OPC_SYSLOG nach einem Reboot der OpenVMS Maschine automatisch gestartet wird, muss das OPC_SYSLOG Startup-Commandfile OPC_SYSLOG_STARTUP.COM entweder in SYS$MANAGER:SYSTARTUP_VMS.COM oder ins SYSMAN Datenfile eingetragen werden. OPC_SYSLOG sollte nach einem Reboot so früh wie möglich gestartet werden. Es ist aber sicher zu stellen, dass TCPIP auf dem OpenVMS Rechner zu diesem Zeitpunkt bereits gestartet ist.
Starten und Stoppen von OPC_SYSLOG
Zum Starten oder Stoppen von OPC_SYSLOG dienen die beiden Commandfiles OPC_SYSLOG_STARTUP.COM und OPC_SYSLOG_SHUTDWN.COM
Starten von OPC_SYSLOG
Zum Starten von OPC_SYSLOG wird das Startup Commandfile OPC_SYSLOG_STARTUP.COM ohne Parameter aufgerufen
$ @SYS$STARTUP:OPC_SYSLOG_STARTUP
Definieren der OPC_SYSLOG Logicals
OPC_SYSLOG kennt statische und dynamische Parameter. Die dynamischen Parameter sind im Startup Commandfile als solche bezeichnet. Wird lediglich ein dynamischer Parameter angepasst, so ist es ausreichend die OPC_SYSLOG Logicals neu zu definieren. Dies geschieht durch Starten des Startup Commandfiles mit dem Parameter DEFLNM
$ @SYS$STARTUP:OPC_SYSLOG_STARTUP DEFLNM
Werden statische Parameter verändert, so muss ein Restart von OPC_SYSLOG erfolgen.
Restart von OPC_SYSLOG
Nach dem Anpassen von statischen Parametern im Startup Commandfile OPC_SYSLOG_STARTUP.COM, muss OPC_SYSLOG neu gestartet werden. Dies geschieht durch Starten des Startup Commandfiles mit dem Parameter RESTART
$ @SYS$STARTUP:OPC_SYSLOG_STARTUP RESTART
Stoppen von OPC_SYSLOG
OPC_SYSLOG muss unbedingt kontrolliert gestoppt werden. Es ist nicht empfehlenswert OPC_SYSLOG mit STOP/ID zu stoppen. Der Stop von OPC SYSLOG kann auf zwei Arten erfolgen:
$ @SYS$STARTUP:OPC_SYSLOG_SHUTDWN oder $ @SYS$STARTUP:OPC_SYSLOG_STARTUP SHUTDOWN
Konfiguration
OPC_SYSLOG ist nach der Installation bereits konfiguriert. Der Systemmanager kann aber diverse Anpassungen selber vornehmen und OPC_SYSLOG an die Umgebung anpüassen
Konfiguration von OPC_SYSLOG auf Seite OpenVMS
Alle Konfigurations-Anpassungen werden im Startup Commandfile von OPC_SYSLOG vorgenommen. Die einzelnen Möglichkeiten sind in den folgenden Abschnitten beschrieben.
OPC_SYSLOG_ROOT
OPC_SYSLOG_ROOT ist ein statischer Parameter und beschreibt den Installationsort von OPC_SYSLOG. Idealerweise wird OPC_SYSLOG auf dem Systemdisk installiert. Wird die Software aber Beispielsweise auf einen anderen Disk verschoben, so muss der neue Installationsort hier abgebildet werden.
$ DEFINE/SYSTEM/EXEC OPC_SYSLOG_ROOT 'DISK':['Directory']
OPC_SYSLOG_DEBUG
Mit diesem statischen Parameter kann Debugging ein oder ausgeschaltet werden. Ist dieser Logical 0 so wird keine Debug Information geschrieben. Ist er 1, so werden Debug Meldungen ins File OPC_SYSLOG_ROOT:OPC_SYSLOG.LOG geschrieben.
$ DEFINE/SYSTEM/EXEC OPC_SYSLOG_DEBUG 0
OPC_SYSLOG_SERVER
Durch Definition des statischen Parameters OPC_SYSLOG_SERVER wird der Empfänger der SYSLOG Meldungen definiert. Normalerweise ist dies eine UNIX Maschine mit gestartetem syslog Deamon.
$ DEFINE/SYSTEM/EXEC OPC_SYSLOG_SERVER GENLINUX
OPC_SYSLOG_SERVER_PORT
Normalerweise hört ein Syslog Server auf Port 514. Sollte dies aus irgend einem Grund anders sein, so kann dies durch Umdefinieren des statischen Parameters OPC_SYSLOG_SERVER_PORT geschehen.
$ DEFINE/SYSTEM/EXEC OPC_SYSLOG_SERVER_PORT 514
OPC_SYSLOG_MESSAGE_TYPE
Dieser dynamische Parameter bestimmt in welchem Format die OPCOM Meldungen ins Logfile auf dem Syslog Server geschrieben werden. In der vorliegenden Version von OPC_SYSLOG werden 4 Meldungsformate unterstützt.
$ DEFINE/SYSTEM/EXEC OPC_SYSLOG_MSGTYPE 3
Die Meldungsformate werden in einem separaten Abschnitt OPC_SYSLOG Meldungsformat beschrieben
OPCOM Classes
OpenVMS kennt die folgenden OPCOM Klassen:
CENTRAL, PRINT, TAPES, DISKS, DEVICE, CARDS, NETWORK, CLUSTER, SECURITY, REPLY, SOFTWARE, LICENSE, OPER1 - OPER12
Jede dieser OPCOM Klassen kann von OPC_SYSLOG an den Syslog Server übertragen werden. Welche Klassen genau übertragen werden bestimmt man im Startup Commandfile von OPC_SYSLOG im Abschnitt OPCOM Classes. Dieser Abschnitt sieht im Commandfile folgendermassen aus:
$! Opcom Classes<
$! -------------
$! 0=disabled, 1=enabled
$!
$ CENTRAL = 1
$ PRINT = 1
$ TAPES = 1
$ DISKS = 1
$ DEVICE = 1
$ CARDS = 1
$ NETWORK = 1
$ CLUSTER = 1
$ SECURITY = 1
$ REPLY = 1
$ SOFTWARE = 1
$ LICENSE = 1
$ OPER1 = 1
$ OPER2 = 1
$ OPER3 = 1
$ OPER4 = 1
$ OPER5 = 1
$ OPER6 = 1
$ OPER7 = 1
$ OPER8 = 1
$ OPER9 = 1
$ OPER10 = 1
$ OPER11 = 1
$ OPER12 = 1
Werden die OPCOM Classes wie im obigen Beispiel konfiguriert, so werden alle Meldungen an den Syslog Server übertragen.
Syslog Message Facility
Laut RFC3164 sind die folgenden Facilities festgelegt:
SYSLOG Message Facility RFC 3164
--------------------------------
Numerical Facility
Code
0 kernel messages
1 user-level messages
2 mail system
3 system daemons
4 security/authorization messages (note 1)
5 messages generated internally by syslogd
6 line printer subsystem
7 network news subsystem
8 UUCP subsystem
9 clock daemon (note 2)
10 security/authorization messages (note 1)
11 FTP daemon
12 NTP subsystem
13 log audit (note 1)
14 log alert (note 1)
15 clock daemon (note 2)
16 local use 0 (local0)
17 local use 1 (local1)
18 local use 2 (local2)
19 local use 3 (local3)
20 local use 4 (local4)
21 local use 5 (local5)
22 local use 6 (local6)
23 local use 7 (local7)
Welche Facility auf dem Syslog Server angesprochen werden soll bestimmt der dynamische Parameter OPC_SYSLOG_FACILITY
$ OPC_SYSLOG_FACILITY = 1 ! (dynamisch)
Syslog Severities
SYSLOG Severities RFC 3164
--------------------------
Numerical Severity
Code
0 Emergency: system is unusable
1 Alert: action must be taken immediately
2 Critical: critical conditions
3 Error: error conditions
4 Warning: warning conditions
5 Notice: normal but significant condition
6 Informational: informational messages
7 Debug: debug-level messages
Die Severity, mit welcher OPC_SYSLOG seine Meldungen an den Syslog Server versendet, wird durch den dynamischen Parameter OPC_SYSLOG_SEVERITY bestimmt.
$ OPC_SYSLOG_SEVERITY = 4 ! (dynamisch)
OPC_SYSLOG Meldungsformate
Normalerweise besteht eine Syslog Meldung aus lediglich einer Zeile. OPCOM erzeugt jedoch mehrzeilige Meldungen. OPC_SYSLOG kann OPCOM Meldungen als 1-zeilige Meldungen an den Syslog Server übertragen (Format 4) oder die Meldungen so formattieren, dass diese auf dem Syslog Server auf mehreren Zeilen und in 3 Varianten dargestellt werden können (Format 1-3)
OPC_SYSLOG_MSGTYPE 1
OPC_SYSLOG sendet pro OPCOM-Meldungszeile eine Meldung an den Syslog Server
Jul 6 13:55:41 obelix %%%%%%%%%%% OPCOM 6-JUL-2007 13:55:41.76 %%%%%%%%%%%
Jul 6 13:55:41 obelix Message from user AUDIT$SERVER on OBELIX
Jul 6 13:55:41 obelix Security alarm (SECURITY) and security audit (SECURITY) on OBELIX, system id: 1027
Jul 6 13:55:41 obelix Auditable event: Batch process logout
Jul 6 13:55:41 obelix Event time: 6-JUL-2007 13:55:41.76
Jul 6 13:55:41 obelix PID: 20218531
Jul 6 13:55:41 obelix Process name: BATCH_637
Jul 6 13:55:41 obelix Username: GENI
Jul 6 13:55:41 obelix Process owner: [GENI]
Jul 6 13:55:41 obelix Image name: DSA0:[SYS0.SYSCOMMON.][SYSEXE]LOGINOUT.EXE
Jul 6 13:55:41 obelix Posix UID: -2
Jul 6 13:55:41 obelix Posix GID: -2 (%XFFFFFFFE)
Jul 6 13:55:51 obelix %%%%%%%%%%% OPCOM 6-JUL-2007 13:55:51.87 %%%%%%%%%%%
Jul 6 13:55:51 obelix Message from user AUDIT$SERVER on OBELIX
Jul 6 13:55:51 obelix Security alarm (SECURITY) and security audit (SECURITY) on OBELIX, system id: 1027
Jul 6 13:55:51 obelix Auditable event: Batch process login
Jul 6 13:55:51 obelix Event time: 6-JUL-2007 13:55:51.86
Jul 6 13:55:51 obelix PID: 20217432
Jul 6 13:55:51 obelix Process name: BATCH_638
Jul 6 13:55:51 obelix Username: GENI
Jul 6 13:55:51 obelix Process owner: [GENI]
Jul 6 13:55:51 obelix Image name: DSA0:[SYS0.SYSCOMMON.][SYSEXE]LOGINOUT.EXE
Jul 6 13:55:51 obelix Posix UID: -2
Jul 6 13:55:51 obelix Posix GID: -2 (%XFFFFFFFE)
OPC_SYSLOG_MSGTYPE 2
Wie OPC_SYSLOG_MSGTYPE 1. Es wird aber ab der zweiten Zeile einer Meldung zusätzlich " - " vorangestellt.
Jul 6 14:00:27 obelix %%%%%%%%%%% OPCOM 6-JUL-2007 14:00:27.03 %%%%%%%%%%%
Jul 6 14:00:27 obelix - Message from user AUDIT$SERVER on OBELIX
Jul 6 14:00:27 obelix - Security alarm (SECURITY) and security audit (SECURITY) on OBELIX, system id: 1027
Jul 6 14:00:27 obelix - Auditable event: Batch process logout
Jul 6 14:00:27 obelix - Event time: 6-JUL-2007 14:00:27.03
Jul 6 14:00:27 obelix - PID: 2021ED5F
Jul 6 14:00:27 obelix - Process name: BATCH_653
Jul 6 14:00:27 obelix - Username: GENI
Jul 6 14:00:27 obelix - Process owner: [GENI]
Jul 6 14:00:27 obelix - Image name: DSA0:[SYS0.SYSCOMMON.][SYSEXE]LOGINOUT.EXE
Jul 6 14:00:27 obelix - Posix UID: -2
Jul 6 14:00:27 obelix - Posix GID: -2 (%XFFFFFFFE)
Jul 6 14:00:28 obelix %%%%%%%%%%% OPCOM 6-JUL-2007 14:00:28.30 %%%%%%%%%%%
Jul 6 14:00:28 obelix - Message from user AUDIT$SERVER on OBELIX
Jul 6 14:00:28 obelix - Security alarm (SECURITY) and security audit (SECURITY) on OBELIX, system id: 1027
Jul 6 14:00:28 obelix - Auditable event: Batch process logout
Jul 6 14:00:28 obelix - Event time: 6-JUL-2007 14:00:28.30
Jul 6 14:00:28 obelix - PID: 2021FA5A
Jul 6 14:00:28 obelix - Process name: BATCH_647
Jul 6 14:00:28 obelix - Username: SYSTEM
Jul 6 14:00:28 obelix - Process owner: [SYSTEM]
Jul 6 14:00:28 obelix - Image name: DSA0:[SYS0.SYSCOMMON.][SYSEXE]LOGINOUT.EXE
Jul 6 14:00:28 obelix - Posix UID: -2
Jul 6 14:00:28 obelix - Posix GID: -2 (%XFFFFFFFE)
OPC_SYSLOG_MSGTYPE 3
Wie OPC_SYSLOG_MSGTYPE 2. Es wird aber nach jeder Meldung zusätzlich eine Leerzeile geschrieben.
Jul 6 14:02:14 obelix %%%%%%%%%%% OPCOM 6-JUL-2007 14:02:14.65 %%%%%%%%%%%
Jul 6 14:02:14 obelix - Message from user AUDIT$SERVER on OBELIX
Jul 6 14:02:14 obelix - Security alarm (SECURITY) and security audit (SECURITY) on OBELIX, system id: 1027
Jul 6 14:02:14 obelix - Auditable event: Batch process login
Jul 6 14:02:14 obelix - Event time: 6-JUL-2007 14:02:14.65
Jul 6 14:02:14 obelix - PID: 2021CE67
Jul 6 14:02:14 obelix - Process name: BATCH_654
Jul 6 14:02:14 obelix - Username: SYSTEM
Jul 6 14:02:14 obelix - Process owner: [SYSTEM]
Jul 6 14:02:14 obelix - Image name: DSA0:[SYS0.SYSCOMMON.][SYSEXE]LOGINOUT.EXE
Jul 6 14:02:14 obelix - Posix UID: -2
Jul 6 14:02:14 obelix - Posix GID: -2 (%XFFFFFFFE)
Jul 6 14:02:14 obelix
Jul 6 14:02:19 obelix %%%%%%%%%%% OPCOM 6-JUL-2007 14:02:19.19 %%%%%%%%%%%
Jul 6 14:02:19 obelix - Message from user AUDIT$SERVER on OBELIX
Jul 6 14:02:19 obelix - Security alarm (SECURITY) and security audit (SECURITY) on OBELIX, system id: 1027
Jul 6 14:02:19 obelix - Auditable event: Batch process login
Jul 6 14:02:19 obelix - Event time: 6-JUL-2007 14:02:19.18
Jul 6 14:02:19 obelix - PID: 2021FF68
Jul 6 14:02:19 obelix - Process name: BATCH_661
Jul 6 14:02:19 obelix - Username: GENI
Jul 6 14:02:19 obelix - Process owner: [GENI]
Jul 6 14:02:19 obelix - Image name: DSA0:[SYS0.SYSCOMMON.][SYSEXE]LOGINOUT.EXE
Jul 6 14:02:19 obelix - Posix UID: -2
Jul 6 14:02:19 obelix - Posix GID: -2 (%XFFFFFFFE)
Jul 6 14:02:19 obelix
OPC_SYSLOG_MSGTYPE 4
Die gesammte OPCOM Meldung wird auf eine Zeile geschrieben.
Jul 6 14:03:40 obelix %%%%%%%%%%% OPCOM 6-JUL-2007 14:03:40.67 %%%%%%%%%%% Message from user AUDIT$SERVER on OBELIX Security alarm (SECURITY) and
Jul 6 14:03:50 obelix %%%%%%%%%%% OPCOM 6-JUL-2007 14:03:50.96 %%%%%%%%%%% Message from user AUDIT$SERVER on OBELIX Security alarm (SECURITY) and
Jul 6 14:04:01 obelix %%%%%%%%%%% OPCOM 6-JUL-2007 14:04:01.04 %%%%%%%%%%% Message from user AUDIT$SERVER on OBELIX Security alarm (SECURITY) and
Jul 6 14:04:10 obelix %%%%%%%%%%% OPCOM 6-JUL-2007 14:04:10.95 %%%%%%%%%%% Message from user AUDIT$SERVER on OBELIX Security alarm (SECURITY) and
Jul 6 14:04:11 obelix %%%%%%%%%%% OPCOM 6-JUL-2007 14:04:11.33 %%%%%%%%%%% Message from user AUDIT$SERVER on OBELIX Security alarm (SECURITY) and
Jul 6 14:04:14 obelix %%%%%%%%%%% OPCOM 6-JUL-2007 14:04:14.83 %%%%%%%%%%% Message from user AUDIT$SERVER on OBELIX Security alarm (SECURITY) and
Jul 6 14:04:21 obelix %%%%%%%%%%% OPCOM 6-JUL-2007 14:04:21.39 %%%%%%%%%%% Message from user AUDIT$SERVER on OBELIX Security alarm (SECURITY) and
Dieses Meldungsformat ist auf dem Syslog Server sehr schlecht lesbar. Es müsste ein spezielles Programm verwendet werden um diese Meldungen lesbarer zu machen.
Konfiguration auf Seite SYSLOG Server
Hier wird beschrieben, was auf einem Red Hat Server zu konfigurieren ist, damit OPCOM Meldungen von einem OpenVMS System empfangen werden könnten
Anpassungen an /etc/sysconfig/syslog
Der Syslog Daemon auf Seite Unix muss mit der Option -r gestartet werden, damit Meldungen von anderen Rechnern im Netzwerk empfangen werden können. Diese Anpassung muss im File /etc/sysconfig/syslog gemacht und der Deamon restartet werden.
Anpassungen an Filter
Der Syslog Server kann Meldungen Abhängig von Facility und Severity in unterschiedliche Files schreiben. Wohin eine bestimmte Meldung geschrieben wird, wird im File /etc/syslog.conf definiert.