JumpServer部署及应用(下)

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: JumpServer部署及应用

下载jumpserver web镜像

[root@node01 ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
[root@node01 ~]# docker pull jumpserver/jms_all:v2.4.0
v2.4.0: Pulling from jumpserver/jms_all
75f829a71a1c: Pull complete
f9c494d6df5d: Pull complete
5135b4193f02: Pull complete
918e815b1dc8: Pull complete
0334369c4479: Pull complete
64a0f2a7663a: Pull complete
Digest: sha256:2081c88eca6dffb41bc42d8fe06d18c4379eacdbb354fa56dffd2a918738274d
Status: Downloaded newer image for jumpserver/jms_all:v2.4.0
docker.io/jumpserver/jms_all:v2.4.0
[root@node01 ~]# docker images
REPOSITORY           TAG                 IMAGE ID            CREATED             SIZE
jumpserver/jms_all   v2.4.0              3418bbaaded1        9 days ago          1.54GB
[root@node01 ~]#

编写生成SECRET_KEY和``BOOTSTRAP_TOKEN的脚本

[root@node01 ~]# cat key_gen.sh
#!/bin/bash
if [ ! "$SECRET_KEY" ]; then
  SECRET_KEY=`cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 50`;
  echo "SECRET_KEY=$SECRET_KEY" >> ~/.bashrc;
  echo $SECRET_KEY;
else
  echo $SECRET_KEY;
fi 
if [ ! "$BOOTSTRAP_TOKEN" ]; then
  BOOTSTRAP_TOKEN=`cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 16`;
  echo "BOOTSTRAP_TOKEN=$BOOTSTRAP_TOKEN" >> ~/.bashrc;
  echo $BOOTSTRAP_TOKEN;
else
  echo $BOOTSTRAP_TOKEN;
fi
[root@node01 ~]#

提示:上面脚本主要是判断是否有SECRET_KEY和BOOTSTRAP这两个key,如果没有就生成,并把SECRET_KEY保存到SECRET_KEY并放到当前家目录的.bashrc中,并打印出来,如果有就直接打印出来;

运行脚本生成SECRET_KEY和``BOOTSTRAP_TOKEN

[root@node01 ~]# bash key_gen.sh
wIUaeZtCbtTNUDL9igEIImALjjaMo9ygPwfMWmPZcyWD0c3K9Q
Lx15DW9xDxqOkiCq
[root@node01 ~]#

提示:这两个随机密钥很重要,它用来加密数据库字段用的,所以在环境迁移和升级都会用到这两个key;

创建用户保存jumpserver容器中的数据目录

[root@node01 ~]# mkdir /data/jumpserver/ -pv
mkdir: created directory ‘/data’
mkdir: created directory ‘/data/jumpserver/’
[root@node01 ~]#

启动jumpserver/jms_all:v2.4.0镜像为容器

[root@node01 ~]# docker run --name jms_all -d \
>   -v /data/jumpserver/:/opt/jumpserver/data \
>   -p 80:80 \
>   -p 2222:2222 \
>   -e SECRET_KEY=wIUaeZtCbtTNUDL9igEIImALjjaMo9ygPwfMWmPZcyWD0c3K9Q \
>   -e BOOTSTRAP_TOKEN=Lx15DW9xDxqOkiCq \
>   -e DB_HOST=192.168.0.42 \
>   -e DB_PORT=3306 \
>   -e DB_USER=jumpserver \
>   -e DB_PASSWORD=admin123.com \
>   -e DB_NAME=jumpserver \
>   -e REDIS_HOST=192.168.0.42 \
>   -e REDIS_PORT=6379 \
>   -e REDIS_PASSWORD=admin123.com \
>   --privileged=true \
>   jumpserver/jms_all:v2.4.0
8974115a714c5000bac47a8a457190408861ad1967429435ad4f6a0b838c2fe3
[root@node01 ~]# docker ps
CONTAINER ID        IMAGE                       COMMAND             CREATED             STATUS              PORTS                                        NAMES
8974115a714c        jumpserver/jms_all:v2.4.0   "./entrypoint.sh"   14 seconds ago      Up 12 seconds       0.0.0.0:80->80/tcp, 0.0.0.0:2222->2222/tcp   jms_all
[root@node01 ~]# ss -tnl
State      Recv-Q Send-Q                  Local Address:Port                                 Peer Address:Port             
LISTEN     0      128                                 *:22                                              *:*                 
LISTEN     0      100                         127.0.0.1:25                                              *:*                 
LISTEN     0      128                                :::2222                                           :::*                 
LISTEN     0      128                                :::80                                             :::*                 
LISTEN     0      128                                :::22                                             :::*                 
LISTEN     0      100                               ::1:25                                             :::*                 
[root@node01 ~]#

提示:以上启动容器主要指定了mariadb和redis服务器的相关地址和密码端口信息;其中在宿主机上暴露了80和2222端口;

查看日志

image.png

提示:使用docker logs -f 容器id 能够看到上图中的信息,说明jumpserver容器就跑起来了;

访问jumpserver

image.png

提示:访问jumpserver容器所在主机的ip地址即可访问到jumpserver,默认用户名和密码都是admin;

image.png

提示:第一次登陆时,它会让我们重设密码;

image.png

提示:重设密码后,重新登录,jumpserver的首页就是上图这样;后续我们就可以在这个界面来管理内网服务器了;到此jumpserver服务器就搭建好了;

四、jumpserver使用

1、jumpserver基本设置

image.png

提示:基本设置是必须设置当前jumpserver的url和邮件主题前缀;这样在用户收到邮件中的链接都会指向这个jumpserver的url;

2、配置jumpserver发邮件的邮件服务器和用户名密码

image.png

提示:在系统设置--->邮件设置,把对应的账号信息,邮件服务器信息都填写好,然后测试连接,如果可以正常收到邮件,说明邮件服务器信息和邮件用户名密码没有问题;最后点提交;

3、创建用户

提示:在用户管理--->用户列表--->创建;填写好用户相关信息后,点击最下面的提交;

提示:新建用户成功以后,对应的用户邮箱就会收到一份有jumpserver发送到用户创建成功的邮件,用户可以点击此邮件中的链接进行密码设定;

提示:密码设定好了,点击设置;用户会收到一份密码更新成功的邮件;

image.png

4、创建用户组,并把test用户添加到对应的组中;

image.png

提示:用户管理--->用户组---->创建,填写好组信息和选择好用户后,点击提交即可;

5、jumpserver 资产管理--->管理用户创建

image.png

提示:资产管理---->管理用户---->创建,填写好对应被管控端的管理员和密码点击提交;管理用户是资产(被控服务器)上的 root,或拥有 NOPASSWD: ALL sudo 权限的用户, JumpServer 使用该用户来 `推送系统用户`、`获取资产硬件信息` 等。

6、创建系统用户,这里的系统用户是指我们使用jumpserver登录到对应的被管控主机时用的用户

image.pngimage.png

提示:资产管理--->系统用户--->新建,填写好用户名,勾选自动推送和自动生成密钥,点击最下方的提交即可;这里填写的用户会用作jumpserver上登录对应的主机用到用户,如果被管控端没有这个用户,jumpserver就会利用我们刚才添加的管理用户去创建一个这里的系统用户;

7、创建资产

image.png

提示:资产管理--->资产列表--->新建,填写对应被管控的的主机信息和ip地址信息,以及管理用户,点击最下方的提交;

image.png

提示:提交完成后,我们就可以在资产列表中看到我们刚才添加到主机;

8、资产授权

image.png

提示:权限管理--->资产授权--->创建,填写好名称后,要选择用户和组以及资产和系统用户,然后点击最下方的提交;到此一个资源就授权给test用户和test组中的成员了;这里需要注意一点,一个节点中有很多server,如果你只想授权单台server给某个用户,下面的节点就留空,如果你想授权一个节点给用户你可以选择节点,上面的资产就可以留空,如果你又想授权单个资产和某个节点给用户,就选择对应的资产和节点即可;如果这里选择default节点,表示把default节点下的所有主机都授权给用户;默认default节点包含所有主机;

验证:使用test用户登录jumpserver,看看test用户是否能够看到我们创建的资源?

提示:首次登陆,它会让我们更新用户的信息,然后同一些条款,这个我们按照实际信息来修改即可;在我的资产中可以看到当前用户有点资产;

验证:使用test用户连接node01看看是否可以连接到node01?

提示:可以看到test用户是可以正常使用我们配置的jumpserver用户正常正常的连接到node01;

9、查看用户操作回放

image.png

提示:点击会话管理---->会话管理---->历史会话----> 找到对应会话后面的回放即可查看对应用户在过去会话中执行的操作;

image.png

好了,jumpserver的基本操作就到此为止了,后续其他日志啊,都可以在web上点击对应的菜单查看,我这里就不过多阐述了

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
6月前
|
运维 前端开发 应用服务中间件
jumpserver详解(六)——jumpserver luna组件安装
jumpserver详解(六)——jumpserver luna组件安装
117 1
|
网络协议 NoSQL 安全
jumpserver部署与使用
jumpserver部署与使用
474 0
|
3月前
|
运维 网络安全 Docker
JumpServer——使用Docker快速搭建
JumpServer——使用Docker快速搭建
94 1
JumpServer——使用Docker快速搭建
|
3月前
|
Kubernetes 关系型数据库 MySQL
k8s安装并迁移jumpserver
k8s安装并迁移jumpserver
|
3月前
|
关系型数据库 应用服务中间件 nginx
手动部署JumpServer
手动部署JumpServer
|
6月前
|
运维 监控 Linux
jumpserver详解(十)——jumpserver使用
jumpserver详解(十)——jumpserver使用
285 2
|
6月前
|
运维 Linux 网络安全
jumpserver详解(八)——jumpserver用户设置
jumpserver详解(八)——jumpserver用户设置
165 0
|
运维 Kubernetes 监控
【JumpServer-初识篇】一键搭建JumpServer堡垒机、对接server服务器,只需要25分钟
今天分享JumpServer堡垒机,带领大家搭建以及使用JumpServer连接我们的后端server服务器。 这里安装的版本v2.22.2,采用的是离线部署JumpServer堡垒机,相应的还有一键部署、手动部署、kubernetes部署、源码部署等。更多信息请使用文章末尾链接查看。 <br> # 一、什么是堡垒机? 堡垒机,即在一个特定的网络环境下,为了保障网络和数据不受来自外部和内部用户的入侵和破坏,而运用各种技术手段监控和记录运维人员对网络内的服务器、网络设备、安全设备、数据库等设备的操作行为,以便集中报警、及时处理及审计定责。
1029 0
【JumpServer-初识篇】一键搭建JumpServer堡垒机、对接server服务器,只需要25分钟
|
运维 NoSQL 安全
JumpServer部署及应用(上)
JumpServer部署及应用
443 0
JumpServer部署及应用(上)
|
数据安全/隐私保护
JumpServer部署及应用(下)
JumpServer部署及应用
452 0
JumpServer部署及应用(下)