|
@@ -54,7 +54,7 @@ function pin_all_certs {
|
54
|
54
|
|
55
|
55
|
PIN_HEADER="Public-Key-Pins 'pin-sha256=\"${KEY_HASH}\"; pin-sha256=\"${BACKUP_KEY_HASH}\"; max-age=5184000; includeSubDomains';"
|
56
|
56
|
sed -i "s|Public-Key-Pins.*|${PIN_HEADER}|g" $file
|
57
|
|
- echo "Pinned $DOMAIN_NAME with keys $KEY_HASH $BACKUP_KEY_HASH"
|
|
57
|
+ echo $"Pinned $DOMAIN_NAME with keys $KEY_HASH $BACKUP_KEY_HASH"
|
58
|
58
|
fi
|
59
|
59
|
fi
|
60
|
60
|
fi
|
|
@@ -69,14 +69,28 @@ if [[ $1 == "all" ]]; then
|
69
|
69
|
fi
|
70
|
70
|
|
71
|
71
|
DOMAIN_NAME=$1
|
|
72
|
+REMOVE=$2
|
72
|
73
|
KEY_FILENAME=/etc/ssl/private/${DOMAIN_NAME}.key
|
73
|
74
|
BACKUP_KEY_FILENAME=/etc/ssl/certs/${DOMAIN_NAME}.pem
|
74
|
75
|
SITE_FILENAME=$WEBSITES_DIRECTORY/${DOMAIN_NAME}
|
75
|
76
|
|
|
77
|
+if [ ! ${DOMAIN_NAME} ]; then
|
|
78
|
+ exit 0
|
|
79
|
+fi
|
|
80
|
+
|
76
|
81
|
if [ ! -f "$SITE_FILENAME" ]; then
|
77
|
82
|
exit 0
|
78
|
83
|
fi
|
79
|
84
|
|
|
85
|
+if [[ $REMOVE == "remove" ]]; then
|
|
86
|
+ if grep -q "Public-Key-Pins" $SITE_FILENAME; then
|
|
87
|
+ sed -i "/Public-Key-Pins/d" $SITE_FILENAME
|
|
88
|
+ echo $"Removed pinning for ${DOMAIN_NAME}"
|
|
89
|
+ systemctl restart nginx
|
|
90
|
+ fi
|
|
91
|
+ exit 0
|
|
92
|
+fi
|
|
93
|
+
|
80
|
94
|
if [ ! -f "$KEY_FILENAME" ]; then
|
81
|
95
|
echo $"No private key certificate found for $DOMAIN_NAME"
|
82
|
96
|
exit 1
|