springBoot开发的开源堡垒机(跳板机)软件——WGCLOUD

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springBoot开发的开源堡垒机(跳板机)软件——WGCLOUD相关的知识,希望对你有一定的参考价值。

参考技术A

WGCLOUD 是一个高性能的分布式监控系统,server基于springboot架构开发,agent采用go开发,核心模块包括:主机监控,ES集群监控,CPU监控,CPU温度监控,大屏看板,docker监控,网络流量监控,内存监控,业务数据监控(mysql,oracle,pg等),服务心跳检测,应用进程管理,磁盘IO监控,端口监控,日志文件监控,系统负载监控,监控告警信息推送。

WGCLOUD还具有堡垒机(跳板机)能力,非常好用。

jumpserver使用

JumpServer堡垒机

知识储备

什么是jumpserver堡垒机?
Jumpserver是一款由python编写, Django开发的开源跳板机/堡垒机系统, 助力互联网企业高效 用户、资产、权限、审计 管理的跳板机

为什么要用jumpserver堡垒机?
1)完全开源,GPL授权
2)Python编写,容易再次开发
3)实现了跳板机基本功能,身份认证、访问控制、授权、审计 、批量操作等。
4)集成了Ansible,批量命令等
5)支持WebTerminal
6)Bootstrap编写,界面美观
7)自动收集硬件信息
8)录像回放
9)命令搜索
10)实时监控
11)批量上传下载

jumpserver堡垒机的安装

jump server官网
jump server官方文档

1.创建一台两核4G的服务器(虚拟机)
此处不过多赘述
2.将下列文档加入到虚拟机并执行
[root@jumpserver ~]# vim quick_start.sh 

#!/bin/bash
#

function prepare_check() {
  isRoot=`id -u -n | grep root | wc -l`
  if [ "x$isRoot" != "x1" ]; then
      echo -e "[\\033[31m ERROR \\033[0m] Please use root to execute the installation script (请用 root 用户执行安装脚本)"
      exit 1
  fi
  processor=`cat /proc/cpuinfo| grep "processor"| wc -l`
  if [ $processor -lt 2 ]; then
      echo -e "[\\033[31m ERROR \\033[0m] The CPU is less than 2 cores (CPU 小于 2核,JumpServer 所在机器的 CPU 需要至少 2核)"
  memTotal=`cat /proc/meminfo | grep MemTotal | awk '{print $2}'`
  if [ $memTotal -lt 3750000 ]; then
      echo -e "[\\033[31m ERROR \\033[0m] Memory less than 4G (内存小于 4G,JumpServer 所在机器的内存需要至少 4G)"
      exit 1
  fi
function install_soft() {
        dnf -q -y install python2
        ln -s /usr/bin/python2 /usr/bin/python
      else
        dnf -q -y install $1
      yum -q -y install $1
    elif command -v apt > /dev/null; then
      apt-get -qqy install $1
    elif command -v zypper > /dev/null; then
      zypper -q -n install $1
    elif command -v apk > /dev/null; then
      apk add -q $1
    else
    fi
}

function prepare_install() {
  for i in curl wget zip python; do
    command -v $i &>/dev/null || install_soft $i
  done
}

function get_installer() {
  echo "download install script to /opt/jumpserver-installe (开始下载安装脚本到 /opt/jumpserver-installe)"
  if [ ! "$Version" ]; then
    echo -e "[\\033[31m ERROR \\033[0m] Network Failed (请检查网络是否正常或尝试重新执行脚本)"
  fi
  cd /opt
  if [ ! -d "/opt/jumpserver-installer-$Version" ]; then
    wget -qO jumpserver-installer-$Version.tar.gz https://github.com/jumpserver/installer/releases/download/$Version/jumpserver-installer-$Version.tar.gz || {
      rm -rf /opt/jumpserver-installer-$Version.tar.gz
      echo -e "[\\033[31m ERROR \\033[0m] Failed to download jumpserver-installer (下载 jumpserver-installer 失败, 请检查网络是
否正常或尝试重新执行脚本)"
      exit 1
    }
    tar -xf /opt/jumpserver-installer-$Version.tar.gz -C /opt || {
      rm -rf /opt/jumpserver-installer-$Version
      echo -e "[\\033[31m ERROR \\033[0m] Failed to unzip jumpserver-installe (解压 jumpserver-installer 失败, 请检查网络是否正
常或尝试重新执行脚本)"
      exit 1
    }
    rm -rf /opt/jumpserver-installer-$Version.tar.gz
  fi
}

function config_installer() {
  cd /opt/jumpserver-installer-$Version
  JMS_Version=$(curl -s 'https://api.github.com/repos/jumpserver/jumpserver/releases/latest' | grep "tag_name" | head -n 1 | awk -F ":" '{print $2}' | sed 's/\\"//g;s/,//g;s/ //g')
  if [ ! "$JMS_Version" ]; then
    echo -e "[\\033[31m ERROR \\033[0m] Network Failed (请检查网络是否正常或尝试重新执行脚本)"
    exit 1
  fi
  sed -i "s/VERSION=.*/VERSION=$JMS_Version/g" /opt/jumpserver-installer-$Version/static.env
  ./jmsctl.sh install
}

function main(){
  prepare_check
  prepare_install
  get_installer
  config_installer
}

main


运行脚本
[root@jumpserver ~]# sh ./quick_start.sh

出现以下画面说明安装开始
在这里插入图片描述

出现以下页面则为安装成功
在这里插入图片描述
此时已经安装成功!

jumpserver的启动

#启动jumpserver
[root@jumpserver ~]# cd /opt/jumpserver-installer-v2.10.2/
[root@jumpserver jumpserver-installer-v2.10.2]# ./jmsctl.sh start
jms_redis is up-to-date
jms_mysql is up-to-date
jms_core is up-to-date
jms_lion is up-to-date
jms_celery is up-to-date
jms_luna is up-to-date
jms_koko is up-to-date
jms_lina is up-to-date
jms_nginx is up-to-date

在浏览器输入当前主机的外网ip加上8080端口号出现如下页面,则启动成功
在这里插入图片描述
默认登录用户名与密码都是admin,点击登录,登录完了以后自行修改密码进入以下页面
在这里插入图片描述

jumpserver的使用

点击页面左侧的用户列表可以创建用户
在这里插入图片描述

在这里插入图片描述
账号创建成功后,便可以切换账号登录是用了
点击用户列表下的用户组便可以根据公司具体部门创建对应的用户组了,同时以后为一类用户添加权限时,直接给用户组添加权限即可

在这里插入图片描述

用户创建成功后,点击资产管理中的管理用户在这里插入图片描述

点击资产管理中的资产列表,根据公司服务器创建对应的资产,也可为其加上相应标签

在这里插入图片描述

在资产列表页面,右击default即可创建对应文件夹,或更名等等操作

在这里插入图片描述

创建服务器需要的系统用户,此时用户的密码要与服务器上的用户密码对应
在这里插入图片描述

资产管理中的“命令过滤”是针对一些危险命令的禁用的,如:rm等

点击应用管理中的数据库,可以创建数据库与数据库服务器上的某个数据库连接
在这里插入图片描述

权限管理------->资产授权,可以为用户授权
在这里插入图片描述
在这里插入图片描述

权限管理----------->应用授权,为用户加一些权限
在这里插入图片描述

会话管理中:
可以通过会话管理,查看当前的会话,和历史会话
可以通过命令记录,查找到操作人员对机器的记录,
可以通过web终端连接到对应的服务器
也可以通过文件管理页面,完成对文件的操作
终端管理可以查看当前终端服务器的状态
在这里插入图片描述

作业中心
可以查看任务的一些详细信息
可以让服务器批量执行命令,当然前提是权限得够
任务监控 一般很少用到了解即可
在这里插入图片描述

日志审计
日志审计里就是所有服务器,操作时产生的日志

在这里插入图片描述

系统设置中最重要的一点就是可以将我们的邮箱与jumpserver进行绑定,可以到达监控的目的,同时公司资产有任何问题,我们都可以知道,但是需要我们将邮箱的SMTP,与pop功能打开
在这里插入图片描述

以上,就是博主个人关于jumpserver的使用心得了。

以上是关于springBoot开发的开源堡垒机(跳板机)软件——WGCLOUD的主要内容,如果未能解决你的问题,请参考以下文章

开源堡垒机_jumpserver

jumpserver 堡垒机

堡垒机

开源堡垒机真的完全免费吗?

jumpserver 堡垒机环境搭建(图文详解)

jumpserver使用