Software Integrity Checker
The Software Integrity Checker (SIC) enables you to check the integrity of your FTM SWIFT software on the following systems:
- Installation system
- Customization system
- Runtime system
The SIC detects if any of the files that are stored on your hard disk during FTM SWIFT installation was manipulated. Processing information is provided in the
FTM SWIFT event log if event options have been specified. If no event
options are used, the Software Integrity Checker will provide information in the system log1. System log entries
issued by the SIC are similar to the following:
May 11 08:40:16 server1.ibm.com ftmuser: DNPD1118I Starting integrity check using level: 3.2.4.0-20201026-0727.
May 11 08:40:16 server1.ibm.com ftmuser: DNPD1109I Verifying the customization and runtime files in the directory
'/opt/IBM/ftm/swift/v324'.
May 11 08:40:16 server1.ibm.com ftmuser: DNPD1111I 1,032 files and 23 directories verified. 2 mismatches detected:
May 11 08:40:16 server1.ibm.com ftmuser: DNPD1113I File 'admin/bin/dniccclt.jar' is missing or you have no read
access permissions.
May 11 08:40:16 server1.ibm.com ftmuser: DNPD1112I File 'run/classes/dnpdic.jar' was changed.
Checksum: 013607DCBAB110E55B1E558C19AF56B78DCFFB5E219A36787661846CA8...
If the Software Integrity Checker reports manipulations on files, your system was probably tampered and you must take appropriate actions.
Note: If you installed an emergency fix (eFix), the SIC also reports that the checksums of the replaced
files are not correct. In this case, proceed as described in Emergency fix installation.
In addition, you are advised to do the following to ensure the integrity of your FTM SWIFT software:
- Run the SIC at least once per day on both, your customization system and runtime system. To do this, you can, for example, set up a cron job.
- Check the return code of the SIC after termination. For information on return code values, see Return codes.
- Monitor the system and FTM SWIFT event log for messages from the SIC as described in Monitoring software integrity
- Ensure that the SIC is executed during startup of FTM SWIFT, that is,
when the message broker starts. This can be done by creating a script file
work_path/config/broker_name/profiles/ftmswift_startup.sh
where:
- work_path
- The value of environment variable
MQSI_WORKPATH - broker_name
- The name of your message broker
/var/mqsi/config/MQM1BRK/profiles/ftmswift_startup.shwith the following content:#!/bin/sh CLASSPATH=$CLASSPATH:/opt/mqm/java/lib/com.ibm.mq.jar; /opt/IBM/ftm/swift/v324/run/bin/dnpsic \ -Djava.security.policy=/var/ftm/swift/v324/run/ftmswift.policy \ -check runtime \ -i INST1 -qmgr MQM1 -host localhost -channel SYSTEM.DEF.SVRCONN -port 1421; exit_code=$? # prevent broker startup in case of problems if [ "$exit_code" -ne 0 ] ; then echo "Message Broker startup canceled due to software integrity problems"; exit "$exit_code"; fiNotes:- If you use event options as shown in the example, you need to ensure that the queue manager is already running prior to starting the broker.
- For more information on files being processed when the message broker starts, see the description of broker-specific command environment in the IBM Documentation for Message Broker.
1 The system log entries are written using facility "local0".