Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Prüfen, dass der stats socket aktiviert ist.  Falls ein anderer Socket angegeben ist, muss das Skript unten angepasst werden (zwei Zeilen vor exit 0 - im socat befehl).

Code Block
titlehaproxy.cfg
global
        stats socket  /var/lib/haproxy/stats
        stats timeout 30s

...

Code Block
titleSkript für OCSP stapling
cat <<EOFF > /usr/local/bin/haproxy_ocsp_update.sh
#!/bin/bash

# Certificates path and names
DIR="/etc/haproxy"
CERT="haproxy.pem"

# Get the issuer URI, download it's certificate and convert into PEM format
ISSUER_URI=\$(openssl x509 -in \${DIR}/\${CERT} -text -noout | grep 'CA Issuers' | cut -d: -f2,3)
ISSUER_NAME=\$(echo ${ISSUER_URI##*/} | while read -r fname; do echo \${fname%.*}; done)
wget -q -O- \$ISSUER_URI | openssl x509 -inform DER -outform PEM -out \${DIR}/\${ISSUER_NAME}.pem

# Get the OCSP URL from the certificate
ocsp_url=\$(openssl x509 -noout -ocsp_uri -in \${DIR}/\${CERT})

# Extract the hostname from the OCSP URL
ocsp_host=\$(echo $ocsp_url | cut -d/ -f3)

# Create/update the ocsp response file and update HAProxy
openssl ocsp -noverify -no_nonce -issuer \${DIR}/\${ISSUER_NAME}.pem -cert \${DIR}/\${CERT} -url \$ocsp_url -header Host \$ocsp_host -respout \${DIR}/\${CERT}.ocsp
[[ $? -eq 0 ]] && [[ $(pidof haproxy) ]] && [[ -s ${DIR}/${CERT}.ocsp ]] && echo "set ssl ocsp-response $(/usr/bin/base64 -w 10000 ${DIR}/${CERT}.ocsp)" | socat stdio unix-connect:/var/lib/haproxy/stats

exit 0
EOFF

chmod +x /usr/local/bin/haproxy_ocsp_update.sh

CRON Job für Skript aktivieren

Hiermit wird der Skript jeden Tag ausgeführt.Prüfen, dass der stats socket aktiviert ist. 

Code Block
titlehaproxy.cfg
global
cat <<EOFF       stats socket  /var/lib/haproxy/stats
        stats timeout 30s

frontend acdportal_https

 mode http
bind :443 ssl crt /etc/haproxy/haproxy.pem #verify optional

 

Falls ein Intermediate-Zertifikat eingefügt werden muss (Beispiel Sales-Force falls der Zertifizierungschain nicht bei SalesForce bekannt ist), kann dies wie folgt geschehen:

  • Rechter Mausklick auf die Zertifizierung im Browser:

Image Removed

  • Details des Zertifikats anzeigen lassen:

Image Removed

  • View Certificate

Image Removed

  • Intermediate Zertifikat anzeigen lassen:

Image Removed

  • Als Datei speichern:

Image Removed

  • In Base-64 format:

Image Removed#

  • Auf den lokalen Rechner speichern:

Image Removed

Die Datei dann mit einem Text-Editor editieren, dann den Inhalt des Intermediate-Zertifikats in die Datei haproxy.pem ganz unten hineinkopieren.

Dann:

...

>> /etc/crontab
0  0  *  *  * root /usr/local/bin/haproxy_ocsp_update.sh
EOFF