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
6b7937c6
Commit
6b7937c6
authored
Dec 01, 2015
by
ibuler
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
普通用户页面
parent
f72c5753
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
68 additions
and
250 deletions
+68
-250
index_cu.html
templates/index_cu.html
+66
-179
nav.html
templates/nav.html
+2
-71
No files found.
templates/index_cu.html
View file @
6b7937c6
...
...
@@ -5,197 +5,84 @@
<div
class=
"wrapper wrapper-content"
xmlns=
"http://www.w3.org/1999/html"
>
<div
class=
"row"
>
<div
class=
"col-lg-8"
>
<div
class=
"ibox float-e-margins"
>
<div
class=
"ibox-title"
>
<h5>
使用说明
</h5>
<div
class=
"ibox-tools"
>
<a
class=
"collapse-link"
>
<i
class=
"fa fa-chevron-up"
></i>
</a>
<a
class=
"dropdown-toggle"
data-toggle=
"dropdown"
href=
"#"
>
<i
class=
"fa fa-wrench"
></i>
</a>
<a
class=
"close-link"
>
<i
class=
"fa fa-times"
></i>
</a>
<div
class=
"col-sm-8"
>
<div
class=
"col-lg-12"
>
<div
class=
"ibox float-e-margins"
>
<div
class=
"ibox-title"
>
<h5>
使用说明
</h5>
<div
class=
"ibox-tools"
>
<a
class=
"collapse-link"
>
<i
class=
"fa fa-chevron-up"
></i>
</a>
<a
class=
"dropdown-toggle"
data-toggle=
"dropdown"
href=
"#"
>
<i
class=
"fa fa-wrench"
></i>
</a>
<a
class=
"close-link"
>
<i
class=
"fa fa-times"
></i>
</a>
</div>
</div>
</div>
<div
class=
"ibox-content"
style=
"line-height: 26px"
>
<span
style=
"font-size: large"
>
欢
</span>
迎使用
<span
class=
"text-navy"
><b>
Jumpserver
</b></span>
跳板机系统,
首先需要
<b><a
href=
"/juser/down_key/?id={{ user.id }}"
>
下载
</a></b>
登录跳板机的SSH密钥文件,然后导入到工具或者ssh命令指定密钥文件(确保密钥文件权限600),输入收到的密钥密码,登录跳板机。
登录后根据提示进行操作。跳板机web界面支持修改密码、个人信息和上传下载文件等功能,可以向管理员申请权限。
</div>
</div>
<div
class=
"ibox float-e-margins"
>
<div
class=
"ibox-title"
>
<h5>
已授权主机
</h5>
<div
class=
"ibox-tools"
>
<div
class=
"label label-primary float-left"
><b>
总共:{{ host_count }}
</b></div>
<a
class=
"collapse-link"
>
<i
class=
"fa fa-chevron-up"
></i>
</a>
<a
class=
"dropdown-toggle"
data-toggle=
"dropdown"
href=
"#"
>
<i
class=
"fa fa-wrench"
></i>
</a>
<ul
class=
"dropdown-menu dropdown-user"
>
<li><a
href=
"#"
>
未启用 1
</a>
</li>
<li><a
href=
"#"
>
未启用 2
</a>
</li>
</ul>
<a
class=
"close-link"
>
<i
class=
"fa fa-times"
></i>
</a>
<div
class=
"ibox-content"
style=
"line-height: 26px"
>
<span
style=
"font-size: large"
>
欢
</span>
迎使用
<span
class=
"text-navy"
><b>
Jumpserver
</b></span>
跳板机系统,
首先需要
<b><a
href=
"/juser/down_key/?id={{ user.id }}"
>
下载
</a></b>
登录跳板机的SSH密钥文件,然后导入到工具或者ssh命令指定密钥文件(确保密钥文件权限600),输入收到的密钥密码,登录跳板机。
登录后根据提示进行操作。跳板机web界面支持修改密码、个人信息和上传下载文件等功能,可以向管理员申请权限。
</div>
</div>
<div
class=
"ibox-content"
>
<form
id=
"asset_form"
>
<div
class=
"col-sm-2"
style=
"padding-left: 0px"
>
<label>
<select
name=
"idc"
class=
"form-control m-b"
onchange=
"change_info()"
>
<option
value=
""
>
IDC机房
</option>
{% for idc in idc_all %}
{% ifequal idc.name idc_name %}
<option
value=
"{{ idc.name }}"
selected
>
{{ idc.name }}
</option>
{% else %}
<option
value=
"{{ idc.name }}"
>
{{ idc.name }}
</option>
{% endifequal %}
{% endfor %}
</select>
</label>
</div>
<div
class=
"col-sm-2"
>
<label>
<select
name=
"group"
class=
"form-control m-b"
onchange=
"change_info()"
>
<option
value=
""
>
主机组
</option>
{% for asset_group in asset_group_all %}
{% ifequal asset_group.name group_name %}
<option
value=
"{{ asset_group.name }}"
selected
>
{{ asset_group.name }}
</option>
{% else %}
<option
value=
"{{ asset_group.name }}"
>
{{ asset_group.name }}
</option>
{% endifequal %}
{% endfor %}
</select>
</label>
</div>
<div
class=
"col-sm-2"
>
<label>
<select
name=
"asset_type"
class=
"form-control m-b"
onchange=
"change_info()"
>
<option
value=
""
>
所有类型
</option>
{% for type in asset_types %}
{% ifequal type.0|int2str asset_type %}
<option
value=
"{{ type.0 }}"
selected
>
{{ type.1 }}
</option>
{% else %}
<option
value=
"{{ type.0 }}"
>
{{ type.1 }}
</option>
{% endifequal %}
{% endfor %}
</select>
</label>
</div>
<div
class=
"col-lg-12"
>
<div
class=
"ibox float-e-margins"
>
<div
class=
"ibox-title"
>
<h5>
登录记录
</h5>
<div
class=
"ibox-tools"
>
<span
class=
"label label-warning-light"
>
最近登录
</span>
</div>
</div>
<div
class=
"col-sm-2"
>
<label>
<select
name=
"status"
class=
"form-control m-b"
onchange=
"change_info()"
>
<option
value=
""
>
所有状态
</option>
{% for s in asset_status %}
{% ifequal s.0|int2str status %}
<option
value=
"{{ s.0 }}"
selected
>
{{ s.1 }}
</option>
{% else %}
<option
value=
"{{ s.0 }}"
>
{{ s.1 }}
</option>
{% endifequal %}
<div
class=
"ibox-content"
>
<div
id=
"last"
>
<div
class=
"feed-activity-list"
>
{% for log in logs_last %}
<div
class=
"feed-element"
>
<a
href=
"profile.html"
class=
"pull-left"
>
<img
alt=
"image"
class=
"img-circle"
src=
"/static/img/{{ session_role_id | to_avatar }}.png"
>
</a>
<div
class=
"media-body "
>
{#
<small
class=
"pull-right"
>
{{ log.start_time|time_delta }}
</small>
#}
<small
class=
"pull-right"
>
{{ log.start_time }}
</small>
<strong>
{{ log.user }}
</strong>
登录了
<span
class=
"text-navy"
>
{{ log.host }}.
</span><br>
<small
class=
"text-muted"
>
{{ log.start_time|date:"Y-m-d H:i:s" }}
</small>
</div>
</div>
{% endfor %}
</select>
</label>
</div>
<div
class=
"col-sm-4"
>
<div
class=
"input-group"
>
<input
type=
"text"
class=
"form-control m-b"
id=
"search_input"
name=
"keyword"
value=
"{{ keyword }}"
placeholder=
"Search"
>
<input
type=
"text"
style=
"display: none"
>
<div
class=
"input-group-btn"
>
<button
id=
'search_btn'
href=
"/jasset/asset_list/?search=true"
type=
"button"
class=
"btn btn-xm btn-primary search-btn"
onclick=
"change_info()"
>
- 搜索 -
</button>
<button
type=
"button"
href=
"/jasset/asset_list/?export=true"
name=
"export"
class=
"btn btn-xm btn-success search-btn-excel"
onclick=
"return false"
>
- 导出 -
</button>
{% if not logs_last %}
(暂无)
{% endif %}
</div>
{% if logs_num > 10 %}
<button
id=
"show"
class=
"btn btn-primary btn-block m-t"
><i
class=
"fa fa-arrow-down"
></i>
Show All
</button>
{% endif %}
</div>
</div>
<div
id=
"export"
></div>
<table
class=
"table table-striped table-bordered table-hover "
id=
"editable"
name=
"editable"
>
<thead>
<tr>
<th
class=
"text-center"
>
<input
id=
"checkall"
type=
"checkbox"
class=
"i-checks"
name=
"checkall"
value=
"checkall"
data-editable=
'false'
onclick=
"check_all('asset_form')"
>
</th>
<th
class=
"text-center"
>
主机名
</th>
<th
class=
"text-center"
name=
"ip"
>
IP地址
</th>
<th
class=
"text-center"
>
IDC
</th>
<th
class=
"text-center"
>
所属主机组
</th>
{#
<th
class=
"text-center"
>
配置信息
</th>
#}
<th
class=
"text-center"
>
操作系统
</th>
<th
class=
"text-center"
>
使用默认管理
</th>
<th
class=
"text-center"
>
操作
</th>
</tr>
</thead>
<tbody>
{% for asset in assets %}
<tr
class=
"gradeX"
>
<td
class=
"text-center"
name=
"id"
value=
"{{ asset.id }}"
data-editable=
'false'
>
<input
name=
"id"
value=
"{{ asset.id }}"
type=
"checkbox"
class=
"i-checks"
>
</td>
<td
class=
"text-center"
>
{{ asset.hostname|default_if_none:"" }}
</td>
<td
class=
"text-center"
>
{{ asset.ip|default_if_none:"" }}
</td>
<td
class=
"text-center"
>
{{ asset.idc.name|default_if_none:"" }}
</td>
<td
class=
"text-center"
>
{{ asset.group.all|group_str2 }}
</td>
{#
<td
class=
"text-center"
>
{{ asset.cpu }}|{{ asset.memory }}|{{ asset.disk }}
</td>
#}
<td
class=
"text-center"
>
{{ asset.system_type|default_if_none:"" }}{{ asset.system_version|default_if_none:"" }}
</td>
<td
class=
"text-center"
>
{{ asset.use_default_auth|bool2str }}
</td>
<td
class=
"text-center"
data-editable=
'false'
>
<a
href=
"/jasset/asset_detail/?id={{ asset.id }}"
class=
"btn btn-xs btn-primary"
>
详情
</a>
{% ifnotequal session_role_id 0 %}
{% if user.role == 'admin' %}
<a
href=
"/jasset/asset_edit/?id={{ asset.id }}"
class=
"btn btn-xs btn-info"
>
编辑
</a>
<a
href=
"/jasset/asset_update/?id={{ asset.id }}"
class=
"btn btn-xs btn-info"
>
更新
</a>
<a
value=
"/jasset/asset_del/?id={{ asset.id }}"
class=
"btn btn-xs btn-danger asset_del"
>
删除
</a>
{% endif %}
{% endifnotequal %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
<div
class=
"row"
>
<div
class=
"col-sm-6"
>
{% if user.role == 'admin' %}
<input
type=
"button"
id=
"asset_del"
class=
"btn btn-danger btn-sm"
name=
"del_button"
value=
"删除"
/>
<a
value=
"/jasset/asset_edit_batch/"
type=
"button"
class=
"btn btn-sm btn-warning iframe"
>
修改
</a>
{% endif %}
<div
id=
"all"
style=
"display: none"
>
<div
class=
"feed-activity-list"
>
{% for log in logs_all %}
<div
class=
"feed-element"
>
<a
href=
"profile.html"
class=
"pull-left"
>
<img
alt=
"image"
class=
"img-circle"
src=
"/static/img/{{ session_role_id | to_avatar }}.png"
>
</a>
<div
class=
"media-body "
>
<small
class=
"pull-right"
>
{{ log.start_time }}
</small>
{#
<small
class=
"pull-right"
>
{{ log.start_time|time_delta }}
</small>
#}
<strong>
{{ log.user }}
</strong>
登录了
<span
class=
"text-navy"
>
{{ log.host }}.
</span><br>
<small
class=
"text-muted"
>
{{ log.start_time|date:"Y-m-d H:i:s" }}
</small>
</div>
</div>
{% endfor %}
</div>
</div>
{% include 'paginator.html' %}
</div>
</
form
>
</
div
>
</div>
</div>
</div>
<div
class=
"col-lg-4"
>
...
...
templates/nav.html
View file @
6b7937c6
...
...
@@ -51,58 +51,6 @@
</div>
</nav>
{% endif %}
{% if request.session.role_id == 1 %}
<nav
class=
"navbar-default navbar-static-side"
role=
"navigation"
>
<div
class=
"sidebar-collapse"
>
<ul
class=
"nav"
id=
"side-menu"
>
{% include 'nav_li_profile.html' %}
<li
id=
"index"
>
<a
href=
"/"
><i
class=
"fa fa-th-large"
></i>
<span
class=
"nav-label"
>
仪表盘
</span><span
class=
"label label-info pull-right"
></span></a>
</li>
<li
id=
"juser"
>
<a
href=
"#"
><i
class=
"fa fa-rebel"
></i>
<span
class=
"nav-label"
>
用户管理
</span><span
class=
"fa arrow"
></span></a>
<ul
class=
"nav nav-second-level"
>
<li
class=
"dept_list dept_edit"
><a
href=
"/juser/dept_list/"
>
查看部门
</a></li>
<li
class=
"group_list group_edit"
><a
href=
"/juser/group_list/"
>
查看小组
</a></li>
<li
class=
"group_add"
><a
href=
"/juser/group_add/"
>
添加小组
</a></li>
<li
class=
"user_list user_detail"
><a
href=
"/juser/user_list/"
>
查看用户
<span
class=
"label {% ifequal user_active_num user_total_num %}label-primary {% else %}label-warning {% endifequal %}pull-right"
>
{{ user_active_num }}/{{ user_total_num }}
</span></a></li>
<li
class=
"user_add"
><a
href=
"/juser/user_add/"
>
添加用户
</a></li>
</ul>
</li>
<li
id=
"jasset"
>
<a><i
class=
"fa fa-cube"
></i>
<span
class=
"nav-label"
>
资产管理
</span><span
class=
"fa arrow"
></span></a>
<ul
class=
"nav nav-second-level"
>
{#
<li
class=
"host_add host_add_multi"
><a
href=
"/jasset/host_add/"
>
添加资产
</a></li>
#}
<li
class=
"asset_list asset_detail asset_edit"
><a
href=
"/jasset/asset_list/"
>
查看资产
<span
class=
"label label-info pull-right"
>
{{ host_active_num }}/{{ host_total_num}}
</span></a></li>
<li
class=
"idc_list idc_detail idc_edit"
><a
href=
"/jasset/idc_list/"
>
查看IDC
</a></li>
<li
class=
"group_add"
><a
href=
"/jasset/group_add/"
>
添加主机组
</a></li>
<li
class=
"group_list group_detail group_edit"
><a
href=
"/jasset/group_list/"
>
查看主机组
</a></li>
</ul>
</li>
<li
id=
"jperm"
>
<a
href=
"#"
><i
class=
"fa fa-edit"
></i>
<span
class=
"nav-label"
>
授权管理
</span><span
class=
"fa arrow"
></span></a>
<ul
class=
"nav nav-second-level"
>
<li
class=
"perm_list perm_edit perm_detail"
>
<a
href=
"/jperm/perm_list/"
>
小组授权
</a>
</li>
<li
class=
"sudo_list sudo_edit sudo_add cmd_list cmd_edit cmd_add sudo_detail"
>
<a
href=
"/jperm/sudo_list/"
>
Sudo授权
</a>
</li>
<li
class=
"apply_show online"
><a
href=
"/jperm/apply_show/online/"
>
权限审批
</a></li>
</ul>
</li>
<li
id=
"jlog"
>
<a
href=
"/jlog/log_list/online/"
><i
class=
"fa fa-files-o"
></i>
<span
class=
"nav-label"
>
日志审计
</span><span
class=
"label label-info pull-right"
></span></a>
</li>
<li
class=
"special_link"
>
<a
href=
"http://www.jumpserver.org"
target=
"_blank"
><i
class=
"fa fa-database"
></i>
<span
class=
"nav-label"
>
访问官网
</span></a>
</li>
</ul>
</div>
</nav>
{% endif %}
{% if request.session.role_id == 0 %}
<nav
class=
"navbar-default navbar-static-side"
role=
"navigation"
>
...
...
@@ -110,28 +58,11 @@
<ul
class=
"nav"
id=
"side-menu"
>
{% include 'nav_li_profile.html' %}
<li
id=
"index"
>
<a
href=
"/"
><i
class=
"fa fa-th-large"
></i>
<span
class=
"nav-label"
>
仪表盘
</span><span
class=
"label label-info pull-right"
></span></a>
</li>
<li
class=
"user_detail"
>
<a
href=
"/juser/user_detail/?id={{ session_user_id }}"
><i
class=
"fa fa-rebel"
></i>
<span
class=
"nav-label"
>
个人信息
</span><span
class=
"label label-info pull-right"
></span></a>
<a
href=
"/"
><i
class=
"fa fa-dashboard"
></i>
<span
class=
"nav-label"
>
仪表盘
</span><span
class=
"label label-info pull-right"
></span></a>
</li>
<li
id=
"jasset"
>
<a
href=
"/jasset/asset_list/"
><i
class=
"fa fa-cube"
></i>
<span
class=
"nav-label"
>
查看主机
</span><span
class=
"label label-info pull-right"
></span></a>
</li>
<li
id=
"jperm"
>
<a><i
class=
"fa fa-cube"
></i>
<span
class=
"nav-label"
>
权限申请
</span><span
class=
"fa arrow"
></span></a>
<ul
class=
"nav nav-second-level"
>
<li
class=
"apply"
><a
href=
"/jperm/apply/"
>
申请主机
</a></li>
<li
class=
"apply_show online"
><a
href=
"/jperm/apply_show/online/"
>
申请记录
</a></li>
</ul>
</li>
<li
id=
"command"
>
<a
href=
"/juser/runcommand/"
><span>
批量执行命令
</span></a>
<a
href=
"/jasset/asset_list/"
><i
class=
"fa fa-inbox"
></i>
<span
class=
"nav-label"
>
查看主机
</span><span
class=
"label label-info pull-right"
></span></a>
</li>
<li
id=
"jlog"
>
<a
href=
"/jlog/log_list/online/"
><i
class=
"fa fa-files-o"
></i>
<span
class=
"nav-label"
>
登录历史
</span><span
class=
"label label-info pull-right"
></span></a>
</li>
<li
id=
"file"
>
<a
href=
"#"
><i
class=
"fa fa-download"
></i>
<span
class=
"nav-label"
>
上传下载
</span><span
class=
"fa arrow"
></span></a>
<ul
class=
"nav nav-second-level"
>
...
...
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