45 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| # vim:ft=zsh:
 | |
| #
 | |
| # Import the CAcert root CA on OS X. Based on the tutorial on their wiki.
 | |
| #
 | |
| # http://wiki.cacert.org/MacOSX_X509Anchors
 | |
| #
 | |
| # Eryn Wells <eryn@erynwells.me>
 | |
| 
 | |
| 
 | |
| function import_cacert
 | |
| {
 | |
|     # SHA1 fingerprints of the root and class3 keys.
 | |
|     local root_fingerprint="13:5C:EC:36:F4:9C:B8:E9:3B:1A:B2:70:CD:80:88:46:76:CE:8F:33"
 | |
|     local class3_fingerprint="AD:7C:3F:64:FC:44:39:FE:F4:E9:0B:E8:F4:7C:6C:FA:8A:AD:FD:CE"
 | |
| 
 | |
|     local savewd=`pwd`
 | |
|     local tmpdir=`mktemp -dt cacert`
 | |
|     cd "$tmpdir"
 | |
| 
 | |
|     # Download the certificates.
 | |
|     curl -k -o root.crt "https://www.cacert.org/certs/root.crt"
 | |
|     curl -k -o class3.crt "https://www.cacert.org/certs/class3.crt"
 | |
| 
 | |
|     # Verify fingerprints and import.
 | |
|     if   openssl x509 -noout -fingerprint < root.crt \
 | |
|        | grep "Fingerprint=$root_fingerprint" 1>/dev/null
 | |
|     then
 | |
|         sudo security add-trusted-cert -d \
 | |
|                                        -k /Library/Keychains/System.keychain \
 | |
|                                        -r trustRoot \
 | |
|                                        root.crt
 | |
|     fi
 | |
| 
 | |
|     if   openssl x509 -noout -fingerprint < class3.crt \
 | |
|        | grep "Fingerprint=$class3_fingerprint" 1>/dev/null
 | |
|     then
 | |
|         sudo security add-trusted-cert -d \
 | |
|                                        -k /Library/Keychains/System.keychain \
 | |
|                                        -r trustAsRoot \
 | |
|                                        class3.crt
 | |
|     fi
 | |
| 
 | |
|     cd "$savewd"
 | |
|     rm -rf "$tmpdir"
 | |
| }
 |