服务器运维之堡垒机

标签: 无 分类: 未分类 创建时间:2023-03-22 01:24:44 更新时间:2024-11-24 10:04:01

前言

现在有一个需求就是,有ABC三台主机,A为Windows系统,B和C为麒麟V10,A直通B,B直通C,但是A不通C,现在需要通过A访问C,那么B就作为了跳板机。又因为B和C都是linux系统,那么使用ssh进行链接的时候,复制和粘贴就比较麻烦。

参考文章:
1.跳板机和堡垒机

2.堡垒机

堡垒机是通过切断终端对计算机网络和服务器资源的直接访问,采用协议代理的方式接管终端计算机对网络和服务器的访问;我在某个政府单位的时候,他们自己买了一套什么安恒公司的天池云堡垒机进行管理,还有其他的公司提供这种堡垒机服务,北京启明星辰信息安全技术有限公司,就提供了一套VPN和登录客户端。

参考文章:
1.几款开源的堡垒机 Jumpserver、Teleport、GateOne、CrazyEye
2.详解四款开源堡垒机–jumpserver一家独大 Jumpserver、Teleport、GateOne、CrazyEye

3.Jumpserver

经过调研,我决定尝试使用Jumpserver

参考文章:
1.Jump 跳板机的搭建和部署 Jumpserver 是一款由 python 编写开源的跳板机(堡垒机)系统

1.安装

执行一键安装命令,这个命令会下载安装Docker。

1
curl -sSL https://resource.fit2cloud.com/jumpserver/jumpserver/releases/latest/download/quick_start.sh | bash

分为:
1.Install and Configure Docker: Install Docker、Configure Docker、Start Docker;
2.Loading Docker Image: jumpserver/redis、jumpserver/mariadb、 jumpserver/core、jumpserver/koko、jumpserver/lion、jumpserver/magnus、jumpserver/web;
3.Install and Configure JumpServer:Configure Private Key、 Configure Persistent Directory、 Configure MySQL、Configure Redis、Configure External Port、Init JumpServer Database

配置文件路径:/opt/jumpserver/config

参考文章:
1.一键安装\

2.卸载

安装完成后 JumpServer 配置文件路径为: /opt/jumpserver/config/config.txt

1
2
3
4
5
6
7
8
9
10
11
12
13
cd /opt/jumpserver-installer-v3.1.0

# 启动
./jmsctl.sh start

# 停止
./jmsctl.sh down

# 卸载,一路输入 y 就可以了。
./jmsctl.sh uninstall

# 帮助
./jmsctl.sh -h

卸载完成之后,删除 /opt/jumpserver 和 /opt/jumpserver-installer-v3.1.0 文件夹

1
2
rm -rf /opt/jumpserver
rm -rf /opt/jumpserver-installer-v3.1.0
参考文章:
1.在线安装

3.增加资产

点击页面左侧的控制台,资产管理 - 资产列表 - 主机 - 创建 创建一台 Linux 服务器,并在创建资产过程中,创建特权用户,内容就是上面表单的 管理员用户 和 密码。

4.授权

创建资产之后,还需要将资产授权给某一个用户,就算是Administrator账号也不行。点击页面左侧的 权限管理 - 资产授权 - 创建 创建一个授权。

5.Web终端

打开工作台,找到Web终端,可以看到已经授权的资产。

选中创建的资产,然后可以使用文件连接的方式,进行远程连接

6.文件上传下载

选择进入需要上传下载的资产对应的系统用户(只有一个系统用户时,进入即为系统用户的 SFTP 目录【默认为/tmp】;拥有多个系统用户时,需要进入相对应的系统用户目录。进入之后即为系统用户的 SFTP 目录【默认为/tmp】)

问题

(1) Failed to change the table structure! dependency failed to start: container for service “core” is unhealthy
一键安装的时候,出现了这个问题。这个问题后来我想了想,就是我在执行一键安装的时候,不小心把正在安装的进程结束了,导致了部分安装。

【解决方法】
解决方法就是先卸载,然后重新安装就好了。

小额赞助
本人提供免费与付费咨询服务,感谢您的支持!赞助请发邮件通知,方便公布您的善意!
**光 3.01 元
Sun 3.00 元
bibichuan 3.00 元
微信公众号
广告位
诚心邀请广大金主爸爸洽谈合作
每日一省
isNaN 和 Number.isNaN 函数的区别?

1.函数 isNaN 接收参数后,会尝试将这个参数转换为数值,任何不能被转换为数值的的值都会返回 true,因此非数字值传入也会返回 true ,会影响 NaN 的判断。

2.函数 Number.isNaN 会首先判断传入参数是否为数字,如果是数字再继续判断是否为 NaN ,不会进行数据类型的转换,这种方法对于 NaN 的判断更为准确。

每日二省
为什么0.1+0.2 ! == 0.3,如何让其相等?

一个直接的解决方法就是设置一个误差范围,通常称为“机器精度”。对JavaScript来说,这个值通常为2-52,在ES6中,提供了Number.EPSILON属性,而它的值就是2-52,只要判断0.1+0.2-0.3是否小于Number.EPSILON,如果小于,就可以判断为0.1+0.2 ===0.3。

每日三省
== 操作符的强制类型转换规则?

1.首先会判断两者类型是否**相同,**相同的话就比较两者的大小。

2.类型不相同的话,就会进行类型转换。

3.会先判断是否在对比 null 和 undefined,是的话就会返回 true。

4.判断两者类型是否为 string 和 number,是的话就会将字符串转换为 number。

5.判断其中一方是否为 boolean,是的话就会把 boolean 转为 number 再进行判断。

6.判断其中一方是否为 object 且另一方为 string、number 或者 symbol,是的话就会把 object 转为原始类型再进行判断。

每日英语
Happiness is time precipitation, smile is the lonely sad.
幸福是年华的沉淀,微笑是寂寞的悲伤。