Example #1
0
 def _auto_create_cert(self):
     """
     Automatically generates server x509 certificate
     """
     common_name = slugify(self.name)
     server_extensions = [
         {
             "name": "nsCertType",
             "value": "server",
             "critical": False
         }
     ]
     cert = Cert(name=self.name,
                 ca=self.ca,
                 key_length=self.ca.key_length,
                 digest=self.ca.digest,
                 country_code=self.ca.country_code,
                 state=self.ca.state,
                 city=self.ca.city,
                 organization=self.ca.organization,
                 email=self.ca.email,
                 common_name=common_name,
                 extensions=server_extensions)
     cert.save()
     return cert
Example #2
0
 def test_vpn_cert_and_ca_mismatch(self):
     ca = self._create_ca()
     different_ca = self._create_ca()
     cert = Cert(name='test-cert-vpn',
                 ca=ca,
                 key_length='2048',
                 digest='sha256',
                 country_code='IT',
                 state='RM',
                 city='Rome',
                 organization_name='OpenWISP',
                 email='*****@*****.**',
                 common_name='openwisp.org')
     cert.full_clean()
     cert.save()
     vpn = Vpn(name='test',
               host='vpn1.test.com',
               ca=different_ca,
               cert=cert,
               backend='django_netjsonconfig.vpn_backends.OpenVpn')
     try:
         vpn.full_clean()
     except ValidationError as e:
         self.assertIn('cert', e.message_dict)
     else:
         self.fail('Mismatch between ca and cert but '
                   'ValidationError not raised')
Example #3
0
 def _auto_create_cert(self):
     """
     Automatically generates server x509 certificate
     """
     common_name = slugify(self.name)
     server_extensions = [{
         "name": "nsCertType",
         "value": "server",
         "critical": False
     }]
     cert = Cert(name=self.name,
                 ca=self.ca,
                 key_length=self.ca.key_length,
                 digest=self.ca.digest,
                 country_code=self.ca.country_code,
                 state=self.ca.state,
                 city=self.ca.city,
                 organization=self.ca.organization,
                 email=self.ca.email,
                 common_name=common_name,
                 extensions=server_extensions)
     cert.save()
     return cert