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
7f6f46b6
Commit
7f6f46b6
authored
9 years ago
by
wangyong
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' of
https://git.coding.net/jumpserver/jumpserver
into dev
parents
e78d7b02
62261149
master
auditor_jym
audits
dev
dev_beta
dev_beta_db
gengmei
lagacy-0.4.0
node_service
password
rbac
restrict_access
test
v52
wph
1.5.2
1.5.1
1.5.0
1.4.10
1.4.9
1.4.8
1.4.7
1.4.6
1.4.5
1.4.4
1.4.3
1.4.2
1.4.1
1.4.0
1.3.3
1.3.2
1.3.1
1.3.0
1.2.1
1.2.0
1.1.1
1.1.0
1.0.0
0.3.3
0.3.2
0.3.2-rc2
0.3.1
0.3.0-beta
v1.4.10
v1.4.7
v1.4.4
No related merge requests found
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
14 additions
and
308 deletions
+14
-308
AddUserAsset.py
docs/AddUserAsset.py
+0
-141
initial_data.yaml
docs/initial_data.yaml
+0
-19
install.py
docs/install.py
+0
-135
requirements.txt
docs/requirements.txt
+12
-11
user_api.py
juser/user_api.py
+2
-2
No files found.
docs/AddUserAsset.py
deleted
100644 → 0
View file @
e78d7b02
#coding:utf-8
import
django
import
os
import
sys
import
random
import
datetime
sys
.
path
.
append
(
'../'
)
os
.
environ
[
'DJANGO_SETTINGS_MODULE'
]
=
'jumpserver.settings'
#django.setup()
from
juser.views
import
db_add_user
,
md5_crypt
,
CRYPTOR
,
db_add_group
from
jasset.models
import
Asset
,
IDC
,
BisGroup
from
juser.models
import
UserGroup
,
DEPT
,
User
from
jperm.models
import
CmdGroup
from
jlog.models
import
Log
def
install
():
IDC
.
objects
.
create
(
name
=
'ALL'
,
comment
=
'ALL'
)
IDC
.
objects
.
create
(
name
=
'默认'
,
comment
=
'默认'
)
DEPT
.
objects
.
create
(
name
=
"默认"
,
comment
=
"默认部门"
)
DEPT
.
objects
.
create
(
name
=
"超管部"
,
comment
=
"超级管理员部门"
)
dept
=
DEPT
.
objects
.
get
(
name
=
'超管部'
)
dept2
=
DEPT
.
objects
.
get
(
name
=
'默认'
)
UserGroup
.
objects
.
create
(
name
=
'ALL'
,
dept
=
dept
,
comment
=
'ALL'
)
UserGroup
.
objects
.
create
(
name
=
'默认'
,
dept
=
dept
,
comment
=
'默认'
)
BisGroup
.
objects
.
create
(
name
=
'ALL'
,
dept
=
dept
,
comment
=
'ALL'
)
BisGroup
.
objects
.
create
(
name
=
'默认'
,
dept
=
dept
,
comment
=
'默认'
)
User
(
id
=
5000
,
username
=
"admin"
,
password
=
md5_crypt
(
'admin'
),
name
=
'admin'
,
email
=
'admin@jumpserver.org'
,
role
=
'SU'
,
is_active
=
True
,
dept
=
dept
)
.
save
()
User
(
id
=
5001
,
username
=
"group_admin"
,
password
=
md5_crypt
(
'group_admin'
),
name
=
'group_admin'
,
email
=
'group_admin@jumpserver.org'
,
role
=
'DA'
,
is_active
=
True
,
dept
=
dept2
)
.
save
()
def
test_add_idc
():
for
i
in
range
(
1
,
20
):
name
=
'IDC'
+
str
(
i
)
IDC
.
objects
.
create
(
name
=
name
,
comment
=
''
)
print
'Add:
%
s'
%
name
def
test_add_dept
():
for
i
in
range
(
1
,
100
):
name
=
'DEPT'
+
str
(
i
)
print
"Add:
%
s"
%
name
DEPT
.
objects
.
create
(
name
=
name
,
comment
=
name
)
def
test_add_group
():
dept_all
=
DEPT
.
objects
.
all
()
for
i
in
range
(
1
,
100
):
name
=
'UserGroup'
+
str
(
i
)
UserGroup
.
objects
.
create
(
name
=
name
,
dept
=
random
.
choice
(
dept_all
),
comment
=
name
)
print
'Add:
%
s'
%
name
def
test_add_cmd_group
():
for
i
in
range
(
1
,
20
):
name
=
'CMD'
+
str
(
i
)
cmd
=
'/sbin/ping
%
s, /sbin/ifconfig/'
%
str
(
i
)
CmdGroup
.
objects
.
create
(
name
=
name
,
cmd
=
cmd
,
comment
=
name
)
print
'Add:
%
s'
%
name
def
test_add_user
():
for
i
in
range
(
1
,
500
):
username
=
"test"
+
str
(
i
)
dept_all
=
DEPT
.
objects
.
all
()
group_all
=
UserGroup
.
objects
.
all
()
group_all_id
=
[
group
.
id
for
group
in
group_all
]
db_add_user
(
username
=
username
,
password
=
md5_crypt
(
username
),
dept
=
random
.
choice
(
dept_all
),
name
=
username
,
email
=
'
%
s@jumpserver.org'
%
username
,
groups
=
[
random
.
choice
(
group_all_id
)
for
i
in
range
(
1
,
4
)],
role
=
'CU'
,
ssh_key_pwd
=
CRYPTOR
.
encrypt
(
username
),
ldap_pwd
=
CRYPTOR
.
encrypt
(
username
),
is_active
=
True
,
date_joined
=
datetime
.
datetime
.
now
())
print
"Add:
%
s"
%
username
def
test_add_asset_group
():
dept
=
DEPT
.
objects
.
get
(
name
=
'默认'
)
for
i
in
range
(
1
,
20
):
name
=
'AssetGroup'
+
str
(
i
)
group
=
BisGroup
(
name
=
name
,
dept
=
dept
,
comment
=
name
)
group
.
save
()
print
'Add:
%
s'
%
name
def
test_add_asset
():
idc_all
=
IDC
.
objects
.
all
()
test_idc
=
random
.
choice
(
idc_all
)
bis_group_all
=
BisGroup
.
objects
.
all
()
dept_all
=
DEPT
.
objects
.
all
()
for
i
in
range
(
1
,
500
):
ip
=
'192.168.5.'
+
str
(
i
)
asset
=
Asset
(
ip
=
ip
,
port
=
22
,
login_type
=
'L'
,
idc
=
test_idc
,
is_active
=
True
,
comment
=
'test'
)
asset
.
save
()
asset
.
bis_group
=
[
random
.
choice
(
bis_group_all
)
for
i
in
range
(
2
)]
asset
.
dept
=
[
random
.
choice
(
dept_all
)
for
i
in
range
(
2
)]
print
"Add:
%
s"
%
ip
def
test_add_log
():
li_date
=
[]
today
=
datetime
.
date
.
today
()
oneday
=
datetime
.
timedelta
(
days
=
1
)
for
i
in
range
(
0
,
7
):
today
=
today
-
oneday
li_date
.
append
(
today
)
user_list
=
[
'马云'
,
'马化腾'
,
'丁磊'
,
'周鸿祎'
,
'雷军'
,
'柳传志'
,
'陈天桥'
,
'李彦宏'
,
'李开复'
,
'罗永浩'
]
for
i
in
range
(
1
,
1000
):
user
=
random
.
choice
(
user_list
)
ip
=
random
.
randint
(
1
,
20
)
start_time
=
random
.
choice
(
li_date
)
end_time
=
datetime
.
datetime
.
now
()
log_path
=
'/var/log/jumpserver/test.log'
host
=
'192.168.1.'
+
str
(
ip
)
Log
.
objects
.
create
(
user
=
user
,
host
=
host
,
remote_ip
=
'8.8.8.8'
,
dept_name
=
'运维部'
,
log_path
=
log_path
,
pid
=
168
,
start_time
=
start_time
,
is_finished
=
1
,
log_finished
=
1
,
end_time
=
end_time
)
if
__name__
==
'__main__'
:
# install()
# test_add_dept()
# test_add_group()
# test_add_user()
# test_add_idc()
# test_add_asset_group()
test_add_asset
()
# test_add_log()
This diff is collapsed.
Click to expand it.
docs/initial_data.yaml
View file @
7f6f46b6
...
@@ -7,22 +7,3 @@
...
@@ -7,22 +7,3 @@
email
:
admin@jumpserver.org
email
:
admin@jumpserver.org
role
:
SU
role
:
SU
is_active
:
1
is_active
:
1
-
model
:
juser.user
pk
:
5001
fields
:
username
:
group_admin
name
:
group_admin
password
:
pbkdf2_sha256$20000$ttObUWd15q10$NJoyZf2OZz9oiw2g4j2TkTh9zGgyVDRFdUkhn8X0nB0=
email
:
group_admin@jumpserver.org
role
:
GA
is_active
:
1
-
model
:
juser.usergroup
pk
:
1
fields
:
name
:
ALL
comment
:
ALL
-
model
:
juser.usergroup
pk
:
2
fields
:
name
:
默认
comment
:
默认
This diff is collapsed.
Click to expand it.
docs/install.py
deleted
100644 → 0
View file @
e78d7b02
#coding:utf-8
import
django
import
os
import
sys
import
random
import
datetime
sys
.
path
.
append
(
'../'
)
os
.
environ
[
'DJANGO_SETTINGS_MODULE'
]
=
'jumpserver.settings'
#django.setup()
from
juser.views
import
db_add_user
,
md5_crypt
,
CRYPTOR
,
db_add_group
from
jasset.models
import
Asset
,
IDC
,
BisGroup
from
juser.models
import
UserGroup
,
DEPT
,
User
from
jasset.views
import
jasset_group_add
from
jperm.models
import
CmdGroup
from
jlog.models
import
Log
def
install
():
IDC
.
objects
.
create
(
name
=
'ALL'
,
comment
=
'ALL'
)
IDC
.
objects
.
create
(
name
=
'默认'
,
comment
=
'默认'
)
DEPT
.
objects
.
create
(
name
=
"默认"
,
comment
=
"默认部门"
)
DEPT
.
objects
.
create
(
name
=
"超管部"
,
comment
=
"超级管理员部门"
)
dept
=
DEPT
.
objects
.
get
(
name
=
'超管部'
)
dept2
=
DEPT
.
objects
.
get
(
name
=
'默认'
)
UserGroup
.
objects
.
create
(
name
=
'ALL'
,
dept
=
dept
,
comment
=
'ALL'
)
UserGroup
.
objects
.
create
(
name
=
'默认'
,
dept
=
dept
,
comment
=
'默认'
)
BisGroup
.
objects
.
create
(
name
=
'ALL'
,
dept
=
dept
,
comment
=
'ALL'
)
BisGroup
.
objects
.
create
(
name
=
'默认'
,
dept
=
dept
,
comment
=
'默认'
)
User
(
id
=
5000
,
username
=
"admin"
,
password
=
md5_crypt
(
'admin'
),
name
=
'admin'
,
email
=
'admin@jumpserver.org'
,
role
=
'SU'
,
is_active
=
True
,
dept
=
dept
)
.
save
()
User
(
id
=
5001
,
username
=
"group_admin"
,
password
=
md5_crypt
(
'group_admin'
),
name
=
'group_admin'
,
email
=
'group_admin@jumpserver.org'
,
role
=
'DA'
,
is_active
=
True
,
dept
=
dept2
)
.
save
()
def
test_add_idc
():
for
i
in
range
(
1
,
20
):
name
=
'IDC'
+
str
(
i
)
IDC
.
objects
.
create
(
name
=
name
,
comment
=
''
)
print
'Add:
%
s'
%
name
def
test_add_dept
():
for
i
in
range
(
1
,
100
):
name
=
'DEPT'
+
str
(
i
)
print
"Add:
%
s"
%
name
DEPT
.
objects
.
create
(
name
=
name
,
comment
=
name
)
def
test_add_group
():
dept_all
=
DEPT
.
objects
.
all
()
for
i
in
range
(
1
,
100
):
name
=
'UserGroup'
+
str
(
i
)
UserGroup
.
objects
.
create
(
name
=
name
,
dept
=
random
.
choice
(
dept_all
),
comment
=
name
)
print
'Add:
%
s'
%
name
def
test_add_cmd_group
():
for
i
in
range
(
1
,
20
):
name
=
'CMD'
+
str
(
i
)
cmd
=
'/sbin/ping
%
s, /sbin/ifconfig/'
%
str
(
i
)
CmdGroup
.
objects
.
create
(
name
=
name
,
cmd
=
cmd
,
comment
=
name
)
print
'Add:
%
s'
%
name
def
test_add_user
():
for
i
in
range
(
1
,
500
):
username
=
"test"
+
str
(
i
)
dept_all
=
DEPT
.
objects
.
all
()
group_all
=
UserGroup
.
objects
.
all
()
group_all_id
=
[
group
.
id
for
group
in
group_all
]
db_add_user
(
username
=
username
,
password
=
md5_crypt
(
username
),
dept
=
random
.
choice
(
dept_all
),
name
=
username
,
email
=
'
%
s@jumpserver.org'
%
username
,
groups
=
[
random
.
choice
(
group_all_id
)
for
i
in
range
(
1
,
4
)],
role
=
'CU'
,
ssh_key_pwd
=
CRYPTOR
.
encrypt
(
username
),
ldap_pwd
=
CRYPTOR
.
encrypt
(
username
),
is_active
=
True
,
date_joined
=
datetime
.
datetime
.
now
())
print
"Add:
%
s"
%
username
def
test_add_asset_group
():
dept
=
DEPT
.
objects
.
get
(
name
=
'默认'
)
for
i
in
range
(
1
,
20
):
name
=
'AssetGroup'
+
str
(
i
)
group
=
BisGroup
(
name
=
name
,
dept
=
dept
,
comment
=
name
)
group
.
save
()
print
'Add:
%
s'
%
name
def
test_add_asset
():
idc_all
=
IDC
.
objects
.
all
()
test_idc
=
random
.
choice
(
idc_all
)
bis_group_all
=
BisGroup
.
objects
.
all
()
dept_all
=
DEPT
.
objects
.
all
()
for
i
in
range
(
1
,
500
):
ip
=
'192.168.1.'
+
str
(
i
)
asset
=
Asset
(
ip
=
ip
,
port
=
22
,
login_type
=
'L'
,
idc
=
test_idc
,
is_active
=
True
,
comment
=
'test'
)
asset
.
save
()
asset
.
bis_group
=
[
random
.
choice
(
bis_group_all
)
for
i
in
range
(
2
)]
asset
.
dept
=
[
random
.
choice
(
dept_all
)
for
i
in
range
(
2
)]
print
"Add:
%
s"
%
ip
def
test_add_log
():
li_date
=
[]
today
=
datetime
.
date
.
today
()
oneday
=
datetime
.
timedelta
(
days
=
1
)
for
i
in
range
(
0
,
7
):
today
=
today
-
oneday
li_date
.
append
(
today
)
user_list
=
[
'马云'
,
'马化腾'
,
'丁磊'
,
'周鸿祎'
,
'雷军'
,
'柳传志'
,
'陈天桥'
,
'李彦宏'
,
'李开复'
,
'罗永浩'
]
for
i
in
range
(
1
,
1000
):
user
=
random
.
choice
(
user_list
)
ip
=
random
.
randint
(
1
,
20
)
start_time
=
random
.
choice
(
li_date
)
end_time
=
datetime
.
datetime
.
now
()
log_path
=
'/var/log/jumpserver/test.log'
host
=
'192.168.1.'
+
str
(
ip
)
Log
.
objects
.
create
(
user
=
user
,
host
=
host
,
log_path
=
log_path
,
pid
=
168
,
start_time
=
start_time
,
is_finished
=
1
,
log_finished
=
1
,
end_time
=
end_time
)
if
__name__
==
'__main__'
:
install
()
This diff is collapsed.
Click to expand it.
docs/requirements.txt
View file @
7f6f46b6
sphinx-me==0.3
#
sphinx-me==0.3
django==1.6
django==1.6
pycrypto==2.6.1
pycrypto==2.6.1
paramiko==1.1
5.2
paramiko==1.1
6.0
ecdsa==0.13
ecdsa==0.13
MySQL-python==1.2.5
MySQL-python==1.2.5
django-uuidfield==0.5.0
#
django-uuidfield==0.5.0
psutil==
2.2.1
psutil==
3.3.0
xlsxwriter==0.7.7
xlsxwriter==0.7.7
xlrd==0.9.4
xlrd==0.9.4
django-bootstrap-form
django-bootstrap-form==3.2
tornado
tornado==4.3
ansible
ansible==1.9.4
pyinotify
pyinotify==0.9.6
passlib
passlib==1.6.5
argparse
argparse==1.4.0
\ No newline at end of file
django_crontab==0.6.0
\ No newline at end of file
This diff is collapsed.
Click to expand it.
juser/user_api.py
View file @
7f6f46b6
...
@@ -129,8 +129,8 @@ def gen_ssh_key(username, password='',
...
@@ -129,8 +129,8 @@ def gen_ssh_key(username, password='',
生成一个用户ssh密钥对
生成一个用户ssh密钥对
"""
"""
logger
.
debug
(
'生成ssh key, 并设置authorized_keys'
)
logger
.
debug
(
'生成ssh key, 并设置authorized_keys'
)
private_key_file
=
os
.
path
.
join
(
key_dir
,
username
,
'pem'
)
private_key_file
=
os
.
path
.
join
(
key_dir
,
username
+
'pem'
)
mkdir
(
key_dir
,
mode
=
07
77
)
mkdir
(
key_dir
,
mode
=
07
00
)
if
os
.
path
.
isfile
(
private_key_file
):
if
os
.
path
.
isfile
(
private_key_file
):
os
.
unlink
(
private_key_file
)
os
.
unlink
(
private_key_file
)
ret
=
bash
(
'echo -e "y
\n
"|ssh-keygen -t rsa -f
%
s -b
%
s -P "
%
s"'
%
(
private_key_file
,
length
,
password
))
ret
=
bash
(
'echo -e "y
\n
"|ssh-keygen -t rsa -f
%
s -b
%
s -P "
%
s"'
%
(
private_key_file
,
length
,
password
))
...
...
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