#!/bin/bash # Managed by Salt: PMG custom check via Kaspersky KESL. set -u LOG_DIR="{{ custom_check_log_dir }}" KESL_BIN="/opt/kaspersky/kesl/bin/kesl-control" SCAN_TARGET="${2:-}" if [ -z "${SCAN_TARGET}" ]; then echo "v1" echo "ERROR: empty scan target" exit 0 fi mkdir -p "${LOG_DIR}" POLICY_NAME="$(pwgen 10 -1 -s -0)" POLICY_FILE="${LOG_DIR}/${POLICY_NAME}.pol" cat > "${POLICY_FILE}" </dev/null VIRUS_NAME="$("${KESL_BIN}" --start-task "${POLICY_NAME}" -W | grep 'DetectName' | awk -F'=' '{print $2}' | head -1)" "${KESL_BIN}" --delete-task "${POLICY_NAME}" if [ -z "${VIRUS_NAME}" ]; then rm -f "${POLICY_FILE}" echo "Mail ${SCAN_TARGET} was checked successfully" >> "${LOG_DIR}/checked" echo "v1" echo "OK" else echo "In mail ${SCAN_TARGET} find ${VIRUS_NAME}" >> "${POLICY_FILE}" echo "Mail ${SCAN_TARGET} was blocked. More info in ${POLICY_FILE}" >> "${LOG_DIR}/checked" echo "v1" echo "VIRUS: ${VIRUS_NAME}" fi exit 0