mirror of https://github.com/jumpserver/jumpserver
Debug some bug for auth failed and exit
parent
acf51238d0
commit
e3c620e138
|
@ -104,8 +104,8 @@ class SSHServer(paramiko.ServerInterface):
|
||||||
|
|
||||||
def check_auth_password(self, username, password):
|
def check_auth_password(self, username, password):
|
||||||
self.user = user = check_user_is_valid(username=username, password=password)
|
self.user = user = check_user_is_valid(username=username, password=password)
|
||||||
self.username = username = user.username
|
|
||||||
if self.user:
|
if self.user:
|
||||||
|
self.username = username = user.username
|
||||||
logger.info('Accepted password for %(username)s from %(host)s port %(port)s ' % {
|
logger.info('Accepted password for %(username)s from %(host)s port %(port)s ' % {
|
||||||
'username': username,
|
'username': username,
|
||||||
'host': self.addr[0],
|
'host': self.addr[0],
|
||||||
|
@ -113,6 +113,7 @@ class SSHServer(paramiko.ServerInterface):
|
||||||
})
|
})
|
||||||
return paramiko.AUTH_SUCCESSFUL
|
return paramiko.AUTH_SUCCESSFUL
|
||||||
else:
|
else:
|
||||||
|
self.client.close()
|
||||||
logger.info('Authentication password failed for %(username)s from %(host)s port %(port)s ' % {
|
logger.info('Authentication password failed for %(username)s from %(host)s port %(port)s ' % {
|
||||||
'username': username,
|
'username': username,
|
||||||
'host': self.addr[0],
|
'host': self.addr[0],
|
||||||
|
@ -235,7 +236,6 @@ class JumpServer:
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.listen_host = '0.0.0.0'
|
self.listen_host = '0.0.0.0'
|
||||||
self.listen_port = 2222
|
self.listen_port = 2222
|
||||||
self.sock = None
|
|
||||||
|
|
||||||
def display_navigation(self, username, client_channel):
|
def display_navigation(self, username, client_channel):
|
||||||
nav = Navigation(username, client_channel)
|
nav = Navigation(username, client_channel)
|
||||||
|
@ -262,12 +262,12 @@ class JumpServer:
|
||||||
client_channel = transport.accept(20)
|
client_channel = transport.accept(20)
|
||||||
self.__class__.client_channel_pools.append(client_channel)
|
self.__class__.client_channel_pools.append(client_channel)
|
||||||
if client_channel is None:
|
if client_channel is None:
|
||||||
logger.warning('No channel get.')
|
logger.warning('No ssh channel get.')
|
||||||
raise SSHServerException('No channel get.')
|
client.close()
|
||||||
|
sys.exit(404)
|
||||||
|
|
||||||
if not ssh_server.event.is_set():
|
if not ssh_server.event.is_set():
|
||||||
logger.warning('Client never asked for a shell.')
|
logger.warning('Client never asked for a shell.')
|
||||||
raise SSHServerException('Client never asked for a shell.')
|
|
||||||
return client_channel
|
return client_channel
|
||||||
|
|
||||||
def get_backend_channel(self, host, port, username, term='xterm', width=80, height=24):
|
def get_backend_channel(self, host, port, username, term='xterm', width=80, height=24):
|
||||||
|
@ -345,7 +345,7 @@ class JumpServer:
|
||||||
sys.exit(100)
|
sys.exit(100)
|
||||||
|
|
||||||
def listen(self):
|
def listen(self):
|
||||||
self.sock = sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||||
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
|
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
|
||||||
sock.bind((self.listen_host, self.listen_port))
|
sock.bind((self.listen_host, self.listen_port))
|
||||||
sock.listen(5)
|
sock.listen(5)
|
||||||
|
@ -357,7 +357,7 @@ class JumpServer:
|
||||||
|
|
||||||
while True:
|
while True:
|
||||||
try:
|
try:
|
||||||
client, addr = self.sock.accept()
|
client, addr = sock.accept()
|
||||||
process = Process(target=self.handle_ssh_request, args=(client, addr))
|
process = Process(target=self.handle_ssh_request, args=(client, addr))
|
||||||
process.daemon = True
|
process.daemon = True
|
||||||
process.start()
|
process.start()
|
||||||
|
|
Loading…
Reference in New Issue