Linux 搭建 JumpServer 堡垒机

Linux 搭建 JumpServer 堡垒机_第1张图片

  • 跳板机概述

跳板机就是一台服务器,开发或运维人员在维护过程中首先要统一登录到这台服务器,然后再登录到目标设备进行维护和操作。 

跳板机缺点:没有实现对运维人员操作行为的控制和审计,使用跳板机的过程中还是会出现误操作、违规操作导致的事故,一旦出现操作事故很难快速定位到原因和责任人;

  • 堡垒机概述:

堡垒机,即在一个特定的网络环境下,为了保障网络和数据不受来自外部和内部用户的入侵和破坏,而运用各种技术手段实时收集和监控网络环境中每一个组成部分的系统状态、安全事件、网络活动,以便集中报警、及时处理及审计定责。

  • 总结:堡垒机比跳板机多了实时收集、监控网络环境、集中报警等功能。

Linux 搭建 JumpServer 堡垒机_第2张图片

  • Jumpserver 概述:

  • Jumpserver 是一款使用 Python, Django 开发的开源跳板机系统, 为互联网企业提供了认证,授权,审计,自动化运维等功能。JumpServer 现已支持管理 SSH、 Telnet、 RDP、 VNC 协议资产
  • 官方网址:https://www.jumpserver.org/
  • github 项目网址:https://github.com/jumpserver/jumpserver/releases

Linux 搭建 JumpServer 堡垒机_第3张图片

  • JumpServer 2.12.1 环境要求: 
  • 注意:全新安装的 Linux

  • 需要连接 互联网
    使用 root 用户执行

Linux 搭建 JumpServer 堡垒机_第4张图片

Linux 搭建 JumpServer 堡垒机_第5张图片

  • 快速开始

    仅需两步快速安装 JumpServer:

  • 准备一台 2核4G (最低)且可以访问互联网的 64 位 Linux 主机;
  • 以 root 用户执行如下命令一键安装 JumpServer。
  • 实验环境
  • CentOS 7.6   192.168.2.19   SElinux、Firewalld以及iptables 均为关闭状态
  • wget https://ghproxy.com/https://github.com/jumpserver/jumpserver/releases/download/v2.12.1/quick_start.sh | bash

Linux 搭建 JumpServer 堡垒机_第6张图片

Linux 搭建 JumpServer 堡垒机_第7张图片Linux 搭建 JumpServer 堡垒机_第8张图片

Linux 搭建 JumpServer 堡垒机_第9张图片Linux 搭建 JumpServer 堡垒机_第10张图片

Linux 搭建 JumpServer 堡垒机_第11张图片

  • 查看 docker 运行状态 

  • docker  ps -a

  • 打开浏览器访问 http://192.168.2.19

  • 默认 用户名 密码 admin

  • 首次登陆会强制更新密码

Linux 搭建 JumpServer 堡垒机_第12张图片

Linux 搭建 JumpServer 堡垒机_第13张图片

Linux 搭建 JumpServer 堡垒机_第14张图片

  • jumpserver 平台系统初始化

  • 系统基本设置
  • 这里要写成自己真实的 URL 地址,不然后期用户访问不了。http://192.168.2.19,设置完成后,并点击“提交”按钮。

Linux 搭建 JumpServer 堡垒机_第15张图片

  • 邮件设置

  • 根据自己的实际情况填写,完成点击提交保存

Linux 搭建 JumpServer 堡垒机_第16张图片

  • 用户管理,添加用户组。

  • 用户名即 Jumpserver 登录账号。用户组是用于资产授权,当某个资产对一个用户组授权后,这个用户组下面的所有用户就都可以使用这个资产了。角色用于区分一个用户是管理员还是普通用户。
  • 点击用户管理 —> 查看用户组 —> 创建--->提交

Linux 搭建 JumpServer 堡垒机_第17张图片

Linux 搭建 JumpServer 堡垒机_第18张图片

  • 添加用户

  • 点击用户管理 —> 用户列表 —> 创建用户
  • 其中,名称是真实姓名,用户名即 Jumpserver 登录账号。
  • 这里选择生成重置密码链接,通过邮件发送给用户。方式来重置新建用户密码
  • 权限选择为系统管理员

Linux 搭建 JumpServer 堡垒机_第19张图片

Linux 搭建 JumpServer 堡垒机_第20张图片

  •  登陆邮箱查看

Linux 搭建 JumpServer 堡垒机_第21张图片

Linux 搭建 JumpServer 堡垒机_第22张图片

Linux 搭建 JumpServer 堡垒机_第23张图片

  •  勾选我同意 ,提交

Linux 搭建 JumpServer 堡垒机_第24张图片

Linux 搭建 JumpServer 堡垒机_第25张图片Linux 搭建 JumpServer 堡垒机_第26张图片

  • 扩展:
    MFA,Multi-FactorAuthentication,即多因子认证,是一种简单有效的安全认证方法。它能够在用户名和密码之外,再增加一层保护。MFA 设备,又叫动态口令卡或 Token 卡,是提供这种安全认证方法的设备。
  • MFA 设备如:
    硬件 MFA 设备
    硬件 MFA 设备如下图所示,正面的 6 位数动态安全码 30 秒更新一次,背面有该硬件 MFA 设备的序列号。
     

Linux 搭建 JumpServer 堡垒机_第27张图片

  • 编辑资产树添加节点
  • 使用 admin 用户登录 jumpserver,选择 资产管理 ----> 系统用户 ---> 特权用户
  • 特权用户为 root 或者拥有 sudo ‘NOPASSWD’ ALL 权限的普通用户,生成环境推荐使用 sudo 用户+SSH密钥 认证

Linux 搭建 JumpServer 堡垒机_第28张图片

Linux 搭建 JumpServer 堡垒机_第29张图片

Linux 搭建 JumpServer 堡垒机_第30张图片

  •  资产管理---->资产列表--->右键 创建节点

Linux 搭建 JumpServer 堡垒机_第31张图片

Linux 搭建 JumpServer 堡垒机_第32张图片

Linux 搭建 JumpServer 堡垒机_第33张图片

  • 点击提交后,大约20秒(视硬件、网络情况)左右会看到硬件信息

  • 如果看不到请检查管理用户的用户名和密钥是否正确以及该管理用户是否能使用 SSH 从 Jumpserver 主机正确登录到资产主机上。

Linux 搭建 JumpServer 堡垒机_第34张图片

  • 创建授权规则

  • 节点,对应的是资产,代表该节点下的所有资产。
  • 用户组,对应的是用户,代表该用户组下所有的用户。
  • 系统用户,及所选的用户组下的用户能通过该系统用户使用所选节点下的资产。
  • 节点,用户组,系统用户是一对一的关系,所以当拥有 Linux、Windows 不同类型资产时,应该分别给 Linux 资产和 Windows 资产创建授权规则。
  • 创建普通用户

Linux 搭建 JumpServer 堡垒机_第35张图片

Linux 搭建 JumpServer 堡垒机_第36张图片

  • 权限管理----资产授权----选择 default test---创建 

Linux 搭建 JumpServer 堡垒机_第37张图片

Linux 搭建 JumpServer 堡垒机_第38张图片

  • 注:这一条授权的含意是: 只要是“test”组中的人,对节点“default--test"中的所有服务器,拥有“系统管理员用户”的权限。
  • 授权提交后,查看 192.168.2.4 是否创建用户以及权限

Linux 搭建 JumpServer 堡垒机_第39张图片

  •  普通 用户 gf  拥有 sudo 权限

  • 打开资产所在的节点:
    双击资产名字,就连上资产了:
    如果显示连接超时,请检查为资产分配的系统用户用户名和密钥是否正确,是否正确选择 Linux 操作系统,协议 ssh,端口 22,以及资产的防火墙策略是否正确配置等信息。

Linux 搭建 JumpServer 堡垒机_第40张图片

Linux 搭建 JumpServer 堡垒机_第41张图片Linux 搭建 JumpServer 堡垒机_第42张图片

  •  使用 xshell 连接 jumpserver 管理服务器

Linux 搭建 JumpServer 堡垒机_第43张图片

  • 查看历史命令记录

Linux 搭建 JumpServer 堡垒机_第44张图片

  •  查看历史会话并回放视频 

Linux 搭建 JumpServer 堡垒机_第45张图片

Linux 搭建 JumpServer 堡垒机_第46张图片

  •  历史会话

Linux 搭建 JumpServer 堡垒机_第47张图片

Linux 搭建 JumpServer 堡垒机_第48张图片 Linux 搭建 JumpServer 堡垒机_第49张图片

  • 文件管理功能

Linux 搭建 JumpServer 堡垒机_第50张图片

Linux 搭建 JumpServer 堡垒机_第51张图片

Linux 搭建 JumpServer 堡垒机_第52张图片

  • 可以新建文件夹,也可以上传文件到服务器。这些创建的文件和上传的文件,都会存在目标服务器的/tmp 目录下

Linux 搭建 JumpServer 堡垒机_第53张图片

Linux 搭建 JumpServer 堡垒机_第54张图片

  • 作业中心
    任务列表作业是 Jumpserver 向其所管理下的资产发送的指令, 例如, 测试资产可连接性、获取资产硬件信息、测试管理用户可连接性和测试系统用户可连接性等命令。默认展示最近 7 天的作业记录。
    点击作业名称可以查看作业的具体详情、作业的历史版本以及作业执行的历史记录

Linux 搭建 JumpServer 堡垒机_第55张图片

  • 批量命令
    可以通过该功能快速下发命令到资产, 目前仅支持能被 ansible 管理的资产, 要求 系统用户 登陆方式为 自动登陆 

Linux 搭建 JumpServer 堡垒机_第56张图片

  • 使用 jumpserver 管理 mysql 数据库

  • 添加 Mysql 系统用户,服务器需正确安装、配置及启动Mysql 服务

Linux 搭建 JumpServer 堡垒机_第57张图片

Linux 搭建 JumpServer 堡垒机_第58张图片Linux 搭建 JumpServer 堡垒机_第59张图片

Linux 搭建 JumpServer 堡垒机_第60张图片

  •  创建应用

Linux 搭建 JumpServer 堡垒机_第61张图片

Linux 搭建 JumpServer 堡垒机_第62张图片Linux 搭建 JumpServer 堡垒机_第63张图片

  •  应用授权

Linux 搭建 JumpServer 堡垒机_第64张图片

Linux 搭建 JumpServer 堡垒机_第65张图片 Linux 搭建 JumpServer 堡垒机_第66张图片

  • 测试,选择会话管理,会看到左侧有刚才授权的应用

Linux 搭建 JumpServer 堡垒机_第67张图片

Linux 搭建 JumpServer 堡垒机_第68张图片 Linux 搭建 JumpServer 堡垒机_第69张图片


  • 手动安装

  • CentOS 7.6   192.168.2.2
  • 准备工作:
  • 安装 mariadb   redis  

Redis >= 6.0
MariaDB >= 10.2
  • 首先安装配置 mariadb
  • vim /etc/yum.repos.d/mariadb.repo 
    [mariadb]
    name = MariaDB
    baseurl=http://yum.mariadb.org/10.6/centos7-amd64
    gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
    gpgcheck=1
    enabled=1
  • yum -y install mariadb-server mariadb wget gcc epel-release git MariaDB-shared mariadb-devel
  • systemctl enable mariadb --now
  • mysql
  • >alter user 'root'@'localhost' identified by '123456';
    flush privileges;

    create database jumpserver default charset 'utf8' collate 'utf8_bin';
    grant all on jumpserver.* to 'jumpserver'@'%' identified by 'PASSWORD'; 

    flush privileges;
  • systemctl restart mariadb

Linux 搭建 JumpServer 堡垒机_第70张图片

  • 安装 redis
  • yum -y install  http://rpms.remirepo.net/enterprise/remi-release-7.rpm
  • 使用 remi repository 源安装 Redis
  • yum --enablerepo=remi install -y redis
  • vim /etc/redis.conf 
  • 修改如下:
    bind 192.168.2.2
    requirepass PASSWORD
  • 启动 Redis
  • systemctl enable redis.service --now

  • 安装 jumpserver
  • cd /opt
  • wget https://github.com/jumpserver/installer/releases/download/v2.12.1/jumpserver-installer-v2.12.1.tar.gz
  • tar -xf jumpserver-installer-v2.12.1.tar.gz
  • cd jumpserver-installer-v2.12.1
  • vim config-example.txt 
    # 以下设置如果为空系统会自动生成随机字符串填入
    ## 迁移请修改 SECRET_KEY 和 BOOTSTRAP_TOKEN 为原来的设置
    ## 完整参数文档 https://docs.jumpserver.org/zh/master/admin-guide/env/

    ## 安装配置, 可以使用华为云加速下载, arm64 用户需要注释掉 DOCKER_IMAGE_PREFIX
    # DOCKER_IMAGE_PREFIX=swr.cn-south-1.myhuaweicloud.com
    VOLUME_DIR=/opt/jumpserver
    DOCKER_DIR=/var/lib/docker

    SECRET_KEY=PASSWORD
    BOOTSTRAP_TOKEN=PASSWORD

    LOG_LEVEL=ERROR

    ##  MySQL 配置, USE_EXTERNAL_MYSQL=1 表示使用外置数据库, 请输入正确的 MySQL 信息
    ##根据自己的实际情况设置
    USE_EXTERNAL_MYSQL=1
    DB_HOST=192.168.2.2
    DB_PORT=3306
    DB_USER=jumpserver
    DB_PASSWORD=PASSWORD
    DB_NAME=jumpserver

    ##  Redis 配置, USE_EXTERNAL_REDIS=1 表示使用外置数据库, 请输入正确的 Redis 信息
    ##根据自己的实际情况设置
    USE_EXTERNAL_REDIS=1
    REDIS_HOST=192.168.2.2
    REDIS_PORT=6379
    REDIS_PASSWORD=PASSWORD

    ## Compose 项目设置, 如果 192.168.250.0/24 网段与你现有网段冲突, 请修改然后重启 JumpServer
    COMPOSE_PROJECT_NAME=jms
    COMPOSE_HTTP_TIMEOUT=3600
    DOCKER_CLIENT_TIMEOUT=3600
    DOCKER_SUBNET=192.168.250.0/24

    ## IPV6 设置, 容器是否开启 ipv6 nat, USE_IPV6=1 表示开启, 为 0 的情况下 DOCKER_SUBNET_IPV6 定义不生效
    USE_IPV6=0
    DOCKER_SUBNET_IPV6=2001:db8:10::/64

    ## Nginx 配置, USE_LB=1 表示开启, 为 0 的情况下, HTTPS_PORT 定义不生效
    HTTP_PORT=80
    SSH_PORT=2222
    RDP_PORT=3389

    USE_LB=0
    HTTPS_PORT=443

    ## Task 配置, 是否启动 jms_celery 容器, 单节点必须开启
    USE_TASK=1

    ## XPack, USE_XPACK=1 表示开启, 开源版本设置无效
    USE_XPACK=0

    # Core 配置, Session 定义, SESSION_COOKIE_AGE 表示闲置多少秒后 session 过期, SESSION_EXPIRE_AT_BROWSER_CLOSE=true 表示关闭浏览器即 session 过期
    # SESSION_COOKIE_AGE=86400
    SESSION_EXPIRE_AT_BROWSER_CLOSE=true

    # Koko Lion XRDP 组件配置
    CORE_HOST=http://core:8080

    # 额外的配置
    CURRENT_VERSION=

  • ./jmsctl.sh install
     

    Linux 搭建 JumpServer 堡垒机_第71张图片

    Linux 搭建 JumpServer 堡垒机_第72张图片

    Linux 搭建 JumpServer 堡垒机_第73张图片

    Linux 搭建 JumpServer 堡垒机_第74张图片

    Linux 搭建 JumpServer 堡垒机_第75张图片
  • ./jmsctl.sh start 启动  restart 重启  stop 停止 upgrade 更新

Linux 搭建 JumpServer 堡垒机_第76张图片

Linux 搭建 JumpServer 堡垒机_第77张图片

Linux 搭建 JumpServer 堡垒机_第78张图片

Linux 搭建 JumpServer 堡垒机_第79张图片

Linux 搭建 JumpServer 堡垒机_第80张图片

Linux 搭建 JumpServer 堡垒机_第81张图片

Linux 搭建 JumpServer 堡垒机_第82张图片

Linux 搭建 JumpServer 堡垒机_第83张图片

你可能感兴趣的:(学习笔记,LInux,CentOS,JumpServer,系统管理,自动化运维)