Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
J
jumpserver
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ops
jumpserver
Commits
168157bf
Commit
168157bf
authored
9 years ago
by
ibuler
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix
parent
30fe9f52
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
10 additions
and
3 deletions
+10
-3
connect.py
connect.py
+10
-3
No files found.
connect.py
View file @
168157bf
...
...
@@ -21,7 +21,7 @@ if django.get_version() != '1.6':
django
.
setup
()
from
django.contrib.sessions.models
import
Session
from
jumpserver.api
import
ServerError
,
User
,
Asset
,
PermRole
,
AssetGroup
,
get_object
,
mkdir
,
get_asset_info
,
get_role
from
jumpserver.api
import
logger
,
Log
,
TtyLog
,
get_role_key
from
jumpserver.api
import
logger
,
Log
,
TtyLog
,
get_role_key
,
CRYPTOR
from
jperm.perm_api
import
gen_resource
,
get_group_asset_perm
,
get_group_user_perm
,
user_have_perm
from
jumpserver.settings
import
LOG_DIR
from
jperm.ansible_api
import
Command
...
...
@@ -211,9 +211,16 @@ class Tty(object):
获取需要登陆的主机的信息和映射用户的账号密码
"""
asset_info
=
get_asset_info
(
self
.
asset
)
role_pass
=
CRYPTOR
.
decrypt
(
self
.
role
.
password
)
role_key
=
os
.
path
.
join
(
self
.
role
.
key_path
,
'id_rsa'
)
self
.
connect_info
=
{
'user'
:
self
.
user
,
'asset'
:
self
.
asset
,
'ip'
:
asset_info
.
get
(
'ip'
),
'port'
:
int
(
asset_info
.
get
(
'port'
)),
'role_name'
:
self
.
role
.
name
,
'role_pass'
:
self
.
role
.
password
,
'role_key'
:
self
.
role
.
key_path
}
'role_pass'
:
role_pass
,
'role_key'
:
role_key
}
logger
.
debug
(
"Connect: Host:
%
s Port:
%
s User:
%
s Pass:
%
s Key:
%
s"
%
(
asset_info
.
get
(
'ip'
),
asset_info
.
get
(
'port'
),
self
.
role
.
name
,
role_pass
,
role_key
))
return
self
.
connect_info
def
get_connection
(
self
):
...
...
@@ -237,7 +244,7 @@ class Tty(object):
look_for_keys
=
False
)
self
.
ssh
=
ssh
return
ssh
except
paramiko
.
ssh_exception
.
AuthenticationException
,
paramiko
.
ssh_exception
.
SSHException
:
except
(
paramiko
.
ssh_exception
.
AuthenticationException
,
paramiko
.
ssh_exception
.
SSHException
)
:
pass
ssh
.
connect
(
connect_info
.
get
(
'ip'
),
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment