Exemplo n.º 1
0
 def auto_gen_auth(self):
     password = str(uuid.uuid4())
     private_key, public_key = ssh_key_gen(username=self.username,
                                           password=password)
     self.set_auth(password=password,
                   private_key=private_key,
                   public_key=public_key)
Exemplo n.º 2
0
Arquivo: user.py Projeto: jcops/diting
 def get(self, request, *args, **kwargs):
     private, public = ssh_key_gen(username=request.user.username, hostname='jumpserver')
     request.user.public_key = public
     request.user.save()
     response = HttpResponse(private, content_type='text/plain')
     filename = "{0}-jumpserver.pem".format(request.user.username)
     response['Content-Disposition'] = 'attachment; filename={}'.format(filename)
     return response
Exemplo n.º 3
0
 def get(self, request, *args, **kwargs):
     private, public = ssh_key_gen(username=request.user.username, hostname='jumpserver')
     request.user.public_key = public
     request.user.save()
     response = HttpResponse(private, content_type='text/plain')
     filename = "{0}-jumpserver.pem".format(request.user.username)
     response['Content-Disposition'] = 'attachment; filename={}'.format(filename)
     return response
Exemplo n.º 4
0
 def auto_gen_auth(self):
     password = str(uuid.uuid4())
     private_key, public_key = ssh_key_gen(
         username=self.username
     )
     self.set_auth(password=password,
                   private_key=private_key,
                   public_key=public_key)
Exemplo n.º 5
0
def auto_generate_terminal_host_key(sender, **kwargs):
    try:
        if Setting.objects.filter(name='TERMINAL_HOST_KEY').exists():
            return
        private_key, public_key = ssh_key_gen()
        value = json.dumps(private_key)
        Setting.objects.create(name='TERMINAL_HOST_KEY', value=value)
    except:
        pass
Exemplo n.º 6
0
def auto_generate_terminal_host_key(sender, **kwargs):
    try:
        if Setting.objects.filter(name='TERMINAL_HOST_KEY').exists():
            return
        private_key, public_key = ssh_key_gen()
        value = json.dumps(private_key)
        Setting.objects.create(name='TERMINAL_HOST_KEY', value=value)
    except:
        pass
Exemplo n.º 7
0
    def save(self, commit=True):
        # Because we define custom field, so we need rewrite :method: `save`
        system_user = super(SystemUserForm, self).save(commit=commit)
        password = self.cleaned_data['password']
        private_key_file = self.cleaned_data.get('private_key_file')

        if system_user.auth_method == 'P':
            if password:
                system_user.password = password
        elif system_user.auth_method == 'K':
            if self.cleaned_data['auto_generate_key']:
                private_key, public_key = ssh_key_gen(
                    username=system_user.name)
                logger.info('Generate private key and public key')
            else:
                private_key = private_key_file.read().strip()
                public_key = ssh_pubkey_gen(private_key=private_key)
            system_user.private_key = private_key
            system_user.public_key = public_key
        system_user.save()
        return self.instance
Exemplo n.º 8
0
 def gen_key(username):
     private_key, public_key = ssh_key_gen(
         username=username
     )
     return private_key, public_key