Files
FSI/conf/ocsp-verify.sh
2026-04-22 00:11:52 +01:00

32 lines
1.0 KiB
Bash
Executable File

#!/bin/bash
# OpenVPN passes cert depth as $1
depth=$1
# Only check client certificate (depth 0)
env >> /etc/openvpn/server/ocsp_env.log
if [ "$depth" -eq 0 ]; then
echo "Checking OCSP for peer_cert=$peer_cert" >> /etc/openvpn/server/ocsp.log
if [ -n "$peer_cert" ]; then
status=$(openssl ocsp -issuer /etc/openvpn/server/ca.crt -cert "$peer_cert" -url http://10.60.0.1:8888 -CAfile /etc/openvpn/server/ca.crt 2>>/etc/openvpn/server/ocsp.log)
echo "OCSP Status: $status" >> /etc/openvpn/server/ocsp.log
if echo "$status" | grep -q "revoked"; then
echo "Result: REVOKED" >> /etc/openvpn/server/ocsp.log
exit 1
fi
if echo "$status" | grep -q "good"; then
echo "Result: GOOD" >> /etc/openvpn/server/ocsp.log
exit 0
fi
echo "Result: UNKNOWN/ERROR" >> /etc/openvpn/server/ocsp.log
exit 1
else
echo "peer_cert is empty!" >> /etc/openvpn/server/ocsp.log
exit 1
fi
fi
exit 0