本地虚机Jumpserver使用域名访问报错 使用IP+端口没有错误

背景:

我在本地Windows VMware 15的环境中部署了CentOS7.5,下载jumpserver-offline-installer-v2.28.1-amd64-138.tar.gz并安装部署。

需求:

1、能使用http:ip访问堡垒机。达成;

2、能使用http:域名访问堡垒机。达成;

3、能使用https:ip访问堡垒机。达成;

4、能使用https:域名访问堡垒机。达成;

5、最终目标是能在https:域名访问堡垒机时,证书安全。达成。

实现过程:

1、能使用http:ip访问堡垒机。

        这一个过程比较简单,直接无脑离线安装 - JumpServer 文档操作就行,http:ip访问成功。

server {listen 80;server_name demo.jumpserver.org;  # 自行修改成你的域名client_max_body_size 4096m;  # 上传文件大小限制location / {# 这里的 ip 是后端 JumpServer nginx 的 ipproxy_pass http://192.168.244.144;proxy_http_version 1.1;proxy_buffering off;proxy_request_buffering off;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";proxy_set_header Host $host;proxy_set_header X-Forwarded-For $remote_addr;}
}

 在Config.txt中起作用的主要是这一段:

运行结果,页面上:

2、能使用http:域名访问堡垒机。

         这一阶段只需要在上一个http://ip的基础上,修改一下hosts文件,把ip指向域名即可,代码如下:

192.168.13.187 域名.com

效果如下:

 3、能使用https:ip访问堡垒机。

        这一阶段需要使用nginx代理,因此有两个选择,一个使用jumpserver自带的nginx,另一个是自己部署一套nginx。

        使用jumpserver自带的nginx,可以修改jumpserver目录的conf下自带的lb_http_server.conf文件,参考反向代理 - JumpServer 文档。    

        但我选择单独部署一个新的nginx代理https。jumpserver保持http://ip访问的配置,修改config.txt的内容把USE_LB=1屏蔽掉。nginx内给出如下配置。 在conf目录下新增cert目录,里面加入server.pem和server.key。

worker_rlimit_nofile 15360;
events {#use                epoll;accept_mutex        off;multi_accept        on;worker_connections  10240;
}http {include       mime.types;default_type  application/octet-stream;client_max_body_size 500M;server_tokens off;  ##hide version numberserver {listen 8080;server_name ********.com;  # 自行修改成你的域名return 301 https://$server_name$request_uri;}server {listen 443 ssl;server_name          ********.com;  # 自行修改成你的域名ssl_certificate      cert/server.pem;  # 自行设置证书ssl_certificate_key  cert/server.key;  # 自行设置证书ssl_session_timeout 1d;ssl_session_cache shared:MozSSL:10m;ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;ssl_prefer_server_ciphers off;ssl_protocols TLSv1.1 TLSv1.2;add_header Strict-Transport-Security "max-age=63072000" always;client_max_body_size 4096m;  # 录像及文件上传大小限制location / {# 这里的 ip 是后端 JumpServer nginx 的 ipproxy_pass http://192.168.13.187;proxy_http_version 1.1;proxy_buffering off;proxy_request_buffering off;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";proxy_set_header Host $host;proxy_set_header X-Forwarded-For $remote_addr;}}
}

        结果:可以用https://ip来访问。

        ps:其实直接使用lb_http_server.conf,把server部分贴上去也可以实现该效果。

4、能使用https://域名访问堡垒机。

        在https://ip成功的基础上,修改一下hosts文件,把ip指向域名即可。效果如下:

 5、最终目标是能在https:域名访问堡垒机时,证书安全。

         原本一直出不来安全的标志,发现是证书读取路径的问题,在nginx的conf目录下新增一个cert目录,然后把你的pem/crt和key放进去,并且在nginx.conf中配置代码如下:

	server {listen 443 ssl;server_name          *********.com;  # 自行修改成你的域名ssl_certificate      cert/server.pem;  # 自行设置证书ssl_certificate_key  cert/server.key;  # 自行设置证书... ...}

         页面效果如下:

        至此,大功告成。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/64249.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于大语言模型知识问答应用落地实践 – 知识库构建(下)

上篇介绍了构建知识库的大体流程和一些优化经验细节,但并没有结合一个具体的场景给出更细节的实战经验以及相关的一些 benchmark 等,所以本文将会切入到一个具体场景进行讨论。 目标场景:对于 PubMed 医疗学术数据中的 1w 篇文章进行知识库构…

c++(8.29)auto关键字,lambda表达式,数据类型转换,标准模板库,list,文件操作+Xmind

作业: 封装一个学生的类,定义一个学生这样类的vector容器, 里面存放学生对象(至少3个) 再把该容器中的对象,保存到文件中。 再把这些学生从文件中读取出来,放入另一个容器中并且遍历输出该容器里的学生。…

CSS transition 过渡

1 前言 CSS过渡(transition)可以在一个元素切换到另一种状态时为其定义平滑的过渡效果。 例如,用户鼠标悬停在按钮上时,按钮颜色平滑的从一个颜色过渡到另一个颜色。 .btn:hover{background-color: red;color: black; }默认悬停效果 添加过渡效果 .b…

网工内推 | 上市公司,IT工程师、服务器工程师,IP以上优先

01 烟台睿创微纳技术股份有限公司 招聘岗位:IT工程师 职责描述: 1、负责网络及安全架构的规划、设计、性能优化; 2、负责网络设备的安装、配置、管理、排错、维护,提供网络设备维护方案; 3、负责防火墙、上网行为管理…

滑动窗口和双指针

滑动窗口和双指针 一、循环不变量1.1 定义1.2 总结 二、使用循环不变量写对代码2.1 注意2.2 总结 三、滑动窗口3.1 固定长度的滑动窗口(同向交替移动的两个变量)3.2 不定长度的滑动窗口3.2.1 定义3.2.2 总结 3.3 计数问题3.3.1 标准3.3.2 总结 3.4 使用数…

前端基础4——jQuery

文章目录 一、基本了解1.1 导入jQuery库1.2 基本语法1.3 选择器 二、操作HTML2.1 隐藏和显示元素2.2 获取与设置内容2.3 获取、设置和删除属性2.4 添加元素2.5 删除元素2.6 设置CSS样式 三、jQuery Ajax3.1 基本语法3.2 回调函数3.3 常用HTTP方法3.4 案例一3.4.1 准备工作3.4.2…

go语言配置

1、Go语言的环境变量 与Java等编程语言一样,安装Go语言开发环境需要设置全局的操作系统环境变量(除非是用包管理工具直接安装) 主要的系统级别的环境变量有两个: (1)GOROOT:表示Go语言环境在计算机上的安…

springboot docker

在Spring Boot中使用Docker可以帮助你将应用程序与其依赖的容器化,并简化部署和管理过程。 当你在Spring Boot中使用Docker时,你的代码不需要特殊的更改。你可以按照通常的方式编写Spring Boot应用程序。 java示例代码,展示了如何编写一个基…

lv3 嵌入式开发-3 linux shell命令(权限、输入输出)

1 Shell概述 随着各式Linux系统的图形化程度的不断提高,用户在桌面环境下,通过点击、拖拽等操作就可以完成大部分的工作。 然而,许多Ubuntu Linux功能使用shell命令来实现,要比使用图形界面交互,完成的更快、更直接。…

MOS场效应管

导体三极管中参与导电的有两种极性的载流子,所以也称为双极型三极管。本文将介绍另一种三极管,这种三极管只有一种载流子参与导电,所以也称为单极型三极管,因为这种管子是利用电场效应控制电流的,所以也叫场效应三极管…

JVM 垃圾收集器

重点:CMS,G1,ZGC 主要垃圾收集器如下,图中标出了它们的工作区域、垃圾收集算法,以及配合关系。 Serial 收集器 Serial 收集器是最基础、历史最悠久的收集器。 如同它的名字(串行)&#xff0c…

使用实体解析和图形神经网络进行欺诈检测

图形神经网络的表示形式(作者使用必应图像创建器生成的图像) 一、说明 对于金融、电子商务和其他相关行业来说,在线欺诈是一个日益严重的问题。为了应对这种威胁,组织使用基于机器学习和行为分析的欺诈检测机制。这些技术能够实时…

从0创建vite+vue3项目遇到的一些坑

使用ws自动创建的vitevue3项目后设置不了alias 答:不懂原理,但是有其他方法解决。直接在命令行执行“npm init vitelatest"后,一路选下去有create-vue的选项,就选这个create-vue创建;创建后会自动导入一个叫node…

滑动窗口最大值

题目链接 滑动窗口最大值 题目描述 注意点 只可以看到在滑动窗口内的 k 个数字返回 滑动窗口中的最大值1 < k < nums.length 解答思路 首先使用双端队列解决本题&#xff0c;队列中存储的是元素在数组中的下标&#xff0c;不断往队尾添加元素下标。在双端队列中&…

【图解算法数据结构】分治算法篇 + Java代码实现

文章目录 一、重建二叉树二、数值的整数次方三、打印从 1 到最大的 n 位数四、二叉搜索树的后序遍历序列五、数组中的逆序对 一、重建二叉树 public class Solution {int[] preorder;HashMap<Integer, Integer> dic new HashMap<>();public TreeNode buildTree(in…

算法:分治思想处理归并递归问题

文章目录 算法原理实现思路典型例题排序数组数组中的逆序对计算右侧小于当前元素的个数 总结 算法原理 利用归并思想进行分治也是很重要的一种思路&#xff0c;在解决逆序对的问题上有很大的需求空间 于是首先归并排序是首先的&#xff0c;归并排序要能写出来&#xff1a; c…

Linux学习之vsftpd虚拟用户

/etc/vsftpd/vsftpd.conf里边有几项跟vsftpd虚拟用户有关的主要配置&#xff1a; guest_enableYES&#xff0c;允许匿名用户登录vsftpd guest_usernamevirtual&#xff0c;指定虚拟用户账户为virtual&#xff0c;就是把虚拟用户映射成Linux本地用户&#xff0c;这样可以使用Lin…

【C++】C++11新特性(下)

上篇文章&#xff08;C11的新特性&#xff08;上&#xff09;&#xff09;我们讲述了C11中的部分重要特性。本篇接着上篇文章进行讲解。本篇文章主要进行讲解&#xff1a;完美转发、新类的功能、可变参数模板、lambda 表达式、包装器。希望本篇文章会对你有所帮助。 文章目录 一…

用反射实现自定义Java对象转化为json工具类

传入一个object类型的对象获取该对象的class类getFields方法获取该类的所有属性对属性进行遍历&#xff0c;并且拼接成Json格式的字符串&#xff0c;注意&#xff1a;通过属性名来推断方法名获取Method实例通过invoke方法调用 public static String objectToJsonUtil(Object o…

MVC模式分层练习

新建库 新建表 插入点数据 先不用MVC模式写功能,来看下缺点是什么 新建一个空项目 选项项目使用的JDK 自己的IDEA总是要重启下 新建模块 因maven还没教 添加框架支持 添加后项目多了这些 添加些必要依赖 这里注意下,如果导入jar包不对可以重新导入下或者是jar包本身出了问…