JumpServer开源堡垒机部署总结

简介

Jumpserver 是全球首款完全开源的堡垒机, 使用 GNU GPL v2.0 开源协议, 是符合 4A 的专业运维审计系统。

Jumpserver 使用 Python / Django 进行开发, 遵循 Web 2.0 规范, 配备了业界领先的 Web Terminal 解决方案, 交互界面美观、用户体验好。

Jumpserver 采纳分布式架构, 支持多机房跨区域部署, 中心节点提供 API, 各机房部署登录节点, 可横向扩展、无并发访问限制。

环境

测试推荐环境
CPU: 64位双核处理器
内存: 4G DDR3
数据库:MySQL 版本大于等于 5.6 MariaDB 版本大于等于 5.5.6

此外还需要安装Python3+、Luna、Coco、Guacamole、Tomcat8、Nginx、Openjdk

部署过程

Jumpserver 的官方文档十分的详细,建议遇到相关的部署问题直接查官方文档即可,一般安装不上多是由于依赖库所导致的。
建议的物理机内存要大于4GB,MySQL和Server机不要部署在同一台服务器上。Jumpserver使用了Redis缓存,是十分消耗内存的,这一点要注意。

官方文档安装部署教程

API使用教程

API介绍

开启Debug 模式
在Jumpserver安装目录下config.yml中开启DEBUG模式DEBUG: true

asserts: jumpserver 信息管理
audits: ftp 日志
common: Django 设置信息
ops: 操作记录 
perms: 权限和验证日志
terminal: 终端相关( coco )
users: 用户信息相关

调用API token

找到 Jumpserver 源码,打开 apps 目录
运行 python 脚本

$ python manage.py shell
>>> from users.models import User
>>> u = User.objects.get(username='admin')
>>> u.create_private_token()
937b38011acf499eb474e2fecb424ab3(返回的结果是自己的token,保存好)

批量添加资产

#coding=utf-8

import requests
import json

token = '937b38011acf499eb474e2fecb424ab3'
header = {
    'Content-Type': 'application/json',
    'Accept': 'application/json',
    'X-CSRFToken': 'ePQdasmlAI4y6ASA2A2nbrx01bgAzJWg6dryB8IZlW5FEK9nrCDZIDXfkEe7F56D',
    'Authorization': 'Token '+token
}

params = {
  "ip": "your ip",
  "hostname": "test",
  "port": 22,
  "platform": "Linux",
  "is_active": True,
  "public_ip": "your ip",
  "admin_user": "b3c9702d-680a-4851-8f83-a7d28a05fa89",
  "nodes": [
    "92f83f8d-10fc-4b68-a6c0-1aab01c29e41"
  ],
}

url = 'http://localhost/api/assets/v1/assets/'

r = requests.post(url, data=json.dumps(params), headers=header)

print(r.status_code, r.text)

python add_vm.py
运行上面的python脚本,即成功的添加了一个新的资产。

猜你喜欢

转载自blog.csdn.net/qq_36641456/article/details/89044141