概述
一款开源的堡垒机,可使系统的管理员和开发人员安全的连接到企业内部服务器上执行操作,是一款非常安全的远程连接工具。
4A
- 身份验证
- 授权控制
- 账号管理
- 安全审计
安装
[root@jumpserver project]# tar -xf jumpserver-offline-installer-v2.28.6-amd64-179.tar.gz
[root@jumpserver project]# mv jumpserver-offline-installer-v2.28.6-amd64-179 /usr/local/jumpserver
[root@jumpserver project]# cd /usr/local/jumpserver/# 一路回车,只需要更改端口
[root@jumpserver jumpserver]# ./jmsctl.sh install 1、检查配置文件
配置文件位置:/opt/jumpserver/config
/opt/jumpserver/config/config.txt [ √ ]
/opt/jumpserver/config/nginx/cert/server.crt [ √ ]
/opt/jumpserver/config/nginx/cert/server.key [ √ ]
完成>>> 安装配置 Docker
1. 安装 Docker
完成2. 配置 Docker
是否需要支持 IPv6? (y/n) (默认为 n): #直接回车
完成3. 启动 Docker
完成>>> 加载 Docker 镜像
...
完成>>> 安装配置 JumpServer
1. 配置加密密钥
SECRETE_KEY: YjYxYWMyZmUtMzI4NS00YmZhLTg1NWUtN2MwZjY1MWZhMTMw
BOOTSTRAP_TOKEN: YjYxYWMyZmUtMzI4NS00YmZh
完成2. 配置持久化目录
是否需要自定义持久化存储, 默认将使用目录 /data/jumpserver (y/n) (默认为 n): #直接回车
完成3. 配置 MySQL
是否使用外部 MySQL? (y/n) (默认为 n): #直接回车
完成4. 配置 Redis
是否使用外部 Redis? (y/n) (默认为 n): #直接回车
完成5. 配置对外端口
是否需要配置 JumpServer 对外访问端口? (y/n) (默认为 n): y #输入y,修改web访问端口
JumpServer web port (default 80): 81 #端口为81
JumpServer ssh port (default 2222): #直接回车
完成6. 初始化数据库
[+] Running 4/4⠿ Network jms_net Created 0.1s⠿ Container jms_redis Healthy 11.0s⠿ Container jms_mysql Healthy 11.0s⠿ Container jms_core Started 11.2s
2023-07-04 01:52:27 Collect static files
2023-07-04 01:52:27 Collect static files done
2023-07-04 01:52:27 Check database structure change ...
2023-07-04 01:52:27 Migrate model change to database ...
...Applying users.0040_alter_user_source... OK
After migration, update builtin role permissions
完成>>> 安装完成了
1. 可以使用如下命令启动, 然后访问
cd /usr/local/jumpserver
./jmsctl.sh start2. 其它一些管理命令
./jmsctl.sh stop
./jmsctl.sh restart
./jmsctl.sh backup
./jmsctl.sh upgrade
更多还有一些命令, 你可以 ./jmsctl.sh --help 来了解3. Web 访问
http://192.168.1.252:81
默认用户: admin 默认密码: admin4. SSH/SFTP 访问
ssh -p2222 admin@192.168.1.252
sftp -P2222 admin@192.168.1.2525. 更多信息
我们的官网: https://www.jumpserver.org/
我们的文档: https://docs.jumpserver.org/# 启动jumpserver
[root@jumpserver jumpserver]# ./jmsctl.sh start
[+] Running 8/8⠿ Container jms_mysql Healthy 0.6s⠿ Container jms_redis Healthy 0.6s⠿ Container jms_core Healthy 14.3s⠿ Container jms_web Started 15.6s⠿ Container jms_koko Started 15.5s⠿ Container jms_lion Started 15.3s⠿ Container jms_celery Started 15.1s⠿ Container jms_magnus Started 17.8s# 查看状态
[root@jumpserver jumpserver]# ./jmsctl.sh status
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
jms_celery jumpserver/core:v2.28.6 "./entrypoint.sh sta…" celery 26 seconds ago Up 12 seconds (healthy) 8070/tcp, 8080/tcp
jms_core jumpserver/core:v2.28.6 "./entrypoint.sh sta…" core 26 seconds ago Up 25 seconds (healthy) 8070/tcp, 8080/tcp
jms_koko jumpserver/koko:v2.28.6 "./entrypoint.sh" koko 26 seconds ago Up 12 seconds (healthy) 0.0.0.0:2222->2222/tcp, :::2222->2222/tcp, 5000/tcp
jms_lion jumpserver/lion:v2.28.6 "./entrypoint.sh" lion 26 seconds ago Up 12 seconds (healthy) 4822/tcp, 8081/tcp
jms_magnus jumpserver/magnus:v2.28.6 "./entrypoint.sh" magnus 26 seconds ago Up 9 seconds (health: starting) 0.0.0.0:30000-30100->30000-30100/tcp, :::30000-30100->30000-30100/tcp
jms_mysql jumpserver/mariadb:10.6 "docker-entrypoint.s…" mysql 2 minutes ago Up 2 minutes (healthy) 3306/tcp
jms_redis jumpserver/redis:6.2 "docker-entrypoint.s…" redis 2 minutes ago Up 2 minutes (healthy) 6379/tcp
jms_web jumpserver/web:v2.28.6 "/docker-entrypoint.…" web 26 seconds ago Up 12 seconds (healthy) 80/tcp, 0.0.0.0:81->81/tcp, :::81->81/tcp
Jumpserver使用
一、访问
http://ip:port
第一次登录会让修改密码,使用新密码登录即可
二、配置用户
在 Jumpserver 里面两种用户:
1、用户管理里面的用户:这个用户指堡垒机账号,就是你能用这个账号登录web页面,登录跳板机服务器的用户
2、资产管理里面的系统用户:
- 特权用户:是资产已存在的,并且拥有 高级权限 的系统用户,如 root 用户,Jumpserver 使用该用户来 推送系统用户 获取资产硬件信息 等;
- 普通用户:可以在资产上预先存在,也可以由 特权用户 来自动创建
- 系统用户:是 Jumpserver 登录资产时使用的账号
1、用户管理-用户列表
创建登录jumpserver的用户operation
用户创建好之后,需要使用这个用户进行资产的管理,但是我们还没有资产。资产已经创建好 harbor,test,nacos,rocketmq。
2、资产管理-系统用户-特权用户
特权用户是资产(被控服务器)上的 root,或拥有 NOPASSWD: ALL sudo 权限的用户,Jumpserver 使用该用户来 ‘推送系统用户’ ‘获取资产硬件信息’ 等
3、资产管理-系统用户-普通用户
普通用户是 Jumpserver 跳转登录资产时使用的用户,可以理解为登录资产的系统用户,常见普通用户op,使用密码登录,自动推送选择所有权限ALL
4、资产管理-资产列表
系统用户创建完成之后,还没有资产,现在需要添加资产(此资产就是后面需要使用jumpserver管理的机器)
提交结果如下:
5、授权用户
资产创建完成之后,需要授权给哪个用户登录进行管理
6、测试
此时退出admin管理用户,使用operation用户登录,测试web用户的资产
点击web终端,可以正常登陆资产,使用 sudo -s 切换到 root 用户,也可以使用 sudo 提权执行命令
如果jumpserver有多个用户,且授权不同的用户管理不同的资产,此时每个用户只能看到自己的资产,别人的资产是看不到的
7、文件上传下载
下载文件,选中双击即可
配置完成后,jumpserver使用命令行通过operation用户连接,可以看到资产,此时也可以在jumpserver主机通过命令行连接
[root@jumpserver ~]# ssh -p2222 operation@192.168.1.252运维人员, JumpServer 开源堡垒机1) 输入 部分IP,主机名,备注 进行搜索登录(如果唯一).2) 输入 / + IP,主机名,备注 进行搜索,如:/192.168.3) 输入 p 进行显示您有权限的主机.4) 输入 g 进行显示您有权限的节点.5) 输入 d 进行显示您有权限的数据库.6) 输入 k 进行显示您有权限的Kubernetes.7) 输入 r 进行刷新最新的机器和节点信息.8) 输入 s 进行中英日语言切换.9) 输入 h 进行显示帮助.10) 输入 q 进行退出.
Opt> p
输入p,可以看到operation用户管理的资产
输入对应id,可以直接进入到资产里面,sudo -s切换到root用户,直接进行配置即可
[Host]> 2
开始连接到 普通用户op@192.168.1.101 0.1Welcome to Huawei Cloud Service
[op@test ~]$ sudo -s
[root@test op]# exit
[op@test ~]$ exit
[Host]> exit