| 
				
			 | 
			
			
				@@ -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 
			 |