You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

In letzter Zeit wird mehr Gebrauch von das sogenannte OCSP stapling gemacht, anstatt CRL (Certificate Revocation Lists).

Siehe auch https://en.wikipedia.org/wiki/Online_Certificate_Status_Protocol

Falls das OCSP stapling in haproxy aktiviert werden soll, wird folgende Prozedur angewendet.

Siehe auch diese Webseite: https://icicimov.github.io/blog/server/HAProxy-OCSP-stapling/ für eine tolle Anleitung und Erklärung dazu, auf den unsere Anleitung hier basiert. 

haproxy.cfg prüfen

Prüfen, dass der stats socket aktiviert ist. 

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

socat installieren

Install socat
yum -y install socat

Skript für OCSP stapling anlegen und Ausführbar machen

Skript 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


Prüfen, dass der stats socket aktiviert ist. 

haproxy.cfg
global
        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:

  • Details des Zertifikats anzeigen lassen:

  • View Certificate

  • Intermediate Zertifikat anzeigen lassen:

  • Als Datei speichern:

  • In Base-64 format:

#

  • Auf den lokalen Rechner speichern:

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

Dann:

service haproxy reload
  • No labels