你还不会Jumpserver堡垒机(保护服务器)搭建部署?

VSole2023-06-21 09:46:53
Jumpserver 概述
Jumpserver 是一款使用 Python, Django 开发的开源跳板机系统, 为互联网企业提供了认证,授权,审计,自动化运维等功能。JumpServer 现已支持管理 SSH、 Telnet、 RDP、 VNC 协议资产

功能

  • 1.精确记录操作命令
  • 2.支持批量文件上传下载
  • 3.支持主机搜索登录
  • 4.支持批量命令执行 (Ansible 完成)
  • 5.支持 WebTerminal 连接主机
  • 6.支持 Web 端批量命令执行
  • 7.支持录像回放
  • 8.支持硬件信息如 cpu, 内存等抓取
  • 9.支持资产 Excel 导入导出
  • 10.支持资产批量更改
  • 11.支持系统用户的批量推送 (Ansible 实现)
  • 12.支持用户,主机,用户组,主机组,系统用户混合细颗粒授权
  • 13.支持 sudo 管理
  • 14.支持命令统计和命令搜索
  • 15.支持上传下载文件审计
  • 16.支持终止用户连接
  • 17.支持各种搜索
  • 18.其他
  • Jumpserver 后端主要技术是 LDAP,配置了 LDAP 集中认证服务器, 所有服务器的认证都是由 ldap 完成的。其做法是:每个用户一个密码,把密码加密放到了数据库中,当用户输入 IP 从跳板机登陆服务器的时候,跳板机系统取出密码,并解密,通过 pexpect 模块将密码发送过去,来完成登录。
  • (LDAP 是轻量目录访问协议,英文全称是 Lightweight Directory Access Protocol,一般都简称为 LDAP。它是基于 X.500 标准的,但是简单多了并且可以根据需要定制。与 X.500 不同,LDAP 支持 TCP/IP,这对访问 Internet 是必须的。LDAP 的核心规范在 RFC 中都有定义,所有与 LDAP 相关的 RFC 都可以在 LDAPman RFC 网页中找到。)

特色优势:

  • 开源:零门槛,线上快速获取和安装;
  • 分布式:轻松支持大规模并发访问;
  • 无插件:仅需浏览器,极致的 Web Terminal 使用体验;
  • 多云支持:一套系统,同时管理不同云上面的资产;
  • 云端存储:审计录像云端存储,永不丢失;
  • 多租户:一套系统,多个子公司和部门同时使用;
  • 多应用支持:数据库,Windows 远程应用,Kubernetes。
  • 官方网址:https://www.jumpserver.org/
  • JumpServer 官网文档:https://docs.jumpserver.org/zh/master/
  • github 项目网址:https://github.com/jumpserver/jumpserver/releases

环境需求

  • 首先准备一台 4 核 8G (最低)且可以访问互联网的 64 位 Linux 主机;
  • 其次就是部署需要 root 用户,最好使用新环境来部署,因为会有不是新的环境会有冲突的情况,所以建议使用新环境来部署;
  • 关闭 iptables,关闭 selinux ;
  • 需要 wget git curl… 几个命令;
yum -y install wget git curl

首先具备这几个条件,完了就是安装部署。

在线部署 Jump server

部署方式有很多种:有在线部署,也有离线部署;也有在 linux 中部署、在 Windows 中部署、在 macOS 中部署的;也有手动部署、一键部署、源码部署、Helm 部署、Allinone 部署;看自己选哪个,其他部署文档可参考官网:Jumpserver 官网部署文档
这里我们选择一键部署就可以,脚本可以直接拉取官网的;

拉取官网脚本并且执行安装操作:

curl -sSL https://github.com/jumpserver/jumpserver/releases/download/v2.25.1/quick_start.sh | bash
中途有的地方需要自己确认,会问你选择默认还是其他,不输入则自动选择默认;
配置文件位置: /opt/jumpserver/config/config.txt

脚本安装步骤:

  • 1.检查配置文件
  • 2.安装 docker 和 docker-compose
  • 3.配置 dokcer
  • 4.启动 docker 并设置开机自启
  • 5.加载 docker 镜像(去拉取镜像 redis、mariadb、web、core、koko、lion、magnus)
  • 6.安装 Jumpserver
  • 6.1、配置加密密钥
  • 6.2、配置持久化目录
  • 6.3、配置 MySQL
  • 6.4、配置 Redis
  • 6.5、配置对外端口
  • 6.6、初始化数据库
  1. 安装完成(以及相关信息)

页面访问:http://ip:80

初始账号密码:admin admin

进入页面之后可查看页面访问操作操作

jumpserver 的命令及解析

cd /opt/jumpserver-installer-v2.25.1
# 安装Jump server
./jmsctl.sh install
# 升级Jump server
./jmsctl.sh upgrade [version]
# 监测当前版本号
./jmsctl.sh check_update
# 启动Jump server
./jmsctl.sh start
# 停止Jump server
./jmsctl.sh stop
#关闭Jump server
./jmsctl.sh close
#重启Jump server
./jmsctl.sh restart
#检查Jump server的运行状态
./jmsctl.sh status
# 卸载Jump server
./jmsctl.sh uninstall
# 帮助(查看命令参数详情)
./jmsctl.sh -h

离线部署 Jump server

从飞致云社区 下载最新的 linux/amd64 离线包, 并上传到部署服务器的 /opt 目录;离线包大概(1.5G)。

注意:下载时需要注册、登录一下

#将下载的包传到/opt目录
mv jumpserver-offline-installer-v2.25.2-amd64-67.tar.gz /opt/
#切换到/opt目录
cd /opt
#解压jumpserver压缩包
tar -xf jumpserver-offline-installer-v2.25.2-amd64-67.tar.gz
#重命名jumpserver-offline-installer-v2.25.2-amd64-67为jumpserver
mv jumpserver-offline-installer-v2.25.2-amd64-67 jumpserver
#进入jumpserver的目录
cd /opt/jumpserver
# 根据需要修改配置文件模板, 如果不清楚用途可以跳过修改
cat config-example.txt
# 以下设置如果为空系统会自动生成随机字符串填入
## 迁移请修改 SECRET_KEY 和 BOOTSTRAP_TOKEN 为原来的设置
## 完整参数文档 https://docs.jumpserver.org/zh/master/admin-guide/env/
## 配置 Docker 镜像加速, 不同的架构请参考安装文档
# DOCKER_IMAGE_PREFIX=
## 安装配置
VOLUME_DIR=/opt/jumpserver
DOCKER_DIR=/var/lib/docker
SECRET_KEY=
BOOTSTRAP_TOKEN=
LOG_LEVEL=ERROR
##  MySQL 配置, USE_EXTERNAL_MYSQL=1 表示使用外置数据库, 请输入正确的 MySQL 信息
USE_EXTERNAL_MYSQL=0
DB_HOST=mysql
DB_PORT=3306
DB_USER=root
DB_PASSWORD=
DB_NAME=jumpserver
##  Redis 配置, USE_EXTERNAL_REDIS=1 表示使用外置数据库, 请输入正确的 Redis 信息
USE_EXTERNAL_REDIS=0
REDIS_HOST=redis
REDIS_PORT=6379
REDIS_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=fc00:1010:1111:200::/64
## 访问配置
HTTP_PORT=80
SSH_PORT=2222
MAGNUS_MYSQL_PORT=33060
MAGNUS_MARIADB_PORT=33061
## HTTPS 配置, 参考 https://docs.jumpserver.org/zh/master/admin-guide/proxy/ 配置
# USE_LB=1
# HTTPS_PORT=443
# SERVER_NAME=your_domain_name
# SSL_CERTIFICATE=your_cert
# SSL_CERTIFICATE_KEY=your_cert_key
## Nginx 文件上传大小
CLIENT_MAX_BODY_SIZE=4096m
## Task 配置, 是否启动 jms_celery 容器, 单节点必须开启
USE_TASK=1
## XPack, USE_XPACK=1 表示开启, 开源版本设置无效
USE_XPACK=0
RDP_PORT=3389
MAGNUS_POSTGRE_PORT=54320
TCP_SEND_BUFFER_BYTES=4194304
TCP_RECV_BUFFER_BYTES=6291456
# 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
JUMPSERVER_ENABLE_FONT_SMOOTHING=True
## 终端使用宿主 HOSTNAME 标识
SERVER_HOSTNAME=${HOSTNAME}
# 额外的配置
CURRENT_VERSION=
安装 jumpserver,安装时需要手动给路径问你是选择默认呢还是什么,默认的话可以直接回车就好;唯一一点好的是比在线安装快,因为在线安装需要拉取镜像特别慢,这个只需要下载”jumpserver-offline-installer-v2.25.2-amd64-67.tar.gz“离线包即可;
# 安装
./jmsctl.sh install
# 启动
./jmsctl.sh start
安装完成,启动完成之后,页面访问:ip 地址就行,因为默认端口是 80;

安装完成之后会给你说:

默认账号密码是 admin admin

进入页面之后可查看页面访问操作操作

配置文件位置: /opt/jumpserver/config/config.txt

jumpserver 的命令及解析

#进入jumpserver的目录
cd /opt/jumpserver
# 安装Jump server
./jmsctl.sh install
# 升级Jump server
./jmsctl.sh upgrade [version]
# 监测当前版本号
./jmsctl.sh check_update
# 启动Jump server
./jmsctl.sh start
# 停止Jump server
./jmsctl.sh stop
#关闭Jump server
./jmsctl.sh close
#重启Jump server
./jmsctl.sh restart
#检查Jump server的运行状态
./jmsctl.sh status
# 卸载Jump server
./jmsctl.sh uninstall
# 帮助(查看命令参数详情)
./jmsctl.sh -h

页面访问操作

页面访问:http://ip:80

默认账号密码是 admin admin;第一次登录需要修改一下密码;可根据自己的情况来定密码;

dockerdocker命令
本作品采用《CC 协议》,转载必须注明作者和本文链接
此漏洞/攻击取决于 Kubernetes 集群的配置方式。
Docker容器入门指北
2022-05-11 06:43:31
Docker 是一种基于 Linux 的容器化技术,类似于轻量的虚拟机。它采用 C/S 架构,使用Go语言开发。Docker 分为 2 个版本:社区版和企业版,社区版免费,企业版是收费的
1Docker 迁移存储目录默认情况系统会将 Docker 容器存放在 /var/lib/docker 目录下[问题起因]?今天通过监控系统,发现公司其中一台服务器的磁盘快慢,随即上去看了下,发现?由上述原因,我们都知道,在?中存储的都是相关于容器的存储,所以也不能随便的将其删除掉。设备进行扩容来达到相同的目的。的详细参数,请点击查看?但是需要注意的一点就是,尽量不要用软链, 因为一些?容器编排系统不支持这样做,比如我们所熟知的?发现容器启动不了了
如果您希望启动并运行一个强大的 ERP 解决方案,Jack Wallen 可以通过 Odoo 和 Docker 提供解决方案。
七个杀手级Docker命令
2023-12-22 15:19:58
Docker是一个容器化平台,通过操作系统级别的虚拟化技术,实现软件的打包和容器化运行。借助Docker,开发人员能够将应用程序以容器的形式进行部署,但在此之前需要构建Docker镜像。只要熟悉相关Docker命令,开发人员就能轻松完成所有这些步骤,从而实现应用程序的容器化部署。本文将根据使用场景对 Docker 命令进行分类介绍。1 构建 Docker 镜像构建 Docker 镜像需要使用 Do
首先,对Docker架构以及基本安全特性进行介绍,分析了Docker面临的安全威胁。由于Docker拥有轻量化、高效率和易部署的特点,目前已被广泛应用于云计算和微服务架构中。本文对Docker安全相关的研究思路、方法和工具进行比较和分析,并指出未来可能的研究方向。此外,Iptables的限制范围有限,容器网络仍然容易受到数据链路层攻击,如ARP欺骗等。
独立的Docker Swarm1.2.3以上版本。旧版本的Portainer支持独立Docker Swarm,而Portainer 1.17.0和更新版本不支持它。但是,对于一般需求,Portainer可能并不适合。此外,DockStation在Docker Hub上十分的受欢迎。未来,会重构成 Spring Cloud Alibaba 。
你是否还在大量控制台窗口中监控容器,还是对使用终端命令充满热情?而使用Docker的图形用户界面(GUI)工具,则可以更简单的对容器进行管理,并提高效率。而且它们都是免费的。
事先准备一台linux主机,并且已安装好docker环境。centos安装docker环境如下:查询可安装版本:
VSole
网络安全专家