Add OpenVPN service to connect to fox BMC
Reviewed-by: Aleix Boné <abonerib@bsc.es>
This commit is contained in:
		
							parent
							
								
									208197f099
								
							
						
					
					
						commit
						f29461ae32
					
				
							
								
								
									
										34
									
								
								m/module/vpn-dac.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								m/module/vpn-dac.nix
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,34 @@ | ||||
| {config, ...}: | ||||
| { | ||||
|   age.secrets.vpn-dac-login.file = ../../secrets/vpn-dac-login.age; | ||||
|   age.secrets.vpn-dac-client-key.file = ../../secrets/vpn-dac-client-key.age; | ||||
| 
 | ||||
|   services.openvpn.servers = { | ||||
|     # systemctl status openvpn-dac.service | ||||
|     dac = { | ||||
|       config = '' | ||||
|         client | ||||
|         dev tun | ||||
|         proto tcp | ||||
|         remote vpn.ac.upc.edu 1194 | ||||
|         remote vpn.ac.upc.edu 80 | ||||
|         resolv-retry infinite | ||||
|         nobind | ||||
|         persist-key | ||||
|         persist-tun | ||||
|         ca ${./vpn-dac/ca.crt} | ||||
|         cert ${./vpn-dac/client.crt} | ||||
|         # Only key needs to be secret | ||||
|         key ${config.age.secrets.vpn-dac-client-key.path} | ||||
|         remote-cert-tls server | ||||
|         comp-lzo | ||||
|         verb 3 | ||||
|         auth-user-pass ${config.age.secrets.vpn-dac-login.path} | ||||
|         reneg-sec 0 | ||||
| 
 | ||||
| 	# Ignore 10.0.0.0 route as is not needed | ||||
|         pull-filter ignore "route 10.0.0.0" | ||||
|       ''; | ||||
|     }; | ||||
|   }; | ||||
| } | ||||
							
								
								
									
										31
									
								
								m/module/vpn-dac/ca.crt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								m/module/vpn-dac/ca.crt
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,31 @@ | ||||
| -----BEGIN CERTIFICATE----- | ||||
| MIIFUjCCBDqgAwIBAgIJAJH118PApk5hMA0GCSqGSIb3DQEBCwUAMIHLMQswCQYD | ||||
| VQQGEwJFUzESMBAGA1UECBMJQmFyY2Vsb25hMRIwEAYDVQQHEwlCYXJjZWxvbmEx | ||||
| LTArBgNVBAoTJFVuaXZlcnNpdGF0IFBvbGl0ZWNuaWNhIGRlIENhdGFsdW55YTEk | ||||
| MCIGA1UECxMbQXJxdWl0ZWN0dXJhIGRlIENvbXB1dGFkb3JzMRAwDgYDVQQDEwdM | ||||
| Q0FDIENBMQ0wCwYDVQQpEwRMQ0FDMR4wHAYJKoZIhvcNAQkBFg9sY2FjQGFjLnVw | ||||
| Yy5lZHUwHhcNMTYwMTEyMTI0NDIxWhcNNDYwMTEyMTI0NDIxWjCByzELMAkGA1UE | ||||
| BhMCRVMxEjAQBgNVBAgTCUJhcmNlbG9uYTESMBAGA1UEBxMJQmFyY2Vsb25hMS0w | ||||
| KwYDVQQKEyRVbml2ZXJzaXRhdCBQb2xpdGVjbmljYSBkZSBDYXRhbHVueWExJDAi | ||||
| BgNVBAsTG0FycXVpdGVjdHVyYSBkZSBDb21wdXRhZG9yczEQMA4GA1UEAxMHTENB | ||||
| QyBDQTENMAsGA1UEKRMETENBQzEeMBwGCSqGSIb3DQEJARYPbGNhY0BhYy51cGMu | ||||
| ZWR1MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0CteSeof7Xwi51kC | ||||
| F0nQ4E9iR5Lq7wtfRuVPn6JJcIxJJ6+F9gr4R/HIHTztW4XAzReE36DYfexupx3D | ||||
| 6UgQIkMLlVyGqRbulNF+RnCx20GosF7Dm4RGBVvOxBP1PGjYq/A+XhaaDAFd0cOF | ||||
| LMNkzuYP7PF0bnBEaHnxmN8bPmuyDyas7fK9AAc3scyWT2jSBPbOVFvCJwPg8MH9 | ||||
| V/h+hKwL/7hRt1MVfVv2qyIuKwTki8mUt0RcVbP7oJoRY5K1+R52phIz/GL/b4Fx | ||||
| L6MKXlQxLi8vzP4QZXgCMyV7oFNdU3VqCEXBA11YIRvsOZ4QS19otIk/ZWU5x+HH | ||||
| LAIJ7wIDAQABo4IBNTCCATEwHQYDVR0OBBYEFNyezX1cH1N4QR14ebBpljqmtE7q | ||||
| MIIBAAYDVR0jBIH4MIH1gBTcns19XB9TeEEdeHmwaZY6prRO6qGB0aSBzjCByzEL | ||||
| MAkGA1UEBhMCRVMxEjAQBgNVBAgTCUJhcmNlbG9uYTESMBAGA1UEBxMJQmFyY2Vs | ||||
| b25hMS0wKwYDVQQKEyRVbml2ZXJzaXRhdCBQb2xpdGVjbmljYSBkZSBDYXRhbHVu | ||||
| eWExJDAiBgNVBAsTG0FycXVpdGVjdHVyYSBkZSBDb21wdXRhZG9yczEQMA4GA1UE | ||||
| AxMHTENBQyBDQTENMAsGA1UEKRMETENBQzEeMBwGCSqGSIb3DQEJARYPbGNhY0Bh | ||||
| Yy51cGMuZWR1ggkAkfXXw8CmTmEwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQsF | ||||
| AAOCAQEAUAmOvVXIQrR+aZVO0bOTeugKBHB75eTIZSIHIn2oDUvDbAP5GXIJ56A1 | ||||
| 6mZXxemSMY8/9k+pRcwJhfat3IgvAN159XSqf9kRv0NHgc3FWUI1Qv/BsAn0vJO/ | ||||
| oK0dbmbbRWqt86qNrCN+cUfz5aovvxN73jFfnvfDQFBk/8enj9wXxYfokjjLPR1Q | ||||
| +oTkH8dY68qf71oaUB9MndppPEPSz0K1S6h1XxvJoSu9MVSXOQHiq1cdZdxRazI3 | ||||
| 4f7q9sTCL+khwDAuZxAYzlEYxFFa/NN8PWU6xPw6V+t/aDhOiXUPJQB/O/K7mw3Z | ||||
| TQQx5NqM7B5jjak5fauR3/oRD8XXsA== | ||||
| -----END CERTIFICATE----- | ||||
							
								
								
									
										100
									
								
								m/module/vpn-dac/client.crt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										100
									
								
								m/module/vpn-dac/client.crt
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,100 @@ | ||||
| Certificate: | ||||
|     Data: | ||||
|         Version: 3 (0x2) | ||||
|         Serial Number: 2 (0x2) | ||||
|     Signature Algorithm: sha256WithRSAEncryption | ||||
|         Issuer: C=ES, ST=Barcelona, L=Barcelona, O=Universitat Politecnica de Catalunya, OU=Arquitectura de Computadors, CN=LCAC CA/name=LCAC/emailAddress=lcac@ac.upc.edu | ||||
|         Validity | ||||
|             Not Before: Jan 12 12:45:41 2016 GMT | ||||
|             Not After : Jan 12 12:45:41 2046 GMT | ||||
|         Subject: C=ES, ST=Barcelona, L=Barcelona, O=Universitat Politecnica de Catalunya, OU=Arquitectura de Computadors, CN=client/name=LCAC/emailAddress=lcac@ac.upc.edu | ||||
|         Subject Public Key Info: | ||||
|             Public Key Algorithm: rsaEncryption | ||||
|                 Public-Key: (2048 bit) | ||||
|                 Modulus: | ||||
|                     00:97:99:fa:7a:0e:4d:e2:1d:a5:b1:a8:14:18:64: | ||||
|                     c7:66:bf:de:99:1d:92:3b:86:82:4d:95:39:f7:a6: | ||||
|                     56:49:97:14:4f:e3:37:00:6c:f4:d0:1d:56:79:e7: | ||||
|                     19:b5:dd:36:15:8e:1d:57:7b:59:29:d2:11:bf:58: | ||||
|                     48:e0:f7:41:3d:16:64:8d:a2:0b:4a:ac:fa:c6:83: | ||||
|                     dc:10:2a:2c:d9:97:48:ee:11:2a:bc:4b:60:dd:b9: | ||||
|                     2e:8f:45:ca:87:0b:38:65:1c:f8:a2:1d:f9:50:aa: | ||||
|                     6e:60:f9:48:df:57:12:23:e1:e7:0c:81:5c:9f:c5: | ||||
|                     b2:e6:99:99:95:30:6d:57:36:06:8c:fd:fb:f9:4f: | ||||
|                     60:d2:3c:ba:ae:28:56:2f:da:58:5c:e8:c5:7b:ec: | ||||
|                     76:d9:28:6e:fb:8c:07:f9:d7:23:c3:72:76:3c:fa: | ||||
|                     dc:20:67:8f:cc:16:e0:91:07:d5:68:f9:20:4d:7d: | ||||
|                     5c:2d:02:04:16:76:52:f3:53:be:a3:dc:0d:d5:fb: | ||||
|                     6b:55:29:f3:52:35:c8:7d:99:d1:4a:94:be:b1:8e: | ||||
|                     fd:85:18:25:eb:41:e9:56:da:af:62:84:20:0a:00: | ||||
|                     17:94:92:94:91:6a:f8:54:37:17:ee:1e:bb:fb:93: | ||||
|                     71:91:d9:e4:e9:b8:3b:18:7d:6d:7d:4c:ce:58:55: | ||||
|                     f9:41 | ||||
|                 Exponent: 65537 (0x10001) | ||||
|         X509v3 extensions: | ||||
|             X509v3 Basic Constraints:  | ||||
|                 CA:FALSE | ||||
|             Netscape Comment:  | ||||
|                 Easy-RSA Generated Certificate | ||||
|             X509v3 Subject Key Identifier:  | ||||
|                 1B:88:06:D5:33:1D:5C:48:46:B5:DE:78:89:36:96:91:3A:74:43:18 | ||||
|             X509v3 Authority Key Identifier:  | ||||
|                 keyid:DC:9E:CD:7D:5C:1F:53:78:41:1D:78:79:B0:69:96:3A:A6:B4:4E:EA | ||||
|                 DirName:/C=ES/ST=Barcelona/L=Barcelona/O=Universitat Politecnica de Catalunya/OU=Arquitectura de Computadors/CN=LCAC CA/name=LCAC/emailAddress=lcac@ac.upc.edu | ||||
|                 serial:91:F5:D7:C3:C0:A6:4E:61 | ||||
| 
 | ||||
|             X509v3 Extended Key Usage:  | ||||
|                 TLS Web Client Authentication | ||||
|             X509v3 Key Usage:  | ||||
|                 Digital Signature | ||||
|             X509v3 Subject Alternative Name:  | ||||
|                 DNS:client | ||||
|     Signature Algorithm: sha256WithRSAEncryption | ||||
|          42:e8:50:b2:e7:88:75:86:0b:bb:29:e3:aa:c6:0e:4c:e8:ea: | ||||
|          3d:0c:02:31:7f:3b:80:0c:3f:80:af:45:d6:62:27:a0:0e:e7: | ||||
|          26:09:12:97:95:f8:d9:9b:89:b5:ef:56:64:f1:de:82:74:e0: | ||||
|          31:0a:cc:90:0a:bd:50:b8:54:95:0a:ae:3b:40:df:76:b6:d1: | ||||
|          01:2e:f3:96:9f:52:d4:e9:14:6d:b7:14:9d:45:99:33:36:2a: | ||||
|          01:0b:15:1a:ed:55:dc:64:83:65:1a:06:42:d9:c7:dc:97:d4: | ||||
|          02:81:c2:58:2b:ea:e4:b7:ae:84:3a:e4:3f:f1:2e:fa:ec:f3: | ||||
|          40:5d:b8:6a:d5:5e:e1:e8:2f:e2:2f:48:a4:38:a1:4f:22:e3: | ||||
|          4f:66:94:aa:02:78:9a:2b:7a:5d:aa:aa:51:a5:e3:d0:91:e9: | ||||
|          1d:f9:08:ed:8b:51:c9:a6:af:46:85:b5:1c:ed:12:a1:28:33: | ||||
|          75:36:00:d8:5c:14:65:96:c0:28:7d:47:50:a4:89:5f:b0:72: | ||||
|          1a:4b:13:17:26:0f:f0:b8:65:3c:e9:96:36:f9:bf:90:59:33: | ||||
|          87:1f:01:03:25:f8:f0:3a:9b:33:02:d0:0a:43:b5:0a:cf:62: | ||||
|          a1:45:38:37:07:9d:9c:94:0b:31:c6:3c:34:b7:fc:5a:0c:e4: | ||||
|          bf:23:f6:7d | ||||
| -----BEGIN CERTIFICATE----- | ||||
| MIIFqjCCBJKgAwIBAgIBAjANBgkqhkiG9w0BAQsFADCByzELMAkGA1UEBhMCRVMx | ||||
| EjAQBgNVBAgTCUJhcmNlbG9uYTESMBAGA1UEBxMJQmFyY2Vsb25hMS0wKwYDVQQK | ||||
| EyRVbml2ZXJzaXRhdCBQb2xpdGVjbmljYSBkZSBDYXRhbHVueWExJDAiBgNVBAsT | ||||
| G0FycXVpdGVjdHVyYSBkZSBDb21wdXRhZG9yczEQMA4GA1UEAxMHTENBQyBDQTEN | ||||
| MAsGA1UEKRMETENBQzEeMBwGCSqGSIb3DQEJARYPbGNhY0BhYy51cGMuZWR1MB4X | ||||
| DTE2MDExMjEyNDU0MVoXDTQ2MDExMjEyNDU0MVowgcoxCzAJBgNVBAYTAkVTMRIw | ||||
| EAYDVQQIEwlCYXJjZWxvbmExEjAQBgNVBAcTCUJhcmNlbG9uYTEtMCsGA1UEChMk | ||||
| VW5pdmVyc2l0YXQgUG9saXRlY25pY2EgZGUgQ2F0YWx1bnlhMSQwIgYDVQQLExtB | ||||
| cnF1aXRlY3R1cmEgZGUgQ29tcHV0YWRvcnMxDzANBgNVBAMTBmNsaWVudDENMAsG | ||||
| A1UEKRMETENBQzEeMBwGCSqGSIb3DQEJARYPbGNhY0BhYy51cGMuZWR1MIIBIjAN | ||||
| BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAl5n6eg5N4h2lsagUGGTHZr/emR2S | ||||
| O4aCTZU596ZWSZcUT+M3AGz00B1WeecZtd02FY4dV3tZKdIRv1hI4PdBPRZkjaIL | ||||
| Sqz6xoPcECos2ZdI7hEqvEtg3bkuj0XKhws4ZRz4oh35UKpuYPlI31cSI+HnDIFc | ||||
| n8Wy5pmZlTBtVzYGjP37+U9g0jy6rihWL9pYXOjFe+x22Shu+4wH+dcjw3J2PPrc | ||||
| IGePzBbgkQfVaPkgTX1cLQIEFnZS81O+o9wN1ftrVSnzUjXIfZnRSpS+sY79hRgl | ||||
| 60HpVtqvYoQgCgAXlJKUkWr4VDcX7h67+5Nxkdnk6bg7GH1tfUzOWFX5QQIDAQAB | ||||
| o4IBljCCAZIwCQYDVR0TBAIwADAtBglghkgBhvhCAQ0EIBYeRWFzeS1SU0EgR2Vu | ||||
| ZXJhdGVkIENlcnRpZmljYXRlMB0GA1UdDgQWBBQbiAbVMx1cSEa13niJNpaROnRD | ||||
| GDCCAQAGA1UdIwSB+DCB9YAU3J7NfVwfU3hBHXh5sGmWOqa0TuqhgdGkgc4wgcsx | ||||
| CzAJBgNVBAYTAkVTMRIwEAYDVQQIEwlCYXJjZWxvbmExEjAQBgNVBAcTCUJhcmNl | ||||
| bG9uYTEtMCsGA1UEChMkVW5pdmVyc2l0YXQgUG9saXRlY25pY2EgZGUgQ2F0YWx1 | ||||
| bnlhMSQwIgYDVQQLExtBcnF1aXRlY3R1cmEgZGUgQ29tcHV0YWRvcnMxEDAOBgNV | ||||
| BAMTB0xDQUMgQ0ExDTALBgNVBCkTBExDQUMxHjAcBgkqhkiG9w0BCQEWD2xjYWNA | ||||
| YWMudXBjLmVkdYIJAJH118PApk5hMBMGA1UdJQQMMAoGCCsGAQUFBwMCMAsGA1Ud | ||||
| DwQEAwIHgDARBgNVHREECjAIggZjbGllbnQwDQYJKoZIhvcNAQELBQADggEBAELo | ||||
| ULLniHWGC7sp46rGDkzo6j0MAjF/O4AMP4CvRdZiJ6AO5yYJEpeV+NmbibXvVmTx | ||||
| 3oJ04DEKzJAKvVC4VJUKrjtA33a20QEu85afUtTpFG23FJ1FmTM2KgELFRrtVdxk | ||||
| g2UaBkLZx9yX1AKBwlgr6uS3roQ65D/xLvrs80BduGrVXuHoL+IvSKQ4oU8i409m | ||||
| lKoCeJorel2qqlGl49CR6R35CO2LUcmmr0aFtRztEqEoM3U2ANhcFGWWwCh9R1Ck | ||||
| iV+wchpLExcmD/C4ZTzpljb5v5BZM4cfAQMl+PA6mzMC0ApDtQrPYqFFODcHnZyU | ||||
| CzHGPDS3/FoM5L8j9n0= | ||||
| -----END CERTIFICATE----- | ||||
| @ -14,6 +14,7 @@ | ||||
|     ../hut/public-inbox.nix | ||||
|     ../hut/msmtp.nix | ||||
|     ../module/p.nix | ||||
|     ../module/vpn-dac.nix | ||||
|   ]; | ||||
| 
 | ||||
|   # Select the this using the ID to avoid mismatches | ||||
|  | ||||
| @ -19,6 +19,8 @@ in | ||||
|   "tent-gitlab-runner-pm-docker-token.age".publicKeys = tent; | ||||
|   "tent-gitlab-runner-pm-shell-token.age".publicKeys = tent; | ||||
|   "tent-gitlab-runner-bsc-docker-token.age".publicKeys = tent; | ||||
|   "vpn-dac-login.age".publicKeys = tent; | ||||
|   "vpn-dac-client-key.age".publicKeys = tent; | ||||
| 
 | ||||
|   "ceph-user.age".publicKeys = safe; | ||||
|   "munge-key.age".publicKeys = safe; | ||||
|  | ||||
							
								
								
									
										
											BIN
										
									
								
								secrets/vpn-dac-client-key.age
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								secrets/vpn-dac-client-key.age
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								secrets/vpn-dac-login.age
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								secrets/vpn-dac-login.age
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
		Reference in New Issue
	
	Block a user