mirror of https://github.com/jumpserver/jumpserver
stash
parent
d3e9c8c9c0
commit
216163f436
|
@ -0,0 +1,93 @@
|
|||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
|
||||
BASE_DIR = os.path.dirname(os.path.abspath(__name__))
|
||||
LOG_LEVEL_CHOICES = {
|
||||
'debug': logging.DEBUG,
|
||||
'info': logging.INFO,
|
||||
'warning': logging.WARNING,
|
||||
'error': logging.ERROR,
|
||||
'critical': logging.CRITICAL
|
||||
}
|
||||
|
||||
|
||||
class Config:
|
||||
LOG_LEVEL = ''
|
||||
LOG_DIR = os.path.join(BASE_DIR, 'logs')
|
||||
LOGGING = {
|
||||
'version': 1,
|
||||
'formatters': {
|
||||
'verbose': {
|
||||
'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'
|
||||
},
|
||||
'main': {
|
||||
'datefmt': '%Y-%m-%d %H:%M:%S',
|
||||
'format': '%(asctime)s [%(module)s %(levelname)s] %(message)s',
|
||||
},
|
||||
'simple': {
|
||||
'format': '%(levelname)s %(message)s'
|
||||
},
|
||||
},
|
||||
'handlers': {
|
||||
'null': {
|
||||
'level': 'DEBUG',
|
||||
'class': 'logging.NullHandler',
|
||||
},
|
||||
'console': {
|
||||
'level': 'DEBUG',
|
||||
'class': 'logging.StreamHandler',
|
||||
'formatter': 'main'
|
||||
},
|
||||
'file': {
|
||||
'level': 'DEBUG',
|
||||
'class': 'logging.FileHandler',
|
||||
'formatter': 'main',
|
||||
'filename': os.path.join(PROJECT_DIR, 'logs', 'jumpserver.log')
|
||||
},
|
||||
},
|
||||
'loggers': {
|
||||
'django': {
|
||||
'handlers': ['null'],
|
||||
'propagate': False,
|
||||
'level': LOG_LEVEL,
|
||||
},
|
||||
'django.request': {
|
||||
'handlers': ['console', 'file'],
|
||||
'level': LOG_LEVEL,
|
||||
'propagate': False,
|
||||
},
|
||||
'django.server': {
|
||||
'handlers': ['console', 'file'],
|
||||
'level': LOG_LEVEL,
|
||||
'propagate': False,
|
||||
},
|
||||
'jumpserver': {
|
||||
'handlers': ['console', 'file'],
|
||||
'level': LOG_LEVEL,
|
||||
},
|
||||
'jumpserver.users.api': {
|
||||
'handlers': ['console', 'file'],
|
||||
'level': LOG_LEVEL,
|
||||
},
|
||||
'jumpserver.users.view': {
|
||||
'handlers': ['console', 'file'],
|
||||
'level': LOG_LEVEL,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
def __getattr__(self, item):
|
||||
return None
|
||||
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
pass
|
|
@ -37,14 +37,7 @@ from users.utils import ssh_key_gen, check_user_is_valid
|
|||
logger = get_logger(__name__)
|
||||
|
||||
|
||||
class SSHService(paramiko.ServerInterface):
|
||||
# data = (b'AAAAB3NzaC1yc2EAAAABIwAAAIEAyO4it3fHlmGZWJaGrfeHOVY7RWO3P9M7hp'
|
||||
# b'fAu7jJ2d7eothvfeuoRFtJwhUmZDluRdFyhFY/hFAh76PJKGAusIqIQKlkJxMC'
|
||||
# b'KDqIexkgHAfID/6mqvmnSJf0b5W8v5h2pI/stOSwTQ+pxVhwJ9ctYDhRSlF0iT'
|
||||
# b'UWT10hcuO4Ks8=')
|
||||
# good_pub_key = paramiko.RSAKey(data=decodebytes(data))
|
||||
# host_key = paramiko.RSAKey(filename='test_rsa.key')
|
||||
|
||||
class SSHServerInterface(paramiko.ServerInterface):
|
||||
host_key_path = os.path.join(BASE_DIR, 'host_rsa_key')
|
||||
|
||||
def __init__(self):
|
||||
|
@ -138,10 +131,10 @@ class SSHServer:
|
|||
logger.warning('(Failed to load moduli -- gex will be unsupported.)')
|
||||
raise
|
||||
|
||||
transport.add_server_key(SSHService.get_host_key())
|
||||
service = SSHService()
|
||||
transport.add_server_key(SSHServerInterface.get_host_key())
|
||||
ssh_interface = SSHServerInterface()
|
||||
try:
|
||||
transport.start_server(server=service)
|
||||
transport.start_server(server=ssh_interface)
|
||||
except paramiko.SSHException:
|
||||
print('*** SSH negotiation failed.')
|
||||
return
|
||||
|
@ -158,7 +151,7 @@ class SSHServer:
|
|||
channel.send('We are on fire all the time! Hooray! Candy corn for everyone!\r\n')
|
||||
channel.send('Happy birthday to Robot Dave!\r\n\r\n')
|
||||
server_channel = self.connect()
|
||||
if not service.event.is_set():
|
||||
if not ssh_interface.event.is_set():
|
||||
print('*** Client never asked for a shell.')
|
||||
return
|
||||
server_data = []
|
|
@ -0,0 +1,8 @@
|
|||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
|
||||
import logging
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
pass
|
Loading…
Reference in New Issue