HTTPD 搭建正向代理 使无网络访问权限的服务器能够访问互联网服务的快捷办法
背景
- 公司有保密要求比较高,数据安全要求比较高的企业客户,要求核心业务服务器部允许直接访问互联网,但是因为我们有一些OCR识别以及发票查验等的场景需要连接云端的服务才可以正常使用, 所以这里面就存在安全与易用性的矛盾,之前采取的方式是nginx反向代理云端服务, 在内网修改hosts 进行虚拟DNS解析就可以实现,不需要改程序代码.稳定性比较好,但是客户方要求必须使用正向搭理,由代理服务器负责将服务转发至局域网.为了验证解决方案,简单总结一下正向代理的搭建过程.
搭建过程
- 本来想使用apache的httpd的tar包进行安装,但是发现编译起来比较麻烦,需要有apr以及apr-tuil等包,需要不停的下载tar进行编译,比较繁琐,所以索性改用docker方式运行.也是对自己docker技能的一个简单自我检查.
docker pull httpd
docker run -d --name httpd httpd
#拉取并且启动容器
docker cp httpd:/usr/local/apache2/conf /root
#将httpd的配置文件拉取出来,在本地进行增加便于修改
#主要是我懒 不想自己去找配置文件了.
cd /root/conf
进入配置文件目录进行参数修改
第一部分
vim /root/conf/httpd.conf
注意打开如下部分的 proxy设置
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
LoadModule proxy_scgi_module modules/mod_proxy_scgi.so
LoadModule proxy_uwsgi_module modules/mod_proxy_uwsgi.so
LoadModule proxy_fdpass_module modules/mod_proxy_fdpass.so
LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_express_module modules/mod_proxy_express.so
# 需要注意的是 不同版本的配置文件可能不一样. 我这边就删除了两项docker镜像里面没有依赖包的配置项目, 但是不影响正常使用.
注意在httpd.conf 的前面增加一个配置项目, 增加上允许读取vhosts的配置项目
Include conf/extra/httpd-vhosts.conf
# 这样总体配置文件就算完成了
在根据include 的配置文件进行修改
vim /root/conf/extra/httpd-vhosts.conf
我这边修改成为的内容为:
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "/usr/local/apache2/docs/dummy-host.example.com"
ServerName 10.110.82.173
ErrorLog "logs/dummy-host.example.com-error_log"
CustomLog "logs/dummy-host.example.com-access_log" common
Options FollowSymLinks
#正向代理设置
ProxyRequests On
ProxyVia On
<Proxy *>
</Proxy>
</VirtualHost>
注意虚拟站点里面需要增加 ProxyRequests 以及 ProxyVia 然后proxy 增加 * 使之可以传入任意的域名进行访问.
修改完成之后保存文件.
删除之前的httpd 容器
docker rm httpd -f
重新运行容器, 使用如下命令
docker run -d -p 888:80 -p 881:443 -p 9110:9100 -p 9101:9101 -v /root/conf:/usr/local/apache2/conf --name httpd httpd
正向代理验证
找一台没有外网访问权限但是可以连接 docker 容器所在服务器的机器
安装chrome 进行访问百度

增加上代理之后进行处理 效果为:

HTTPD 搭建正向代理 使无网络访问权限的服务器能够访问互联网服务的快捷办法的更多相关文章
- 关于苹果手机设置fiddler代理后无网络无法抓包的问题
1.设置代理后,需要在苹果手机的关于本机中,打开证书信任 这样就可以抓包咯
- Dynamics CRM报表无法访问提示“报表服务器无法访问或使用加密密钥。你可能需要将服务器添加到扩展组,或重新导入”
当我们部署Dynamics CRM的环境的时候如果报表配置的不规范会出现很多问题,尤其是这个问题相对来说更棘手,解决起来非常麻烦. 网上很多教程都说直接到报表配置页删除密钥就可以了,实际上删除的时候会 ...
- nginx正向代理访问百度地图API
正向代理的概念 正向代理,也就是传说中的代理,他的工作原理就像一个跳板,简单的说,我是一个用户,我访问不了某网站,但是我能访问一个代理服务器这个代理服务器呢,他能访问那个我不能访问的网站于是我先连上代 ...
- Centos8 Docker+Nginx部署Asp.Net Core Nginx正向代理与反向代理 负载均衡实现无状态更新
首先了解Nginx 相关介绍(正向代理和反向代理区别) 所谓代理就是一个代表.一个渠道: 此时就涉及到两个角色,一个是被代理角色,一个是目标角色,被代理角色通过这个代理访问目标角色完成一些任务的过程称 ...
- Nginx教程(7) 正向代理与反向代理【总结】
1.前言 最近工作中用到反向代理,发现网络代理的玩法还真不少,网络背后有很多需要去学习.而在此之前仅仅使用了过代理软件,曾经为了访问google,使用了代理软件,需要在浏览器中配置代理的地址.我只知道 ...
- Nginx正向代理、反向代理、负载均衡及性能优化
一.Nginx是什么 Nginx是一款高性能的 HTTP 和反向代理服务器,由俄罗斯人Igor Sysoev(伊戈尔·赛索耶夫)为俄罗斯网站Rambler.ru开发的,在Rambler.ru网站平稳的 ...
- Nginx教程(7) 正向代理与反向代理【总结】 (转)
1.前言 最近工作中用到反向代理,发现网络代理的玩法还真不少,网络背后有很多需要去学习.而在此之前仅仅使用了过代理软件,曾经为了访问google,使用了代理软件,需要在浏览器中配置代理的地址.我只知道 ...
- 正向代理与反向代理的区别【Nginx读书笔记】
正向代理的概念 正向代理,也就是传说中的代理,他的工作原理就像一个跳板, 简单的说, 我是一个用户,我访问不了某网站,但是我能访问一个代理服务器 这个代理服务器呢,他能访问那个我不能访问的网站 于是我 ...
- 正向代理与反向代理的区别【Nginx读书笔记】(zz)
正向代理与反向代理的区别[Nginx读书笔记] 正向代理的概念 正向代理,也就是传说中的代理,他的工作原理就像一个跳板,简单的说,我是一个用户,我访问不了某网站,但是我能访问一个代理服务器 ...
- 代理_正向代理_反向代理_nginx_转
转自:Nginx 相关介绍(Nginx是什么?能干嘛?) 蔷薇Nina 关于代理 说到代理,首先我们要明确一个概念,所谓代理就是一个代表.一个渠道: 此时就设计到两个角色,一个是被代理角色,一个是 ...
随机推荐
- PPT 模仿力,看到好的设计随意为我所用
PPT 模仿力,看到好的设计随意为我所用 网上搜索一些作品 Q1: 这一页的设计亮点在哪? Q2: 我能不能用在PPT里面? Q3: 我能不能用PPT模仿出来? 举例 思源黑体
- Intellij idea 生成带注释的get/set
自带的 Alt+ Insert 中的 Getter and Setter 生成的属性,不能将 private 字段中的注释带过去,比较尴尬.可以通过两种试. 1. 修改模板:这种方法不能得到 pri ...
- 聊聊损失函数1. 噪声鲁棒损失函数简析 & 代码实现
今天来聊聊非常规的损失函数.在常用的分类交叉熵,以及回归均方误差之外,针对训练样本可能存在的数据长尾,标签噪声,数据不均衡等问题,我们来聊聊适用不同场景有针对性的损失函数.第一章我们介绍,当标注标签存 ...
- Spring注解@Resource和@Autowired区别对比 (附 Maven 引入方法)
@Resource 导入方法: <dependency> <groupId>javax.annotation</groupId> <artifactId> ...
- 路径规划之 A* 算法
算法介绍 A*(念做:A Star)算法是一种很常用的路径查找和图形遍历算法.它有较好的性能和准确度.本文在讲解算法的同时也会提供Python语言的代码实现,并会借助matplotlib库动态的展示算 ...
- AtCoder Educational DP Contest 刷题记录
写在前面 深感自己 DP 很弱的 村人B 刷了点 DP 题,题集地址戳这里. 后记:刷完后感觉自己又行了 A - Frog 1 题意 给定 \(n\) 个石头,第 i 个石头的高度为 \(h_i\). ...
- 深入学习和理解 Redux
本文首发于 vivo互联网技术 微信公众号 链接: https://mp.weixin.qq.com/s/jhgQXKp4srsl9_VYMTZXjQ作者:曾超 Redux官网上是这样描述Redux, ...
- 分布式搜索引擎 Elasticsearch 的架构分析
一.写在前面 ES(Elasticsearch下文统一称为ES)越来越多的企业在业务场景是使用ES存储自己的非结构化数据,例如电商业务实现商品站内搜索,数据指标分析,日志分析等,ES作为传统关系型数据 ...
- vue axiox网络请求
一.首先安装axios ,vue-axios 前提:搭建一个vue3的项目 项目搭建参考:https://www.cnblogs.com/yclh/p/15356171.html 使用npm安装axi ...
- 我发现明显产品bug啦
1. 百度云在下载时,如果选中的文件过多,在点击下载后,不能即时取消所有的下载项! 如下图,点击""全部取消" 出现在列表中项全部消失,但后续新的项继续出现,仍在下载, ...