文章目录

  • 前言
  • 安装
  • 用户管理
  • 1. 创建用户
  • 2. 创建组
  • 资产管理
  • 1.添加linux服务器
  • 2.添加windos服务器
  • 权限管理
  • 授权
  • 测试


前言

简介:
           Jumpserver 是全球首款完全开源的堡垒机,使用GNU GPL v2.0开源协议,是符合4A(认证Authentication、账号Account、授权Authorization、审计Audit)的专业运维审计系统。Jumpserver 使用Python / Django 进行开发,遵循 Web 2.0 规范,配备了业界领先的 Web Terminal 解决方案,交互界面美观、用户体验好。 Jumpserver 采纳分布式架构,支持多机房跨区域部署,中心节点提供 API,各机房部署登录节点,可横向扩展、无并发访问限制。
官网: https://www.jumpserver.org github地址:https://github.com/jumpserver/jumpserver


作用:

  1. 管理公司所有资产
  2. 给员工授权服务器权限,并记录操作过程
  3. 合4A规范,可以完成身份验证,使我们轻松地管理各种人员的资产和权限,并且有安全审计功能,记录用户各种操作。
  4. JumpServer 现已支持管理 SSH、 Telnet、 RDP、 VNC 协议资产。

堡垒机配置要求:

jumpserver如何进入mysql jumpserver安装教程_服务器

使用的端口:

jumpserver如何进入mysql jumpserver安装教程_堡垒机_02


ps:图片来源b站:肥兔克劳德


安装

  1. 下载安装脚本
[root@localhost ~]# wget https://github.com/jumpserver/jumpserver/releases/download/v2.7.1/quick_start.sh
[root@localhost ~]# cat /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核)"
      exit 1
  fi
  memTotal=`cat /proc/meminfo | grep MemTotal | awk '{print $2}'`
  if [ $memTotal -lt 7500000 ]; then
      echo -e "[\033[31m ERROR \033[0m] Memory less than 8G (内存小于 8G,JumpServer 所在机器的内存需要至少 8G)"
      exit 1
  fi
}

function install_soft() {
    if command -v dnf > /dev/null; then
      if [ "$1" == "python" ]; then
        dnf -q -y install python2
        ln -s /usr/bin/python2 /usr/bin/python
      else
        dnf -q -y install $1
      fi
    elif command -v yum > /dev/null; then
      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
      echo -e "[\033[31m ERROR \033[0m] Please install it first (请先安装) $1 "
      exit 1
    fi
}

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

function config_docker() {
  if [ ! -f "/etc/docker/daemon.json" ]; then
    mkdir -p /etc/docker/
    wget -qO /etc/docker/daemon.json https://demo.jumpserver.org/download/docker/daemon.json || {
      rm -f /etc/docker/daemon.json
    }
  fi
}

function get_installer() {
  Version=$(curl -s 'https://api.github.com/repos/jumpserver/installer/releases/latest' | grep "tag_name" | head -n 1 | awk -F ":" '{print $2}'
 | sed 's/\"//g;s/,//g;s/ //g')
  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-$Vers
ion.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')
  sed -i "s/VERSION=.*/VERSION=$JMS_Version/g" /opt/jumpserver-installer-$Version/static.env
  ./jmsctl.sh install
}

function main(){
  prepare_check
  prepare_install
  config_docker
  get_installer
  config_installer
}

main
-----------------------------------------------------------
  1. 给予执行权并执行
[root@localhost ~]# chmod +x quick_start.sh 
[root@localhost ~]# ./quick_start.sh
  1. 脚本运行期间会有交互信息,如图选择默认回车即可。
  2. 安装完成,如图所示

jumpserver如何进入mysql jumpserver安装教程_运维_03

  1. 启动

jumpserver如何进入mysql jumpserver安装教程_堡垒机_04

  1. 打开浏览器,输入ip访问,默认账号密码都是admin

用户管理

1. 创建用户

注:该用户为jumpserver的登陆用户,可以对资产远程操作的用户。有三种:系统管理员系统审计员用户。默认的有一个系统管理员Administrator(admin) 。

  1. 创建普通用户
  2. 创建一个审计人员

jumpserver如何进入mysql jumpserver安装教程_jumpserver如何进入mysql_05

  1. 浏览用户列表

2. 创建组

jumpserver如何进入mysql jumpserver安装教程_jumpserver_06


jumpserver如何进入mysql jumpserver安装教程_堡垒机_07


资产管理

可管理的资产

jumpserver如何进入mysql jumpserver安装教程_堡垒机_08

资产管理中涉及两个用户,一个是管理用户,一个是系统用户,很多初学者分不清两个用户的作用。

  1. 这两个用户并不是jumpserver堡垒机的web界面的登录用户。
  2. 这两个用户都需要填写所控制硬件设备的登陆账户名和密码
  3. 管理用户需要账号密码是为了获取对应资产的一些硬件信息和登陆权限,可以理解为只对一个资产负责
  4. 系统用户需要密码是为了由jumpserver的web页面跳转到远程管理窗口,这个密码和账号可以是一批的形同账号密码的linux服务器或是windos服务器。

1.添加linux服务器
  1. 创建管理用户(这里的管理用户是可以连接 服务器的用户 如连接服务器端的 root用户,或是普通用户,但是要给予一定的提权。如abc用户 NOPASSWD: ALL sudo 权限的用户, JumpServer 使用该用户来 推送系统用户获取资产硬件信息 等。 )

jumpserver如何进入mysql jumpserver安装教程_堡垒机_09


jumpserver如何进入mysql jumpserver安装教程_jumpserver如何进入mysql_10

  1. 添加系统用户(可以理解为登录资产用户,简单来说是用户使用自己的用户名登录 JumpServer,JumpServer 使用系统用户登录资产。也可以视为这个系统用户可以登录很多相同密码的资产。)

jumpserver如何进入mysql jumpserver安装教程_运维_11

  1. 添加linux服务器

jumpserver如何进入mysql jumpserver安装教程_堡垒机_12


jumpserver如何进入mysql jumpserver安装教程_服务器_13


保存后可以看到资产列表多了一台linux的服务器

jumpserver如何进入mysql jumpserver安装教程_堡垒机_14


2.添加windos服务器
  1. 添加管理用户

jumpserver如何进入mysql jumpserver安装教程_jumpserver如何进入mysql_15


jumpserver如何进入mysql jumpserver安装教程_服务器_16

  1. 添加一个系统用户

jumpserver如何进入mysql jumpserver安装教程_运维_17


jumpserver如何进入mysql jumpserver安装教程_运维_18

  1. 加入一台windos服务器

jumpserver如何进入mysql jumpserver安装教程_jumpserver如何进入mysql_19


jumpserver如何进入mysql jumpserver安装教程_jumpserver_20

jumpserver如何进入mysql jumpserver安装教程_运维_21

jumpserver如何进入mysql jumpserver安装教程_运维_22


权限管理

资产授权:对普通登录用户进行授权,是其有远程控制资产的能力

授权

jumpserver如何进入mysql jumpserver安装教程_服务器_23


jumpserver如何进入mysql jumpserver安装教程_jumpserver_24


jumpserver如何进入mysql jumpserver安装教程_jumpserver如何进入mysql_25


jumpserver如何进入mysql jumpserver安装教程_jumpserver_26


jumpserver如何进入mysql jumpserver安装教程_运维_27


最后可以看到授权列表有一条新的授权信息

里面包含3个用户、3个组、2台资产

jumpserver如何进入mysql jumpserver安装教程_jumpserver如何进入mysql_28


测试

用张三用户登录jumpserver,可以看到能够操控两台资产

jumpserver如何进入mysql jumpserver安装教程_堡垒机_29


jumpserver如何进入mysql jumpserver安装教程_堡垒机_30


jumpserver如何进入mysql jumpserver安装教程_jumpserver_31